system/Makefile

62 lines
942 B
Makefile

NIX_RUN := sudo nix run .\#
NIX_LOCK := nix flake lock
DEPS_MY := \
myneovim \
mytools \
vnetod \
wd2
DEPS_NIXOS := \
nixpkgs \
hardware \
home-manager \
agenix
DEPS_MISC := \
wired \
nil \
mailserver
MACHINES := \
home \
asus-gl553vd
VPS := \
magenta \
canigou
.PHONY: help
help:
cat Makefile
define machine_rule
.PHONY: $(1)
$(1): ;
systemctl --user reset-failed
$$(NIX_RUN)switch/$(1)
.PHONY: $(1)-test
$(1)-test: ; $$(NIX_RUN)test/$(1)
endef
define vps_rule
.PHONY: $(1)
$(1): ; $$(NIX_RUN)deploy/$(1)
endef
$(foreach machine,$(MACHINES),$(eval $(call machine_rule,$(machine))))
$(foreach vps,$(VPS),$(eval $(call vps_rule,$(vps))))
.PHONY: deps-my
deps-my:
$(NIX_LOCK) $(foreach dep,$(DEPS_MY),--update-input $(dep))
.PHONY: deps-nixos
deps-nixos:
$(NIX_LOCK) $(foreach dep,$(DEPS_NIXOS),--update-input $(dep))
.PHONY: deps-misc
deps-misc:
$(NIX_LOCK) $(foreach dep,$(DEPS_MISC),--update-input $(dep))