unpacking 'github:lnl7/nix-darwin/353846417f985e74fdc060555f17939e4472ea2c' into the Git cache... unpacking 'github:NixOS/nixpkgs/0ff09db9d034a04acd4e8908820ba0b410d7a33a' into the Git cache... unpacking 'github:NixOS/nixpkgs/134c9771a626f6540a46c8f208420e445c6904b1' into the Git cache... unpacking 'github:NixOS/nixpkgs/1128e89fd5e11bb25aedbfc287733c6502202ea9' into the Git cache... unpacking 'github:nix-community/nixvim/9f0cb35c26a7dbc0acce0658f73b08b2198487c6' into the Git cache... unpacking 'github:danth/stylix/dfa4128b453d424c9fe3ef919776e722c0b766cb' into the Git cache... • Updated input 'darwin': 'github:lnl7/nix-darwin/f81c16138a6d047dcd257952688114898f5f7878?narHash=sha256-C2vkThXQfsV7Ub0NP%2Brmm0iLLNjN9MvDjrbeZw2ZxCQ%3D' (2025-02-11) → 'github:lnl7/nix-darwin/353846417f985e74fdc060555f17939e4472ea2c?narHash=sha256-L4ou3xfOr17EAe836djRoQ7auVkYOREMtiQa82wVGqU%3D' (2025-02-14) • Updated input 'nixpkgs-master': 'github:NixOS/nixpkgs/fc04e24292037cb62c71faed8b0eeb61ad2f536a?narHash=sha256-kRGjEkeKfMu4yiRYBak7dUxp7mwXWbhuwSXmUQNIflk%3D' (2025-02-14) → 'github:NixOS/nixpkgs/134c9771a626f6540a46c8f208420e445c6904b1?narHash=sha256-jKCNoIi5u2JNxh8dioTWOT9VuJXoByt/4hzJf7lepOs%3D' (2025-02-14)
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.