44 lines
1.7 KiB
Markdown
44 lines
1.7 KiB
Markdown
# nix-config
|
|
|
|
NixOS and home-manager configuration for a Dell XPS 15 9500.
|
|
|
|
See [MIGRATION-GUIDE.md](MIGRATION-GUIDE.md) for install, disaster
|
|
recovery, and key restore instructions.
|
|
|
|
## Day-to-day
|
|
|
|
```sh
|
|
sudo nixos-rebuild switch --flake ~/nix-config#xps15
|
|
|
|
nix flake update --flake ~/nix-config
|
|
sudo nixos-rebuild switch --flake ~/nix-config#xps15
|
|
|
|
sudo nixos-rebuild switch --flake ~/nix-config#xps15 --rollback
|
|
|
|
sudo nix-collect-garbage -d
|
|
```
|
|
|
|
## Architecture
|
|
|
|
```
|
|
flake.nix
|
|
inputs: nixpkgs, home-manager, nixos-hardware, neovim-nightly,
|
|
zen-browser, claude-code
|
|
|
|
nixosConfigurations.xps15 # sudo nixos-rebuild switch --flake .#xps15
|
|
hosts/xps15/configuration.nix # boot, hardware, networking, services, users
|
|
hosts/xps15/hardware-configuration.nix # machine-specific (not committed)
|
|
home-manager (embedded) # user env built as part of system
|
|
home/home.nix # imports all modules below
|
|
modules/bootstrap.nix # mkdir, clone repo, link wallpapers
|
|
modules/theme.nix # midnight/daylight color palettes, fonts, cursor
|
|
modules/shell.nix # zsh, tmux, lf, fzf, direnv, ripgrep, fd, eza
|
|
modules/terminal.nix # ghostty
|
|
modules/git.nix # git, gh, ssh hosts, gpg agent
|
|
modules/editor.nix # neovim (config is out-of-store symlink)
|
|
modules/ui.nix # hyprland, waybar, rofi, dunst, hyprlock
|
|
modules/packages.nix # apps (zen, signal, slack, etc.)
|
|
|
|
homeConfigurations.barrett # home-manager switch --flake .#barrett
|
|
(same home/home.nix, for non-NixOS systems)
|
|
```
|