diff --git a/justfile b/justfile index 77602eb..a73f90d 100644 --- a/justfile +++ b/justfile @@ -16,6 +16,30 @@ update: lint: nix fmt +# gather ips +[group('dev')] +gather: + ip-gather + +# gather ips +[group('dev')] +get-key machine: + ssh-keyscan -t ed25519 olympus 2>/dev/null | ssh-to-age + +# Auto SSH resolution +[group('dev')] +ssh host: + #!/usr/bin/env bash + set -euo pipefail + addr=$(jq -r --arg host "{{host}}" '.[$host] // empty' hosts.json) + if [ -n "$addr" ]; then + echo "Connecting to $addr for {{host}}" + ssh "$addr" + else + echo "Hostname '{{host}}' not found in hosts.json" + exit 1 + fi + # Check nix flake [group('dev')] check: diff --git a/modules/flake/devshell.nix b/modules/flake/devshell.nix index d4da25d..40a5085 100644 --- a/modules/flake/devshell.nix +++ b/modules/flake/devshell.nix @@ -11,6 +11,7 @@ name = "nixos-unified-template-shell"; meta.description = "Shell environment for modifying this Nix configuration"; packages = with pkgs; [ + jq self'.packages.ip-gather deploy-rs ssh-to-age