unpacking 'github:ghostty-org/ghostty/e2f9eb6a6f4dc2108f91293938374c0ed314dcb8' into the Git cache... unpacking 'github:NixOS/nixpkgs/561b254314bd4b7e18b255f50470cd8c1a901f45' into the Git cache... unpacking 'github:NixOS/nixpkgs/d6973081434f88088e5321f83ebafe9a1167c367' into the Git cache... • Updated input 'ghostty': 'github:ghostty-org/ghostty/d28024bb60ecf5a881348763d24a2a250e7e7e21?narHash=sha256-xMtTlYejUZl0tykVzmV87h%2B4Xw0IkuAXwxWFh/v6p/w%3D' (2025-01-02) → 'github:ghostty-org/ghostty/e2f9eb6a6f4dc2108f91293938374c0ed314dcb8?narHash=sha256-EI6C%2BCRmfHqkjnp0aJxYb/pTImwb5FZOu1HWHnnZsOc%3D' (2025-01-03) • Updated input 'nixpkgs-master': 'github:NixOS/nixpkgs/cd9f495ef7584a714938915d3fe9327c2735d7e4?narHash=sha256-pNb03vdsQmn0jS5dKAdx2DFZ2QH4RRvrIzZxqpfMcS8%3D' (2025-01-02) → 'github:NixOS/nixpkgs/561b254314bd4b7e18b255f50470cd8c1a901f45?narHash=sha256-bwzRjjf%2Bowmf9xTYSKFv4JXmUbWFlqWt7jeU95SmfVw%3D' (2025-01-03) • Updated input 'nixpkgs-unstable': 'github:NixOS/nixpkgs/81934660d6e9ea54d2f0cdee821e8533b10c221a?narHash=sha256-h1CpBzdJDNtSUb5QMyfFHKHocTTky%2B4McgQEBQBM%2BxA%3D' (2024-12-31) → 'github:NixOS/nixpkgs/d6973081434f88088e5321f83ebafe9a1167c367?narHash=sha256-cuNapx/uQeCgeuhUhdck3JKbgpsml259sjUQnWM7zW8%3D' (2025-01-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.