#!/usr/bin/env bash cd "$(git rev-parse --show-toplevel)" for host in $(nix eval --apply 'attrs: builtins.concatStringsSep "\n" (builtins.filter (name: (builtins.substring 0 1 name) != "_") (builtins.attrNames attrs))' --raw .#clerie.hosts); do echo "$host" ssh_key=$(ssh-keyscan -t ed25519 "${host}.net.clerie.de" 2>/dev/null | sed -E 's/(\S+) (.+)/\2/g' || true) if [[ -n "$ssh_key" ]]; then echo "$ssh_key" echo "$ssh_key" > "hosts/${host}/ssh.pub" fi done