• Updated input 'nixos-hardware': 'github:NixOS/nixos-hardware/ff1be1e3cdf884df0935ab28745ab13c3c26d828' (2024-05-16) → 'github:NixOS/nixos-hardware/b55712de78725c8fcde422ee0a0fe682046e73c3' (2024-05-18) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/9ddcaffecdf098822d944d4147dd8da30b4e6843' (2024-05-14) → 'github:NixOS/nixpkgs/bacb8503d3a51d9e9b52e52a1ba45e2c380ad07d' (2024-05-17) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/bf446f08bff6814b569265bef8374cfdd3d8f0e0' (2024-05-16) → 'github:NixOS/nixpkgs/dc1b0202a60553747917379c5f1dea111a49153c' (2024-05-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.