Version 3.2.0 / December 13, 2018
- Backs up top-level dotfiles before installing
- Works with both bash and zsh
- Platform (OS X, Linux, etc) agnostic
- Includes non-destructive userland includes to your home directory.
- Employs prezto, the fast zsh framework
- Prefer
exa
tols
- Supports standalone update of
.shell
directory for non-destructive updates
Do this part only if you're running ZSH or would like to use it as your default shell.
Install ZSH via Homebrew (OS X)
brew install zsh
Install ZSH via apt
(Debian/Ubuntu)
sudo apt-get install zsh -y
Launch ZSH and install prezto
zsh
cd
git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"
You can clone the repository wherever you want. (I like to keep it in ~/dev-local/dotfiles
. The bootstrapper script will pull in the latest version from the master branch before installing. Remember to run these commands from a bash
shell!
bash -l # make sure we're running bash
git clone https://github.com/drewlustro/dotfiles.git && cd dotfiles && ./install.sh
- Download .zip & extract or
git clone
this repository. - Open a terminal window and
cd
into thedotfiles
directory. - Run
./install.sh
to install.
~/dotfiles $ ./install.sh
./fresh-machine/brew-install-cli.sh # installs TONS of useful binaries, libs, and CLI tools via brew
./fresh-machine/brew-install-media-cli.sh # installs heavy media CLI tools (ffmpeg, sox, etc.) via brew
./fresh-machine/brew-cask-fonts.sh # installs a handful of useful public-domain typefaces, including many coding fonts
./fresh-machine/brew-cask-apps.sh # installs many useful OS X applications via brew-cask
My opinionated dotfiles are placed in the $HOME/.shell
directory, so that either shell can be updated without conflict, as that directory is ignored by oh-my-zsh's repository.
~/.shell/aliases.sh
~/.shell/exports.sh
~/.shell/extra.sh
~/.shell/functions.sh
~/.shell/init.sh
~/.shell/path.sh
~/.shell/LS_COLORS
The following files will be scaffolded if they do not exist and are available for your own customization, without fear of being overwritten by additional installations/updates from this repository.
~/.shell-custom/aliases.sh
~/.shell-custom/exports.sh
~/.shell-custom/extra.sh
~/.shell-custom/functions.sh
~/.shell-custom/path.sh
For instance, my ~/.shell-custom/extra.sh
file looks like this:
# Git credentials
# Not in the repository, to prevent people from accidentally committing under my name
export GIT_AUTHOR_NAME="John Doe"
export GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
git config --global user.name "$GIT_AUTHOR_NAME"
export GIT_AUTHOR_EMAIL="[email protected]"
export GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
git config --global user.email "$GIT_AUTHOR_EMAIL"
# Python virtualenvwraper default environment
DEFAULT_PYTHON_ENV="default";
DEFAULT_WORKON_HOME="/sites/envs";
[ -d "$DEFAULT_WORKON_HOME" ] && export WORKON_HOME="/sites/envs";
[ -x "$(which workon)" ] && [ -d "$DEFAULT_WORKON_HOME/$DEFAULT_PYTHON_ENV" ] && workon $DEFAULT_PYTHON_ENV;
Take a look at all the .sh
includes in ~/.shell/*.sh
for details.
GNU ls and dircolors, compiled from GNU coreutils-8.21, will be installed into $HOME/bin
, allowing for an elevated terminal color experience on Mac OS X 10.8.x via true LS_COLORS
support.
The $PATH
export chain checks for executables in many common local installation paths first, preferring user-installed binaries.
Executing .macos
applies tons of hacker-friendly customization to OS X. Please take a look at this file if you fear for your personal preferences, but it is great to try out on new OS ins
talls and old ;)
cd dotfiles
./.macos # Does tons of hacker-friendly customization to OS X
Suggestions & improvements welcome!
Mathias & Jason Hsieh (but not really) yep.
MIT
- Mathias Bynens
- Ben Alman and his dotfiles repository
- Chris Gerke and his tutorial on creating an OS X SOE master image + Insta repository
- Cătălin Mariș and his dotfiles repository
- Gianni Chiappetta for sharing his amazing collection of dotfiles
- Jan Moesen and his ancient
.bash_profile
+ shiny tilde repository - Lauri ‘Lri’ Ranta for sharing loads of hidden preferences
- Matijs Brinkhuis and his dotfiles repository
- Nicolas Gallagher and his dotfiles repository
- Sindre Sorhus
- Tom Ryder and his dotfiles repository
- Kevin Suttle and his dotfiles repository and OSXDefaults project, which aims to provide better documentation for
~/.macos
- Haralan Dobrev
- anyone who contributed a patch or made a helpful suggestion