Personal dotfiles managed with Nix + home-manager + Flakes.
curl -L https://nixos.org/nix/install | shgit clone git@github.com:sott0n/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
./setup.sh # Auto-detects OSOr specify target manually:
./setup.sh linux # Linux
./setup.sh darwin # macOS (Apple Silicon)
./setup.sh darwin-intel # macOS (Intel)home-manager switch --flake ./nix#kyamaguchi@linuxnix/
├── flake.nix # Entry point
├── flake.lock # Dependency lock
├── home.nix # Common settings
├── hosts/
│ ├── darwin.nix # macOS-specific
│ └── linux.nix # Linux-specific
└── modules/
├── packages.nix # CLI tools (ripgrep, fd, ghq, uv, etc.)
├── git.nix # Git + delta
├── zsh.nix # Zsh + peco integration
├── tmux.nix # Tmux (prefix: C-a)
└── neovim.nix # Neovim + vim-plug
| Key | Action |
|---|---|
Ctrl+r |
Search command history |
Ctrl+j |
Jump to ghq repo |
Ctrl+b |
Switch git branch |
Ctrl+x |
Switch kubernetes context |
| Key | Action |
|---|---|
| |
Split vertical |
- |
Split horizontal |
h/j/k/l |
Navigate panes |
r |
Reload config |
| Key | Action |
|---|---|
Ctrl+] |
LSP go to definition |
Ctrl+h/j/k/l |
Navigate splits |
Edit nix/modules/packages.nix:
home.packages = with pkgs; [
ripgrep
htop # add here
];Then apply:
home-manager switch --flake ./nix#kyamaguchi@linuxUse ~/.localrc for settings not tracked in git.