unpacking 'github:NixOS/nixos-hardware/9bdd53f5908453e4d03f395eb1615c3e9a351f70' into the Git cache... unpacking 'github:NixOS/nixpkgs/fecfeb86328381268e29e998ddd3ebc70bbd7f7c' into the Git cache... unpacking 'github:NixOS/nixpkgs/58a5a66e78b98caece79979a299654fd27abc082' into the Git cache... unpacking 'github:NixOS/nixpkgs/95ea544c84ebed84a31896b0ecea2570e5e0e236' into the Git cache... • Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/537286c3c59b40311e5418a180b38034661d2536?narHash=sha256-cgXDFrplNGs7bCVzXhRofjD8oJYqqXGcmUzXjHmip6Y%3D' (2025-02-02) → 'github:NixOS/nixos-hardware/9bdd53f5908453e4d03f395eb1615c3e9a351f70?narHash=sha256-ZYMe4c4OCtIUBn5hx15PEGr0%2BB1cNEpl2dsaLxwY2W0%3D' (2025-02-04) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/f6687779bf4c396250831aa5a32cbfeb85bb07a3?narHash=sha256-5%2BHmo4nbqw8FrW85FlNm4IIrRnZ7bn0cmXlScNsNRLo%3D' (2025-02-01) → 'github:NixOS/nixpkgs/fecfeb86328381268e29e998ddd3ebc70bbd7f7c?narHash=sha256-rvyfF49e/k6vkrRTV4ILrWd92W%2BnmBDfRYZgctOyolQ%3D' (2025-02-03) • Updated input 'nixpkgs-master': 'github:NixOS/nixpkgs/da8cfdea0df10bd69d41d50744b3aea17289038c?narHash=sha256-NpOgn5iI3SwsrdcKKx7bu3kA7LYn807RQUvMjE%2B9U0I%3D' (2025-02-03) → 'github:NixOS/nixpkgs/58a5a66e78b98caece79979a299654fd27abc082?narHash=sha256-a8IZfNZ7qIA9u8J1F4zzUNJYoafTKVJ31oqxD15yPg8%3D' (2025-02-04) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/6c4e0724e0a785a20679b1bca3a46bfce60f05b6?narHash=sha256-Qmwx3FXM0x0pdjibwTk/uRbayqDrs3EwmRJe7tQWu48%3D' (2025-02-01) → 'github:NixOS/nixpkgs/95ea544c84ebed84a31896b0ecea2570e5e0e236?narHash=sha256-DyvJjOOGmTSkkEfHq0oWkwtZOgejYIB5S865wmf/qos%3D' (2025-02-04)
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.