This is a repository to store all settings of my current development environment. Feel free to take inspiration.
This is my current toolstack with all configurations as of 08/2024:
- Alacritty as my primary terminal
- Tmux for multiplexing
- Fish as my primary shell
- Cursor as my primary editor
- Neovim as my secondary editor
- Vim for a minimal vim setup (used for Vim emulations and on VMs)
- Homebrew for macOS package management
- Karabiner for custom key-bindings
Follow these steps to install the full development environment.
Fire up the natively installed Terminal on your new machine (Terminal.app
on macOS) and write into the default shell (zsh
on newer macOS version) config file (so ~/.zshrc
) to set the alias for the bare repo:
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
Then, clone this repository in your home directory (/Users/<your-username>
) by running this command
git clone --bare https://github.com/mikasenghaas/dotfiles $HOME/.dotfiles
Checkout the contents of the bare repo by running config checkout
. This might lead to an error, if the contents of the git repo are overwriting files that already exist on your system.
Try this command to move all conflicting files into a backup folder:
mkdir -p .config-backup && \
config checkout 2>&1 | egrep "\s+\." | awk {'print $1'} | \
xargs -I{} mv {} .config-backup/{}
Rerun, config checkout
to check that all files are correctly cloned from git.
Finally, set the status.showUntrackedFiles
flag to no
by running this command to ignore untracked files from being shown in git status
git config --local status.showUntrackedFiles no
🥳 Done, all configs should be on your system in the correct location!
Detailed infos here
Download the macOS pacakage manager homebrew
using
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Then install all software with
brew bundle --file=~/.config/brew/Brewfile
Visit all the README files from the above listed applications and follow any further installation instructions (if they exist).