# # NOTE: Makefile's target name should not be the same as one of the file or directory in the current directory, # otherwise the target will not be executed! # ############################################################################ # # Nix commands related to the local machine # ############################################################################ i3: nixos-rebuild switch --flake .#ai_i3 --use-remote-sudo hypr: nixos-rebuild switch --flake .#ai_hyprland --use-remote-sudo i3-debug: nixos-rebuild switch --flake .#ai_i3 --use-remote-sudo --show-trace --verbose hypr-debug: nixos-rebuild switch --flake .#ai_hyprland --use-remote-sudo --show-trace --verbose up: nix flake update # Update specific input # usage: make upp i=wallpapers upp: nix flake lock --update-input $(i) history: nix profile history --profile /nix/var/nix/profiles/system gc: # remove all generations older than 7 days sudo nix profile wipe-history --profile /nix/var/nix/profiles/system --older-than 7d # garbage collect all unused nix store entries sudo nix store gc --debug ############################################################################ # # Darwin related commands, harmonica is my macbook pro's hostname # ############################################################################ darwin-set-proxy: sudo python3 scripts/darwin_set_proxy.py ha: darwin-set-proxy nix build .#darwinConfigurations.harmonica.system ./result/sw/bin/darwin-rebuild switch --flake . ha-debug: darwin-set-proxy nix build .#darwinConfigurations.harmonica.system --show-trace --verbose ./result/sw/bin/darwin-rebuild switch --flake .#harmonica --show-trace --verbose ############################################################################ # # Idols, Commands related to my remote distributed building cluster # ############################################################################ add-idols-ssh-key: ssh-add ~/.ssh/ai-idols aqua: add-idols-ssh-key nixos-rebuild --flake .#aquamarine --target-host aquamarine --build-host aquamarine switch --use-remote-sudo aqua-debug: add-idols-ssh-key nixos-rebuild --flake .#aquamarine --target-host aquamarine --build-host aquamarine switch --use-remote-sudo --show-trace --verbose ruby: add-idols-ssh-key nixos-rebuild --flake .#ruby --target-host ruby --build-host ruby switch --use-remote-sudo ruby-debug: add-idols-ssh-key nixos-rebuild --flake .#ruby --target-host ruby --build-host ruby switch --use-remote-sudo --show-trace --verbose kana: add-idols-ssh-key nixos-rebuild --flake .#kana --target-host kana --build-host kana switch --use-remote-sudo kana-debug: add-idols-ssh-key nixos-rebuild --flake .#kana --target-host kana --build-host kana switch --use-remote-sudo --show-trace --verbose idols: aqua ruby kana idols-debug: aqua-debug ruby-debug kana-debug # only used once to setup the virtual machines idols-image: # take image for idols, and upload the image to proxmox nodes. nom build .#aquamarine scp result root@gtr5:/var/lib/vz/dump/vzdump-qemu-aquamarine.vma.zst nom build .#ruby scp result root@s500plus:/var/lib/vz/dump/vzdump-qemu-ruby.vma.zst nom build .#kana scp result root@um560:/var/lib/vz/dump/vzdump-qemu-kana.vma.zst ############################################################################ # # Misc, other useful commands # ############################################################################ fmt: # format the nix files in this repo nix fmt .PHONY: clean clean: rm -rf result