Skip to content

waveFrontSet/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

593 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

AI-DECLARATION: pair

Personal configuration files managed with Nix, home-manager, and nix-darwin.

Supported hosts

Host OS Flake output
no-mans-work macOS (aarch64-darwin) darwinConfigurations β€” nix-darwin + home-manager
no-mans-mini macOS (aarch64-darwin) darwinConfigurations β€” nix-darwin + home-manager
no-mans-land macOS (aarch64-darwin) darwinConfigurations β€” nix-darwin + home-manager
home-laptop NixOS (x86_64-linux) nixosConfigurations

What's managed

home/ β€” Home-manager modules for packages, shell (Zsh, Starship), git, kitty, direnv, and other user-level dotfiles. Shared config lives in common.nix; OS-specific overrides in darwin.nix and nixos.nix.

modules/ β€” OS-level system configurations. darwin.nix handles nix-darwin settings (Homebrew casks, macOS defaults like Dock, Finder, trackpad, Touch ID sudo). nixos.nix handles NixOS system config.

hosts/ β€” Per-host overrides layered on top of the shared modules.

nvim/, vim/ β€” Editor configurations (Neovim based on LazyVim, Vim). Currently top-level, may move into home/ in the future.

Repository layout

.
β”œβ”€β”€ flake.nix                  # Nix flake β€” inputs and host outputs
β”œβ”€β”€ home/                      # Home-manager modules (dotfiles & programs)
β”‚   β”œβ”€β”€ common.nix             #   Shared config (packages, shell, programs)
β”‚   β”œβ”€β”€ darwin.nix             #   macOS-specific settings
β”‚   β”œβ”€β”€ nixos.nix              #   NixOS-specific settings
β”‚   β”œβ”€β”€ zsh.nix                #   Zsh configuration
β”‚   β”œβ”€β”€ git.nix                #   Git configuration
β”‚   β”œβ”€β”€ kitty.nix              #   Kitty terminal configuration
β”‚   β”œβ”€β”€ direnv.nix             #   Direnv configuration
β”‚   └── agents/                #   AI agent configurations
β”œβ”€β”€ modules/                   # OS-level system configurations
β”‚   β”œβ”€β”€ darwin.nix             #   nix-darwin (Homebrew casks, macOS defaults)
β”‚   └── nixos.nix              #   NixOS system config
β”œβ”€β”€ hosts/                     # Per-host overrides
β”œβ”€β”€ nvim/                      # Neovim config (LazyVim)
β”œβ”€β”€ vim/                       # Vim config
β”œβ”€β”€ bootstrap.sh               # One-time setup (Nix, rustup, ghcup, SSH keys)
└── justfile                   # Common tasks (just switch, just update, ...)

Installation

git clone git://github.com/waveFrontSet/dotfiles.git
cd dotfiles
./bootstrap.sh   # install Nix, rustup, ghcup, configure SSH signing
just switch       # apply the nix configuration

Day-to-day usage

just switch    # rebuild and activate the current configuration
just update    # update flake inputs and rebuild
just bootstrap  # first-time nix-darwin bootstrap