unpacking 'github:lnl7/nix-darwin/f81c16138a6d047dcd257952688114898f5f7878' into the Git cache... unpacking 'github:NixOS/nixpkgs/0ff09db9d034a04acd4e8908820ba0b410d7a33a' into the Git cache... unpacking 'github:NixOS/nixpkgs/fc04e24292037cb62c71faed8b0eeb61ad2f536a' 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/cae8d1c4a3bd37be5887203fe3b0c3a860c53a07?narHash=sha256-/hgw8fDKDpko0XqOw1e9tX8lS2Hqecg7W/JsONun6Qc%3D' (2025-01-21) → 'github:lnl7/nix-darwin/f81c16138a6d047dcd257952688114898f5f7878?narHash=sha256-C2vkThXQfsV7Ub0NP%2Brmm0iLLNjN9MvDjrbeZw2ZxCQ%3D' (2025-02-11) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/f5a32fa27df91dfc4b762671a0e0a859a8a0058f?narHash=sha256-7x%2BQ4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i%2BjBHE%3D' (2025-02-06) → 'github:NixOS/nixpkgs/0ff09db9d034a04acd4e8908820ba0b410d7a33a?narHash=sha256-9xim3nJJUFbVbJCz48UP4fGRStVW5nv4VdbimbKxJ3I%3D' (2025-02-12) • Updated input 'nixpkgs-master': 'github:NixOS/nixpkgs/ae8c100f9b537bd298bc3ca58144777d83962bf4?narHash=sha256-UZWhOgmjuRkT79HJqI0pezSDS32EFsFYbgDopWeNtZY%3D' (2025-02-07) → 'github:NixOS/nixpkgs/fc04e24292037cb62c71faed8b0eeb61ad2f536a?narHash=sha256-kRGjEkeKfMu4yiRYBak7dUxp7mwXWbhuwSXmUQNIflk%3D' (2025-02-14) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/1da52dd49a127ad74486b135898da2cef8c62665?narHash=sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R%2B7kIbGa%2B2s%3D' (2025-02-05) → 'github:NixOS/nixpkgs/1128e89fd5e11bb25aedbfc287733c6502202ea9?narHash=sha256-3ebRdThRic9bHMuNi2IAA/ek9b32bsy8F5R4SvGTIog%3D' (2025-02-13) • Updated input 'nixvim': 'github:nix-community/nixvim/82440e1d4ed9d252d09c4cd9edc8c9ef23ce1f3a?narHash=sha256-oFox7N1n%2BEE2I4WvuE0y4SI0a6h9RAoT216QQCtGcQ4%3D' (2025-02-05) → 'github:nix-community/nixvim/9f0cb35c26a7dbc0acce0658f73b08b2198487c6?narHash=sha256-/J2H70Gsi13nh8vGEV6aBr%2Be5avFaGOSr2TF4VjnVAk%3D' (2025-02-08) • Updated input 'nixvim/flake-parts': 'github:hercules-ci/flake-parts/b905f6fc23a9051a6e1b741e1438dbfc0634c6de?narHash=sha256-%2Bhu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU%3D' (2025-01-06) → 'github:hercules-ci/flake-parts/32ea77a06711b758da0ad9bd6a844c5740a87abd?narHash=sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm%2BzmZ7vxbJdo%3D' (2025-02-01) • Updated input 'nixvim/nuschtosSearch': 'github:NuschtOS/search/5efc9c966bb9bdad07a3c28667eac38b758c6f18?narHash=sha256-9RO/IlxiE7bpY7GYsdDMNB533PnDOBo9UvYyXXqlN4c%3D' (2025-01-26) → 'github:NuschtOS/search/86e2038290859006e05ca7201425ea5b5de4aecb?narHash=sha256-4DaDrQDAIxlWhTjH6h/%2BxfG05jt3qDZrZE/7zDLQaS4%3D' (2025-02-02) • Updated input 'nixvim/treefmt-nix': 'github:numtide/treefmt-nix/bebf27d00f7d10ba75332a0541ac43676985dea3?narHash=sha256-j6jC12vCFsTGDmY2u1H12lMr62fnclNjuCtAdF1a4Nk%3D' (2025-01-28) → 'github:numtide/treefmt-nix/4f09b473c936d41582dd744e19f34ec27592c5fd?narHash=sha256-yrK3Hjcr8F7qS/j2F%2Br7C7o010eVWWlm4T1PrbKBOxQ%3D' (2025-02-07) • Updated input 'stylix': 'github:danth/stylix/70505ba00ff09390b84cf50d52d48ee828727976?narHash=sha256-O0iFoytYpSxQdWeggIvrHjU5kmX/SRC9mcah9GbwlHk%3D' (2025-01-28) → 'github:danth/stylix/dfa4128b453d424c9fe3ef919776e722c0b766cb?narHash=sha256-mU%2BaYnob%2B7Ycu/tU9oFoweIJwdjLj0uxcp%2BI1czH4DM%3D' (2025-02-12)
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.