Skip to content
mkrisherPublic

About

@mkrisher's dotfiles

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

335 Commits

Folders and files

Repository files navigation

mkrisher's dot-files

My macOS setup, declared as a Nix flake: nix-darwin for the system and Homebrew, home-manager for dotfile symlinks, and devenv for per-project languages and gems.

I use Neovim (LazyVim), Zsh with Starship, tmux and Zellij.

Setup

Requires Nix (Determinate installer) and Homebrew.

git clone https://github.com/mkrisher/dotfiles.git ~/projects/dotfiles
cd ~/projects/dotfiles

# first time only
sudo nix run nix-darwin -- switch --flake .#Mike-M5

# afterwards
sudo darwin-rebuild switch --flake ~/projects/dotfiles

Layout

  • flake.nix: inputs and the Mike-M5 machine
  • nix/darwin.nix: system settings and fonts
  • nix/homebrew.nix: Homebrew taps, formulae and casks. Add packages here.
  • nix/home.nix: dotfile symlinks, home-manager packages (devenv, direnv, tmuxinator) and setup steps
  • config/: the dotfiles themselves, symlinked into place by nix/home.nix

Dotfiles are symlinked to this checkout rather than copied, so edits take effect without a rebuild.

Languages

Ruby, Node and Rust live in each project's devenv.nix. Projects opt in with a .envrc containing eval "$(devenv direnvrc)" && use devenv. Python is installed with uv.

PARA

I use the PARA method for organizing my files: Projects, Areas, Resources and Archives directories. Look up Building A Second Brain if you are not familiar.

About

@mkrisher's dotfiles

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages