MAKEFLAGS += --warn-undefined-variables SHELL := $(shell which bash) .EXPORT_ALL_VARIABLES: .ONESHELL: .SHELLFLAGS := -eu -o pipefail -c .SILENT: .PHONY: sync sync: sudo rsync -a --exclude='hardware-configuration.nix' nixos/ /etc/nixos/ sudo nixos-rebuild switch .PHONY: sync-dry-run sync-dry-run: sudo rsync -a --dry-run --verbose --exclude='hardware-configuration.nix' nixos/ /etc/nixos/ .PHONY: add-pre-commit-hook add-pre-commit-hook: printf '#!/bin/sh\nmake test\n' > .git/hooks/pre-commit chmod +x .git/hooks/pre-commit .PHONY: test test: echo "Find nix files" find nixos -name "*.nix" | while read f; do echo "Checking $$f" nix-instantiate --parse "$$f" > /dev/null done echo "All files OK" .DEFAULT_GOAL := test