• Updated input 'darwin': 'github:lnl7/nix-darwin/7c4b53a7d9f3a3df902b3fddf2ae245ef20ebcda' (2024-09-01) → 'github:lnl7/nix-darwin/76559183801030451e200c90a1627c1d82bb4910' (2024-09-06) • Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/95c3dfe6ef2e96ddc1ccdd7194e3cda02ca9a8ef' (2024-08-28) → 'github:NixOS/nixos-hardware/880be1ab837e1e9fe0449dae41ac4d034694d4ce' (2024-09-04) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/6e99f2a27d600612004fbd2c3282d614bfee6421' (2024-08-30) → 'github:NixOS/nixpkgs/6f6c45b5134a8ee2e465164811e451dcb5ad86e3' (2024-09-03) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/b833ff01a0d694b910daca6e2ff4a3f26dee478c' (2024-09-01) → 'github:NixOS/nixpkgs/9bb1e7571aadf31ddb4af77fc64b2d59580f9a39' (2024-09-05) • Updated input 'nixvim': 'github:nix-community/nixvim/0ddf66249ff563cd09134196cae53f14ce869868' (2024-09-02) → 'github:nix-community/nixvim/0f2c31e6a57a83ed4e6fa3adc76749620231055d' (2024-09-03)
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.