Skip to content

Instantly share code, notes, and snippets.

@PropterMalone
Last active May 10, 2026 16:46
Show Gist options
  • Select an option

  • Save PropterMalone/80df82a3c6bbd9a0126637deadfb2594 to your computer and use it in GitHub Desktop.

Select an option

Save PropterMalone/80df82a3c6bbd9a0126637deadfb2594 to your computer and use it in GitHub Desktop.
Bootstrap caleb-inspiron post Pop! reinstall
#!/bin/bash
# Bootstrap caleb-inspiron post-reinstall.
# Run as the install user (e.g. `karl`) on the fresh Pop!_OS.
# Usage: bash <(curl -fsSL https://gist.githubusercontent.com/PropterMalone/80df82a3c6bbd9a0126637deadfb2594/raw/caleb-bootstrap.sh)
set -euo pipefail
echo "==> Setting hostname to caleb-inspiron"
sudo hostnamectl set-hostname caleb-inspiron
echo "==> apt update + install openssh-server"
sudo apt update -qq
sudo apt install -y openssh-server curl
echo "==> Enabling SSH"
sudo systemctl enable --now ssh
echo "==> Installing Malone pubkey from PropterMalone GitHub"
mkdir -p ~/.ssh
chmod 700 ~/.ssh
curl -sSf https://github.com/PropterMalone.keys >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
echo " authorized_keys lines: $(wc -l < ~/.ssh/authorized_keys)"
echo "==> Setting NOPASSWD sudo for current user (so Claude can drive without TTY)"
echo "$USER ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/90-${USER} >/dev/null
sudo chmod 440 /etc/sudoers.d/90-${USER}
echo "==> Installing Tailscale"
curl -fsSL https://tailscale.com/install.sh | sudo sh
echo
echo "================================================================"
echo "Now bringing Tailscale up. The auth URL will print below."
echo "Open it in Firefox on this laptop, click Authorize."
echo "Once you authorize, this script finishes and Claude takes over."
echo "================================================================"
echo
sudo tailscale up --hostname=caleb-inspiron --accept-routes
echo
echo "Tailscale IP: $(tailscale ip -4 2>/dev/null || echo '(not yet)')"
echo "Bootstrap complete."
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment