Note
This configuration is specifically optimized to work with my custom keyboard / layout. If you want to use it, you'll likely want to make some changes.
To setup a new machine run the bootstrap script:
git clone git@github.com:minusfive/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
source ./scripts/bootstrap.zsh
Read the bootstrap script to understand what it does, and what's installed, as well as the Nix Flake.
Important
Wezterm
must be granted "Application Management" access so this script is allowed to update all managed applications.
System Preferences > Security & Privacy > Application Management
To update an already bootstrapped system (i.e. all installed tools/apps), run the update script:
cd ~/.dotfiles
source ./scripts/update.zsh
Note
The bootstrap script will run this script at the end of its execution, so no need to run it separately after bootstrapping.
To only link the configuration files (i.e. without installing any tools/apps), run the link script:
cd ~/.dotfiles
./scripts/link.zsh
Note
The bootstrap and update scripts will run this script, so no need to run it separately after bootstrapping or updating.
- Nix - OS Configuration, Package Manager
- Nix Darwin - macOS Nix
- Neovim - Text Editor / IDE
- LazyVim - Neovim Plugin and Configuration Manager
- See the Neovim configuration for the full list of installed plugins and settings.
- Hammerspoon - macOS Automation (app launcher, window / system manager, etc.)
- WezTerm - Terminal Emulator
- Homebrew - macOS Package Manager
- GNU Stow - Symlink Manager
- GNU Coreutils - Core Utilities
- Zsh - Shell
- Oh My Zsh - Zsh Configuration Manager
- Powerlevel10k - Zsh Theme
- Yazi - File Manager Terminal UI
- fzf - Fuzzy Finder
- lazygit - Git Terminal UI
- fd - Better
find
- ripgrep - Better
grep
- bat - Better
cat
- zoxide - Better
cd
- htop - Better
top
- eza - Better
ls
- Catppuccin - Color scheme for everything