• Updated input 'darwin': 'github:lnl7/nix-darwin/33bf7df5bbfcbbb49e6559b0c96c9e3b26d14e58' (2024-07-21) → 'github:lnl7/nix-darwin/884f3fe6d9bf056ba0017c132c39c1f0d07d4fec' (2024-07-23) • Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/ab165a8a6cd12781d76fe9cbccb9e975d0fb634f' (2024-07-19) → 'github:NixOS/nixos-hardware/405b654893aba16c8014de6a17e84439d3fb8e46' (2024-07-23) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/0c53b6b8c2a3e46c68e04417e247bba660689c9d' (2024-07-19) → 'github:NixOS/nixpkgs/63d37ccd2d178d54e7fb691d7ec76000740ea24a' (2024-07-21) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/d43f0636fc9492e83be8bbb41f9595d7a87106b8' (2024-07-20) → 'github:NixOS/nixpkgs/453402b94f39f968a7c27df28e060f69e4a50c3b' (2024-07-22)
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.