My dotfiles for macOS, managed with Home Manager (nix flakes) and GNU Stow.
.dotfiles/
├── flake.nix ← Home Manager flake
├── bootstrap.sh ← One-command setup
├── home-manager/ ← stow package
│ └── .config/home-manager/home.nix
├── nix/ ← stow package
│ └── .config/nix/nix.conf
└── nvim/ ← stow package
└── .config/nvim/init.lua
- Nix (installed by
bootstrap.shif missing)
curl -fsSL https://raw.githubusercontent.com/hdahlheim/.dotfiles/main/bootstrap.sh | bashOr manually:
# 1. Install Nix (Determinate Systems)
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
# 2. Clone
git clone git@github.com:hdahlheim/.dotfiles.git ~/.dotfiles
# 3. Stow config packages
cd ~/.dotfiles
nix run nixpkgs#stow -- -d ~/.dotfiles -t ~ home-manager nix nvim
# 4. Apply Home Manager config
nix run home-manager -- switch --flake ~/.dotfiles#hd| Alias | Command |
|---|---|
hms |
Apply Home Manager config |
hme |
Edit home.nix |
update |
Update flake inputs and apply |
upgrade |
Upgrade nix itself |