unpacking 'github:NixOS/nixpkgs/2b4230bf03deb33103947e2528cac2ed516c5c89' into the Git cache... unpacking 'github:NixOS/nixpkgs/ed6df6acb573f241782528f019e8510d6965c5ba' into the Git cache... unpacking 'github:NixOS/nixpkgs/f898cbfddfab52593da301a397a17d0af801bbc3' into the Git cache... • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/4e96537f163fad24ed9eb317798a79afc85b51b7?narHash=sha256-GFzPxJzTd1rPIVD4IW%2BGwJlyGwBDV1Tj5FLYwDQQ9sM%3D' (2025-01-26) → 'github:NixOS/nixpkgs/2b4230bf03deb33103947e2528cac2ed516c5c89?narHash=sha256-BPHmb3fUwdHkonHyHi1%2Bx89eXB3kA1jffIpwPVJIVys%3D' (2025-01-28) • Updated input 'nixpkgs-master': 'github:NixOS/nixpkgs/87b4b84885e37c46b7fea4c15fd6c8e8808b995c?narHash=sha256-2XrAPHa1UZ94whgLVpmAHdz1eECtH%2BqurLvZZCUnbm0%3D' (2025-01-28) → 'github:NixOS/nixpkgs/ed6df6acb573f241782528f019e8510d6965c5ba?narHash=sha256-W5A%2Bcg%2BxjTHXItL0TN5YJgx%2BIjq8ZYyxEFHvMJyRAzc%3D' (2025-01-29) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/88a55dffa4d44d294c74c298daf75824dc0aafb5?narHash=sha256-8Eo/jRAgT3CbAloyqOj6uPN1EqBvLI/Tv2g%2BRxHjkhU%3D' (2025-01-27) → 'github:NixOS/nixpkgs/f898cbfddfab52593da301a397a17d0af801bbc3?narHash=sha256-KxmFlQ2j9PpDhKRXWu85bv3R2wmfkUqdpJhEwz9JN/E%3D' (2025-01-27)
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.