• Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/31f40991012489e858517ec20102f033e4653afb' (2024-06-06) → 'github:NixOS/nixpkgs/cd18e2ae9ab8e2a0a8d715b60c91b54c0ac35ff9' (2024-06-08) • Updated input 'nixvim': 'github:nix-community/nixvim/5972abdc3482daa1e21ae593d479bc4c1141093a' (2024-06-07) → 'github:nix-community/nixvim/3568de82e7e755883c80ae69fef590aaa44b65b3' (2024-06-09) • Updated input 'nixvim/treefmt-nix': 'github:numtide/treefmt-nix/3eb96ca1ae9edf792a8e0963cc92fddfa5a87706' (2024-06-01) → 'github:numtide/treefmt-nix/4fc1c45a5f50169f9f29f6a98a438fb910b834ed' (2024-06-08) • Updated input 'stylix': 'github:danth/stylix/1d3826ceed91ae67562f28ee2e135813a11e47a6' (2024-06-05) → 'github:danth/stylix/ca3247ed8cfbf369f3fe1b7a421579812a95c101' (2024-06-08)
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.