# default recipe to display help information default: @just --list # update the flakes [group('nix')] update-deps: nix flake update --commit-look-file # check the flake for errors [group('nix')] check: nix flake check # format the repository [group('nix')] fmt: nix fmt # build the nix-darwin system configuration without switching to it [group('darwin')] build: @echo "building nix-darwin config..." darwin-rebuild build --flake . # switch the nix-darwin system configuration [group('darwin')] switch: @echo "switching to new config..." sudo darwin-rebuild switch --flake . [group('linux')] build-iso: @echo "building an ISO for nixos..." nix build .#nixosConfigurations.iso.config.system.build.isoImage [group('linux')] rbuild hostname: @echo "building {{hostname}} nixos config..." nixos-rebuild build --keep-going --flake ".#{{hostname}}" --target-host {{hostname}} --fast --use-remote-sudo --use-substitutes [group('linux')] rswitch hostname: @echo "switching {{hostname}} to new config..." # sync agenix key from 1password [group('secrets')] sync-agenix-key: @echo "copying agenix SSH key from 1password..." mkdir -p ~/.ssh op --account my.1password.com read "op://Private/agenix/private key?ssh-format=openssh" > ~/.ssh/agenix op --account my.1password.com read "op://Private/agenix/public key" > ~/.ssh/agenix.pub