chore: remove dependency on external script

This commit is contained in:
Andrew Baumbach 2025-08-06 12:14:15 -04:00 committed by Push From Github
parent c4bedd9d28
commit de8994f60f

View File

@ -1,11 +1,10 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: twingate-andrewb
# Author: MickLesk (CanbiZ), twingate-andrewb
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.twingate.com/docs/
# Import Functions und Setup
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
@ -14,52 +13,40 @@ setting_up_container
network_check
update_os
install -d -m 0700 /etc/twingate
while true; do
read -rp "Please enter your access token: " access_token
if [[ -z "$access_token" ]]; then
msg_error "Access token cannot be empty. Please try again."
else
break
fi
while [[ -z "$access_token" ]]; do
read -rp "${TAB3}Please enter your access token: " access_token
done
while [[ -z "$refresh_token" ]]; do
read -rp "${TAB3}Please enter your refresh token: " refresh_token
done
while [[ -z "$network" ]]; do
read -rp "${TAB3}Please enter your network name: " network
done
while true; do
read -rp "Please enter your refresh token: " refresh_token
if [[ -z "$refresh_token" ]]; then
msg_error "Refresh token cannot be empty. Please try again."
else
break
fi
done
msg_info "Setup Twingate Repository"
curl -fsSL "https://packages.twingate.com/apt/gpg.key" | gpg --dearmor -o /usr/share/keyrings/twingate-connector-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/twingate-connector-keyring.gpg] https://packages.twingate.com/apt/ /" > /etc/apt/sources.list.d/twingate.list
$STD apt-get update
msg_ok "Setup Twingate Repository"
while true; do
read -rp "Please enter your network name: " network
if [[ -z "$network" ]]; then
msg_error "Network cannot be empty. Please try again."
else
break
fi
done
msg_info "Setup Twingate Connector"
$STD apt-get install -y twingate-connector
msg_ok "Setup Twingate Connector"
msg_info "Installing Twingate Connector..."
export TWINGATE_ACCESS_TOKEN="${access_token}"
export TWINGATE_REFRESH_TOKEN="${refresh_token}"
export TWINGATE_NETWORK="${network}"
export TWINGATE_LABEL_DEPLOYED_BY="proxmox"
curl -fsSL "https://binaries.twingate.com/connector/setup.sh" | bash >> /dev/null 2>&1
if [[ $? -ne 0 ]]; then
msg_error "Failed to set up Twingate Connector. Please double check your tokens and network name."
exit 1
fi
msg_ok "Twingate Connector installed!"
msg_info "Writing config"
{
echo "TWINGATE_NETWORK=${network}"
echo "TWINGATE_ACCESS_TOKEN=${access_token}"
echo "TWINGATE_REFRESH_TOKEN=${refresh_token}"
} > /etc/twingate/connector.conf
chmod 600 /etc/twingate/connector.conf
msg_ok "Config written"
msg_info "Starting Twingate Connector..."
# give the connector time to start
sleep 5s
msg_ok "Twingate Connector started!"
echo -e "${INFO}${YW} Twingate Connector status: $(systemctl status twingate-connector) ${CL}"
msg_info "Starting Service"
systemctl enable -q --now twingate-connector
msg_ok "Service started"
motd_ssh
customize