From eff7afdc736ce28baaa418bbd48f4ae3f951cabf Mon Sep 17 00:00:00 2001 From: Julien Malka Date: Fri, 5 Apr 2024 19:19:51 +0200 Subject: [PATCH] init bootstrap script --- scripts/bootstrap-machine.sh | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100755 scripts/bootstrap-machine.sh diff --git a/scripts/bootstrap-machine.sh b/scripts/bootstrap-machine.sh new file mode 100755 index 0000000..731ee2f --- /dev/null +++ b/scripts/bootstrap-machine.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +# Create a temporary directory +temp=$(mktemp -d) +machine=$1 +ip=$2 +# Function to cleanup temporary directory on exit +cleanup() { + rm -rf "$temp" +} +trap cleanup EXIT + +# Create the directory where sshd expects to find the host keys +install -d -m755 "$temp/etc/ssh" + +# Decrypt your private key from the password store and copy it to the temporary directory +rbw get "$machine"_ssh_host_ed25519_key -f notes > "$temp/etc/ssh/ssh_host_ed25519_key" + +# Set the correct permissions so sshd will accept the key +chmod 600 "$temp/etc/ssh/ssh_host_ed25519_key" + +nixos-anywhere --extra-files "$temp" --store-paths $(nix-build -A nixosConfigurations.\"$machine\".config.system.build.toplevel) $(nix-build -A nixosConfigurations.\"$machine\".config.system.build.diskoScript) root@"$ip"