Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Opinionated configuration files for ZSH, Emacs, Vim, and Homebrew.

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 clojure
Octocat-spinner-32 completions
Octocat-spinner-32 emacs
Octocat-spinner-32 erlang
Octocat-spinner-32 git
Octocat-spinner-32 haskell
Octocat-spinner-32 hg
Octocat-spinner-32 libexec
Octocat-spinner-32 misc
Octocat-spinner-32 osx
Octocat-spinner-32 priv
Octocat-spinner-32 ruby
Octocat-spinner-32 ssh
Octocat-spinner-32 tmux
Octocat-spinner-32 vim
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.md
Octocat-spinner-32 Rakefile
Octocat-spinner-32 key.asc
README.md

Dotfiles

These dotfiles are my own, and I'm constantly making changes. As such they're unstable. They might not work on your computer, after some amount of setup. If you want to try them out please feel free, but bear in mind I won't be able to support you in getting started.

This repository will help you get setup with ZSH and decent development environment for a number of programming languages.

There's a dotfiles executable that helps you install the packages that you need to build great products, and keep your environment up-to-date.

Everything related to Z-Shell is in my fork of Prezto. All things zsh used to be vendored in this repo, but this meant a manual update process any time new features were added to Prezto.

Getting started

To get started you'll want to install Xcode (installing Command Line Tools is not enough to get MacVim installed), and Homebrew as they are required to install development dependencies .

Last time I checked installing Homebrew was as easy as running:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

To the bat shell

With Homebrew installed you need to:

  1. Install git.
  2. Clone the dotfiles repo (optionally from your own fork).
  3. Run dotfiles setup.
  4. Purge dotfiles or jcf.
# Install Homebrew
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

# Install git
/usr/local/bin/brew install git

# Clone your dotfiles file repo
/usr/local/bin/git clone git@github.com:<username>/dotfiles.git ~/.dotfiles

# Or if you're using my repo…
/usr/local/bin/git clone git@github.com:jcf/dotfiles.git ~/.dotfiles

# Activate the dotfiles executable
cd ~/.dotfiles
export PATH="./bin:$PATH"

# Run dotfiles setup
dotfiles setup

# Link the actual dotfiles in to your $HOME
dotfiles link

Things I always do

Restart Terminal

If you restart your Terminal of choice at this point you should find the following ready to go:

  • Prezto-influenced ZSH configuration.
  • Required base packages like hub, macvim and the latest greatest zsh.
  • Rbenv with some useful plugins.
  • Pyenv.

Download Vim plugins

Assuming you're going to use Vim you'll want to fire up your editor and get NeoBundle to work.

vim -c 'NeoBundleInstall'

Install all the things

dotfiles install is your friend. This will take a while depending on your machine so expect to make a cup of tea before everything is installed.

Here be dragons

Sudo make me a sandwich

Use visudo to allow all admins to use sudo without entering their password.

# Change this line:
%admin  ALL=(ALL) ALL

# To this:
%admin  ALL=(ALL) NOPASSWD: ALL

Stop path_helper from messing with our path

sudo chmod -x /usr/libexec/path_helper

Switch to using Homebrew-installed ZSH

Edit /etc/shells as root and add /usr/local/bin/zsh to the end of the file.

# WARNING! I would highly recommend editing /etc/shells by hand!
grep '/usr/local/bin/zsh' /etc/shells > /dev/null || \
  sudo echo '/usr/local/bin/zsh' >> /etc/shells

# Change shell…
chsh -s /usr/local/bin/zsh

License

Unless otherwise stated, everything is covered by the MIT license.

Screenshots

iTerm2

MacVim

Something went wrong with that request. Please try again.