Last active
May 10, 2026 16:46
-
-
Save PropterMalone/80df82a3c6bbd9a0126637deadfb2594 to your computer and use it in GitHub Desktop.
Bootstrap caleb-inspiron post Pop! reinstall
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/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