2023-02-16 01:53:45 -08:00
|
|
|
{{- if and (ne .host.distro.family "windows") (stat (joinPath .host.home ".config" "age" "chezmoi.txt")) (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "tailscale")) -}}
|
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
### Install the Tailscale system daemon
|
|
|
|
if [ -d /Applications ] && [ -d System ]; then
|
|
|
|
# macOS
|
|
|
|
if command -v tailscaled > /dev/null; then
|
|
|
|
logg info 'Ensuring `tailscaled` system daemon is installed'
|
|
|
|
sudo tailscaled install-system-daemon
|
|
|
|
logg info '`tailscaled` system daemon is now installed and will load on boot'
|
|
|
|
else
|
|
|
|
logg info '`tailscaled` does not appear to be installed'
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
### Connect to Tailscale network
|
|
|
|
TAILSCALE_AUTH_KEY="$(cat "{{ .chezmoi.sourceDir }}/.chezmoitemplates/secrets/key-netdata-token" | chezmoi decrypt)"
|
|
|
|
if command -v tailscale > /dev/null && [ "$TAILSCALE_AUTH_KEY" != "" ]; then
|
|
|
|
logg info 'Connecting to Tailscale with user-defined authentication key'
|
|
|
|
timeout 14 tailscale up --authkey="$TAILSCALE_AUTH_KEY" --accept-routes || EXIT_CODE=$?
|
|
|
|
if [ -n "$EXIT_CODE" ]; then
|
|
|
|
logg warn '`tailscale up` timed out'
|
|
|
|
else
|
|
|
|
logg success 'Connected to Tailscale network'
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2023-01-25 21:02:34 -08:00
|
|
|
{{- end -}}
|