• Updated input 'darwin': 'github:lnl7/nix-darwin/d9ea313bc4851670dc99c5cc979cb79750e7d670' (2024-03-12) → 'github:lnl7/nix-darwin/bcc8afd06e237df060c85bad6af7128e05fd61a3' (2024-03-17) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/8ac30a39abc5ea67037dfbf090d6e89f187c6e50' (2024-03-16) → 'github:NixOS/nixpkgs/614b4613980a522ba49f0d194531beddbb7220d3' (2024-03-17) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/d211b80d2944a41899a6ab24009d9729cca05e49' (2024-03-16) → 'github:NixOS/nixpkgs/79bb4155141a5e68f2bdee2bf6af35b1d27d3a1d' (2024-03-18)
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.