• Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/f3b959627bca46a9f7052b8fbc464b8323e68c2c' (2024-04-05) → 'github:NixOS/nixos-hardware/f58b25254be441cd2a9b4b444ed83f1e51244f1f' (2024-04-12) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06) → 'github:NixOS/nixpkgs/b2cf36f43f9ef2ded5711b30b1f393ac423d8f72' (2024-04-10) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/efe8ce06ca261f370d672def5b1e0be300c726e1' (2024-04-07) → 'github:NixOS/nixpkgs/f173d0881eff3b21ebb29a2ef8bedbc106c86ea5' (2024-04-11)
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.