change App location

This commit is contained in:
KernelSailor 2025-12-29 11:45:58 +01:00
parent 85652adee9
commit 654047e08a
2 changed files with 28 additions and 29 deletions

View File

@ -15,6 +15,8 @@ var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_nesting="${var_nesting:-0}"
SNOWFLAKEUSER="snowflake"
header_info "$APP"
variables
color
@ -31,24 +33,21 @@ function update_script() {
msg_ok "Updated Container OS"
RELEASE=$(curl -fsSL https://gitlab.torproject.org/api/v4/projects/tpo%2Fanti-censorship%2Fpluggable-transports%2Fsnowflake/releases | jq -r '.[0].tag_name' | sed 's/^v//')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping Service"
VERSION_FILE="/home/${SNOWFLAKEUSER}/.${APP}_version"
if [[ ! -f "${VERSION_FILE}" ]] || [[ "${RELEASE}" != "$(cat "${VERSION_FILE}")" ]]; then
systemctl stop snowflake-proxy
msg_ok "Stopped Service"
setup_go
msg_info "Updating ${APP} to v${RELEASE}"
cd /opt
$STD curl -fsSL "https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/archive/v${RELEASE}/snowflake-v${RELEASE}.tar.gz" -o snowflake.tar.gz
$STD tar -xzf snowflake.tar.gz
rm -rf snowflake
mv "snowflake-v${RELEASE}" snowflake
rm snowflake.tar.gz
chown -R snowflake:snowflake /opt/snowflake
cd /opt/snowflake/proxy
$STD sudo -u snowflake go build -o snowflake-proxy .
echo "${RELEASE}" >/opt/${APP}_version.txt
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && curl -fsSL 'https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/archive/v${RELEASE}/snowflake-v${RELEASE}.tar.gz' -o snowflake.tar.gz"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && tar -xzf snowflake.tar.gz"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && rm snowflake.tar.gz"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && rm -rf .${APP}"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && mv snowflake-v${RELEASE} .${APP}"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~/.${APP}/proxy && go build -o snowflake-proxy ."
echo "${RELEASE}" | sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && tee .${APP}_version >/dev/null"
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Starting Service"

View File

@ -13,23 +13,23 @@ setting_up_container
network_check
update_os
APP="tor-snowflake"
SNOWFLAKEUSER="snowflake"
setup_go
msg_info "Creating snowflake user"
useradd -r -s /bin/false -d /opt/snowflake snowflake
msg_ok "Created snowflake user"
msg_info "Creating ${SNOWFLAKEUSER} user"
useradd -m -r -s /usr/sbin/nologin -d /home/${SNOWFLAKEUSER} ${SNOWFLAKEUSER}
msg_ok "Created ${SNOWFLAKEUSER} user"
msg_info "Building Snowflake Proxy from Source"
msg_info "Building Snowflake"
RELEASE=$(curl -fsSL https://gitlab.torproject.org/api/v4/projects/tpo%2Fanti-censorship%2Fpluggable-transports%2Fsnowflake/releases | jq -r '.[0].tag_name' | sed 's/^v//')
cd /opt
$STD curl -fsSL "https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/archive/v${RELEASE}/snowflake-v${RELEASE}.tar.gz" -o snowflake.tar.gz
$STD tar -xzf snowflake.tar.gz
mv "snowflake-v${RELEASE}" snowflake
rm snowflake.tar.gz
chown -R snowflake:snowflake /opt/snowflake
cd /opt/snowflake/proxy
$STD sudo -u snowflake go build -o snowflake-proxy .
echo "${RELEASE}" >/opt/tor-snowflake_version.txt
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && curl -fsSL 'https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/archive/v${RELEASE}/snowflake-v${RELEASE}.tar.gz' -o snowflake.tar.gz"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && tar -xzf snowflake.tar.gz"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && rm snowflake.tar.gz"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && mv snowflake-v${RELEASE} .${APP}"
$STD sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~/.${APP}/proxy && go build -o snowflake-proxy ."
echo "${RELEASE}" | sudo -H -u ${SNOWFLAKEUSER} bash -c "cd ~ && tee .${APP}_version >/dev/null"
msg_ok "Built Snowflake Proxy v${RELEASE}"
msg_info "Creating Service"
@ -42,10 +42,10 @@ Wants=network-online.target
[Service]
Type=simple
User=snowflake
Group=snowflake
WorkingDirectory=/opt/snowflake
ExecStart=/opt/snowflake/proxy/snowflake-proxy -verbose -unsafe-logging
User=${SNOWFLAKEUSER}
Group=${SNOWFLAKEUSER}
WorkingDirectory=/home/${SNOWFLAKEUSER}/.${APP}
ExecStart=/home/${SNOWFLAKEUSER}/.${APP}/proxy/snowflake-proxy -verbose -unsafe-logging
Restart=always
RestartSec=10