Flake Experiment

This commit is contained in:
2026-02-04 14:58:17 -07:00
parent ffc042d536
commit d80a9be891
4 changed files with 62 additions and 11 deletions

View File

@@ -3,6 +3,7 @@
NIXOS_DIR := /etc/nixos
REPO_DIR := $(shell pwd)
SETTINGS := settings.nix
HOSTNAME := $(shell grep 'hostname =' $(SETTINGS) | cut -d '"' -f 2)
# Colors for output
GREEN := \033[0;32m
@@ -11,12 +12,12 @@ RED := \033[0;31m
NC := \033[0m # No Color
help:
@echo "NixOS Config"
@echo "NixOS Config (Flake)"
@echo ""
@echo " make init - first time setup"
@echo " make hw - generate hardware-configuration.nix"
@echo " make rebuild - rebuild nixos"
@echo " make update - upgrade + rebuild"
@echo " make rebuild - rebuild nixos configuration"
@echo " make update - update flake inputs and rebuild"
@echo " make purge - garbage collect"
@echo " make link - symlink to /etc/nixos"
@echo " make unlink - remove symlink"
@@ -48,17 +49,24 @@ unlink:
fi
rebuild:
sudo nixos-rebuild switch
@# Ensure hardware-configuration.nix is tracked by git (flake requirement), even if ignored
@if [ -f hardware-configuration.nix ]; then \
git add -f -N hardware-configuration.nix; \
fi
@echo "Rebuilding system for $(HOSTNAME)..."
sudo nixos-rebuild switch --flake .#$(HOSTNAME)
update:
sudo nixos-rebuild switch --upgrade
@echo "Updating flake inputs..."
nix flake update
@$(MAKE) --no-print-directory rebuild
purge:
sudo nix-collect-garbage -d
sudo /run/current-system/bin/switch-to-configuration boot
check:
nix-instantiate '<nixpkgs/nixos>' -A system --dry-run
nix flake check
hw:
sudo nixos-generate-config --show-hardware-config > hardware-configuration.nix