• Updated input 'nixpkgs': 'github:NixOS/nixpkgs/05405724efa137a0b899cce5ab4dde463b4fd30b' (2024-08-01) → 'github:NixOS/nixpkgs/a633d89c6dc9a2a8aae11813a62d7c58b2c0cc51' (2024-08-03) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/c3392ad349a5227f4a3464dce87bcc5046692fce' (2024-07-31) → 'github:NixOS/nixpkgs/81610abc161d4021b29199aa464d6a1a521e0cc9' (2024-08-02) • Updated input 'nixvim': 'github:nix-community/nixvim/76f309d00fb5a6eeb59c13e9b36b4cf86a209d7f' (2024-08-01) → 'github:nix-community/nixvim/4e6974c619bd280789ef3697a73fcf7c20f70819' (2024-08-03) • Updated input 'nixvim/flake-parts': 'github:hercules-ci/flake-parts/9227223f6d922fee3c7b190b2cc238a99527bbb7' (2024-07-03) → 'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01) • Updated input 'nixvim/nix-darwin': 'github:lnl7/nix-darwin/b47af8628624856ad6853168298f1f96364d92d6' (2024-08-01) → 'github:lnl7/nix-darwin/f7142b8024d6b70c66fd646e1d099d3aa5bfec49' (2024-08-02)
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.