unpacking 'github:nix-community/home-manager/e38d3dd1d355a003cc63e8fe6ff66ef2257509ed' into the Git cache... unpacking 'github:NixOS/nixos-hardware/e563803af3526852b6b1d77107a81908c66a9fcf' into the Git cache... unpacking 'github:NixOS/nixpkgs/097248f4e03687c5d908a82a2279560ad6c34ffb' into the Git cache... • Updated input 'darwin': 'github:lnl7/nix-darwin/c6b65d946097baf3915dd51373251de98199280d?narHash=sha256-Qs3YmoLYUJ8g4RkFj2rMrzrP91e4ShAioC9s%2BvG6ENM%3D' (2024-12-02) → 'github:lnl7/nix-darwin/55d07816a0944f06a9df5ef174999a72fa4060c7?narHash=sha256-MTMsAhXxMMVHVN99jT8E0afOAOtt3JQWjYpTja94PAU%3D' (2024-12-04) • Updated input 'home-manager': 'github:nix-community/home-manager/62d536255879be574ebfe9b87c4ac194febf47c5?narHash=sha256-lYnT%2BEYE47f5yY3KS/Kd4pJ6CO9fhCqumkYYkQ3TK20%3D' (2024-12-01) → 'github:nix-community/home-manager/e38d3dd1d355a003cc63e8fe6ff66ef2257509ed?narHash=sha256-ZD%2Bh1fwvZs%2BXvg46lzTWveAqyDe18h9m7wZnTIJfFZ4%3D' (2024-12-06) • Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/c6c90887f84c02ce9ebf33b95ca79ef45007bf88?narHash=sha256-PVQW9ovo0CJbhuhCsrhFJGGdD1euwUornspKpBIgdok%3D' (2024-12-02) → 'github:NixOS/nixos-hardware/e563803af3526852b6b1d77107a81908c66a9fcf?narHash=sha256-IS3bxa4N1VMSh3/P6vhEAHQZecQ3oAlKCDvzCQSO5Is%3D' (2024-12-06) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/62c435d93bf046a5396f3016472e8f7c8e2aed65?narHash=sha256-F7thesZPvAMSwjRu0K8uFshTk3ZZSNAsXTIFvXBT%2B34%3D' (2024-11-30) → 'github:NixOS/nixpkgs/b681065d0919f7eb5309a93cea2cfa84dec9aa88?narHash=sha256-eq51hyiaIwtWo19fPEeE0Zr2s83DYMKJoukNLgGGpek%3D' (2024-12-03) • Updated input 'nixpkgs-master': 'github:NixOS/nixpkgs/2e00fd6d072fa785e6976a4d19b23294d3e7aad5?narHash=sha256-WV7UL5mrz7nbEWvDNFziav5OfhYzHcVpMkXVV33VZKo%3D' (2024-12-02) → 'github:NixOS/nixpkgs/097248f4e03687c5d908a82a2279560ad6c34ffb?narHash=sha256-2CudyZ0us%2B51RQYpvnMX9FqXsZYgeqDBl/uaG1d778E%3D' (2024-12-06) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/31d66ae40417bb13765b0ad75dd200400e98de84?narHash=sha256-7NbtSLfZO0q7MXPl5hzA0sbVJt6pWxxtGWbaVUDDmjs%3D' (2024-12-01) → 'github:NixOS/nixpkgs/566e53c2ad750c84f6d31f9ccb9d00f823165550?narHash=sha256-FLYY5M0rpa5C2QAE3CKLYAM6TwbKicdRK6qNrSHlNrE%3D' (2024-12-03) • Updated input 'nixvim': 'github:nix-community/nixvim/e680b367c726e2ae37d541328fe81f8daaf49a6c?narHash=sha256-fYEf0IgsNJp/hcb%2BC3FKtJvVabPDQs64hdL0izNBwXc%3D' (2024-12-02) → 'github:nix-community/nixvim/6348336db0e0b17ab6d9c73bc8206db84ebf00d1?narHash=sha256-Tbdi0SEOuxABTDp0sCI7wdTnmpcnQOPzPo4jSWP0u%2B8%3D' (2024-12-05) • Updated input 'nixvim/home-manager': 'github:nix-community/home-manager/c1fee8d4a60b89cae12b288ba9dbc608ff298163?narHash=sha256-dVmNuUajnU18oHzBQWZm1BQtANCHaqNuxTHZQ%2BGN0r8%3D' (2024-12-01) → 'github:nix-community/home-manager/bf23fe41082aa0289c209169302afd3397092f22?narHash=sha256-zFOtOaqjzZfPMsm1mwu98syv3y%2BjziAq5DfWygaMtLg%3D' (2024-12-02) • Updated input 'stylix': 'github:danth/stylix/d13ffb381c83b6139b9d67feff7addf18f8408fe?narHash=sha256-t1J6wgzGjvvGNfdd0ei8HnZf9sTw%2BSpvCNAX0i6Qgwc%3D' (2024-11-30) → 'github:danth/stylix/eb918dbffa24c4dae497f3ce3173660f948d5237?narHash=sha256-E854RAbAX%2BDZHDo4HIk2nkqpIvvoAm%2BP7oDx7TmhWk8%3D' (2024-12-05) • Updated input 'stylix/gnome-shell': 'github:GNOME/gnome-shell/0d0aadf013f78a7f7f1dc984d0d812971864b934?narHash=sha256-zYP1ehjtcV8fo%2Bc%2BJFfkAqktZ384Y%2By779fzmR9lQAU%3D' (2024-04-21) → 'github:GNOME/gnome-shell/dadd58f630eeea41d645ee225a63f719390829dc?narHash=sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg%3D' (2024-11-23) • Updated input 'stylix/home-manager': 'github:nix-community/home-manager/a9953635d7f34e7358d5189751110f87e3ac17da?narHash=sha256-GUffLwzawz5WRVfWaWCg78n/HrBJrOG7QadFY6rtV8A%3D' (2024-11-24) → 'github:nix-community/home-manager/c1fee8d4a60b89cae12b288ba9dbc608ff298163?narHash=sha256-dVmNuUajnU18oHzBQWZm1BQtANCHaqNuxTHZQ%2BGN0r8%3D' (2024-12-01)
nix-config
This repo stores nix to manage my machines running NixOS and macOS.
The configuration is very specific to my own machines and setup, but it may be a useful reference for anyone else learning or experimenting with nix, whether it be on a personal workstation or a server environment.
Setup
on macOS: install the latest unstable nix from https://github.com/numtide/nix-unstable-installer (for nix flakes), and nix-darwin: https://github.com/LnL7/nix-darwin
Recipes are stored in a justfile. just is required.
To run a rebuild:
just rebuild
Update
To update nixpkgs defined in flake.nix, run:
just update
If there are updates, they should be reflected in flake.lock.
Rollback
To rollback to the previous generation:
just rollback
Garbage collection
To cleanup previous files, run nix garbage collection:
just clean
Pre-commit hooks
Pre-commit hooks are automatically activated when direnv is installed.