#!/bin/bash
set -e
echo "[INFO] Updating system..."
apt update && apt full-upgrade -y
echo "[INFO] Installing cloud-init and qemu-guest-agent..."
apt install -y cloud-init qemu-guest-agent netplan.io sudo
echo "[INFO] Enabling qemu-guest-agent..."
systemctl start qemu-guest-agent
systemctl enable qemu-guest-agent
echo "[INFO] Cleaning machine-id and SSH host keys..."
truncate -s 0 /etc/machine-id
rm -f /var/lib/dbus/machine-id
rm -f /etc/ssh/ssh_host_*
echo "[INFO] Configuring cloud-init to regenerate SSH host keys..."
# Enable regeneration of SSH host keys
mkdir -p /etc/cloud/cloud.cfg.d/
cat <<EOF > /etc/cloud/cloud.cfg.d/99_reenable_ssh.cfg
ssh_deletekeys: true
ssh_genkeytypes: ['rsa', 'ecdsa', 'ed25519']
EOF
echo "[INFO] Resetting cloud-init state..."
cloud-init clean --logs
echo "[INFO] Zeroing out disk (optional, speeds up compression)..."
dd if=/dev/zero of=/EMPTY bs=1M || true
rm -f /EMPTY
echo "[INFO] Template preparation complete. Powering off..."
poweroff