Skip to content


Subversion checkout URL

You can clone with
Download ZIP
.files, including ~/.osx — sensible hacker defaults for OS X
VimL Shell JavaScript
branch: master Add `dark-mode`

For toggling Dark Mode from the command-line.

Closes #545.
latest commit 3a47ebe1fa
@sindresorhus sindresorhus authored committed
Failed to load latest commit information.
.vim Enable Solarized Dark theme in Vim
bin bin: Update and improve `httpcompression`
init init: Use the Solarized Dark theme in Sublime Text
.aliases Add `--all` to `brew upgrade`
.bash_profile Use bash-completion2 for improved Bash 4 completion
.bash_prompt .bash_prompt: Interpret escape sequences correctly in all cases
.bashrc Remove some things that I don’t use
.curlrc .curlrc: Add back `connect-timeout`
.editorconfig Add `.editorconfig`
.exports .exports: Enable persistent REPL history for `node`
.functions .functions: Make `mkd` `cd` into the last directory in the list
.gdbinit Add .gdbinit
.gitattributes .gitattributes: Disable normalizing line endings globally
.gitconfig .gitconfig: Add `push.followTags`
.gitignore Use newlines at EOF consistently
.gvimrc .gvimrc: Don’t blink cursor in normal mode
.hgignore Use newlines at EOF consistently
.hushlogin Use newlines at EOF consistently
.inputrc Use newlines at EOF consistently
.osx .osx: Fix `/private` path
.screenrc .screenrc: Add some more settings
.vimrc .vimrc: Enable `g:solarized_termtrans`
.wgetrc Use newlines at EOF consistently
LICENSE-MIT.txt Update URLs README: Fix @alrra’s name Remove some things that I don’t use Add `dark-mode`

Mathias’s dotfiles

Screenshot of my shell prompt


Using Git and the bootstrap script

You can clone the repository wherever you want. (I like to keep it in ~/Projects/dotfiles, with ~/dotfiles as a symlink.) The bootstrapper script will pull in the latest version and copy the files to your home folder.

git clone && cd dotfiles && source

To update, cd into your local dotfiles repository and then:


Alternatively, to update while avoiding the confirmation prompt:

set -- -f; source

Git-free install

To install these dotfiles without Git:

cd; curl -#L | tar -xzv --strip-components 1 --exclude={,,LICENSE-MIT.txt}

To update later on, just run that command again.

Specify the $PATH

If ~/.path exists, it will be sourced along with the other files, before any feature testing (such as detecting which version of ls is being used) takes place.

Here’s an example ~/.path file that adds /usr/local/bin to the $PATH:

export PATH="/usr/local/bin:$PATH"

Add custom commands without creating a new fork

If ~/.extra exists, it will be sourced along with the other files. You can use this to add a few custom commands without the need to fork this entire repository, or to add commands you don’t want to commit to a public repository.

My ~/.extra looks something like this:

# Git credentials
# Not in the repository, to prevent people from accidentally committing under my name
GIT_AUTHOR_NAME="Mathias Bynens"
git config --global "$GIT_AUTHOR_NAME"
git config --global "$GIT_AUTHOR_EMAIL"

You could also use ~/.extra to override settings, functions and aliases from my dotfiles repository. It’s probably better to fork this repository instead, though.

Sensible OS X defaults

When setting up a new Mac, you may want to set some sensible OS X defaults:


Install Homebrew formulae

When setting up a new Mac, you may want to install some common Homebrew formulae (after installing Homebrew, of course):



Suggestions/improvements welcome!


Mathias Bynens

Thanks to…

Something went wrong with that request. Please try again.