Proper dotfiles are the very heart of an efficient working environment.
This repository ships a set of configuration files for modern command line tools, such as tmux, vim, and zsh. Additionally, it provides a portable script for managing dotfiles and quickly getting up and runninng on a new machine.
These are the quick start instructions to get up and running:
git clone [email protected]:mavam/dotfiles.git ~/.dotfiles
cd .dotfiles
./bootstrap dotfiles
Make zsh your login shell, install Vim plugins and vim-anywhere, and setup tmux plugins:
./bootstrap zsh vim tmux
On a Mac, you may also consider improving the system experience and installing Homebrew:
./bootstrap system homebrew
I use iTerm2 as terminal emulator. Add the light and dark gruvbox by loading my settings via Settings -> General -> Browse. This requires the Meslo from Nerd Fonts to be installed, which is readily available via Homebrew.
Begin with cloning this repository somewhere:
git clone [email protected]:mavam/dotfiles.git ~/.dotfiles
cd .dotfiles
The POSIX shell script dots installs (= symlinks) and removes subsets of dotfiles according to your needs. For example, install all dotfiles as follows:
./dots install -a
Alternatively, install only dotfiles for vim and zsh:
./dots install vim zsh
Similarly, remove all installed dotfiles:
./dots uninstall -a
The installer script does not override existing dotfiles unless the command
line includes the -f
switch. When in doubt what the installation of a subset
of the dotfiles would look like, it is possible to look at the diff first:
./dots diff -a
In addition to managing dotfiles, the script bootstrap facilitates
getting up and running on a new machine. Passing -h
shows the available
aspects available for configuration:
system
: adjust system defaults for productivityhomebrew
:setup Homebrew and install bundled packagesdotfiles
: setup dotfiles via./dots install -a
postfix
: setup postfix as GMail relaytmux
: install tmux pluginsvim
: install vim pluginszsh
: setup zsh as login shell
Invoking
./bootstrap
without any arguments sets up all aspects in the above order. On macOS, (1) includes:
- Adjust various default settings, e.g.:
- Improve security and privacy settings
- Disable boot sound
- Reduce UI effects for improved speed
- Make the keyboard faster
- Perform a software update
- Install XCode
My browser is Safari, which I beef up with the following enhancements:
Browse through this curated list of extensions for further inspiration.