• Updated input 'darwin': 'github:lnl7/nix-darwin/ffc01182f90118119930bdfc528c1ee9a39ecef8' (2024-05-16) → 'github:lnl7/nix-darwin/eac4f25028c1975a939c8f8fba95c12f8a25e01c' (2024-05-21) • Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/b55712de78725c8fcde422ee0a0fe682046e73c3' (2024-05-18) → 'github:NixOS/nixos-hardware/d9e0b26202fd500cf3e79f73653cce7f7d541191' (2024-05-20) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/e7cc61784ddf51c81487637b3031a6dd2d6673a2' (2024-05-18) → 'github:NixOS/nixpkgs/46397778ef1f73414b03ed553a3368f0e7e33c2f' (2024-05-22) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/8535fb92661f37ff9f0da3007fbc942f7d134b41' (2024-05-19) → 'github:NixOS/nixpkgs/3f316d2a50699a78afe5e77ca486ad553169061e' (2024-05-22) • Updated input 'stylix': 'github:danth/stylix/f1c49b9b4d371e03273465a54dd434ac8611ee90' (2024-05-12) → 'github:danth/stylix/3c8f033fd585835387a754160f47dab0c37ad5ae' (2024-05-21) • Updated input 'stylix/base16': 'github:SenchoPens/base16.nix/665b3c6748534eb766c777298721cece9453fdae' (2024-02-25) → 'github:SenchoPens/base16.nix/dddf2e1c04845d43c89a8e9e37d574519649a404' (2023-07-17) • Updated input 'stylix/home-manager': 'github:nix-community/home-manager/6ebe7be2e67be7b9b54d61ce5704f6fb466c536f' (2024-05-06) → 'github:nix-community/home-manager/8cedd63eede4c22deb192f1721dd67e7460e1ebe' (2023-11-24) • Updated input 'stylix/nixpkgs': 'github:NixOS/nixpkgs/ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d' (2024-05-05) → 'github:NixOS/nixpkgs/0bd59c54ef06bc34eca01e37d689f5e46b3fe2f1' (2023-11-24)
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.