• Updated input 'darwin': 'github:lnl7/nix-darwin/de8b0d60d6fd34f35abffc46adc94ebaa6996ce2' (2024-05-14) → 'github:lnl7/nix-darwin/ffc01182f90118119930bdfc528c1ee9a39ecef8' (2024-05-16) • Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/a4e2b7909fc1bdf30c30ef21d388fde0b5cdde4a' (2024-05-08) → 'github:NixOS/nixos-hardware/ff1be1e3cdf884df0935ab28745ab13c3c26d828' (2024-05-16) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/abd6d48f8c77bea7dc51beb2adfa6ed3950d2585' (2024-05-14) → 'github:NixOS/nixpkgs/b3fcfcfabd01b947a1e4f36622bbffa3985bdac6' (2024-05-15)
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.