@_default: #just --choose # TODO: achieve something better with `gum` #just --list --list-prefix ' just ' just "$(gum choose $(just --summary --unsorted))" @set-remote: tomlq <.remote.toml '.hosts | to_entries[] | "remote-set \(.key+1) # -> \(.value.host)" | @sh "\(.)"' -r | xargs gum choose | sh eval hostname=`just _a-host`: nix eval .#nixosConfigurations.{{hostname}}.config.system.build.toplevel.outPath report hostname=`just _a-host`: nix eval .#nixosReports.{{hostname}} --json | yq . --yaml-output | bat --language yaml --style plain --paging never reports: nix eval .#nixosReports --json | yq . --yaml-output | bat --language yaml --style plain --paging never update: git reset flake.lock git restore flake.lock git pull --rebase --autostash nix flake update --commit-lock-file @mkdir -p .direnv/ @echo "$(date +%Y-%m-%d)" > .direnv/pull-date build: nixos-rebuild build --flake . test: sudo nixos-rebuild test --flake . switch: sudo nixos-rebuild switch --flake . boot: sudo nixos-rebuild boot --flake . @list-remotes: echo Current remote: $(remote-host) tomlq <.remote.toml '.hosts | to_entries[] | "remote-set \(.key+1) # -> \(.value.host)"' -r @_a-host: nix eval .#nixosHostnames --json 2>/dev/null | jq '.[]' -r | gum filter --height 10 --placeholder "Pick a host..."