mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-03-17 15:33:00 +01:00
Compare commits
3 Commits
github-act
...
termix_add
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
88310a8a1b | ||
|
|
ea2208e7f2 | ||
|
|
debc871b01 |
85
ct/termix.sh
85
ct/termix.sh
@@ -29,10 +29,87 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if check_for_gh_tag "guacd" "apache/guacamole-server"; then
|
||||||
|
msg_info "Stopping guacd"
|
||||||
|
systemctl stop guacd 2>/dev/null || true
|
||||||
|
msg_ok "Stopped guacd"
|
||||||
|
|
||||||
|
ensure_dependencies \
|
||||||
|
libcairo2-dev \
|
||||||
|
libjpeg62-turbo-dev \
|
||||||
|
libpng-dev \
|
||||||
|
libtool-bin \
|
||||||
|
uuid-dev \
|
||||||
|
libvncserver-dev \
|
||||||
|
freerdp3-dev \
|
||||||
|
libssh2-1-dev \
|
||||||
|
libtelnet-dev \
|
||||||
|
libwebsockets-dev \
|
||||||
|
libpulse-dev \
|
||||||
|
libvorbis-dev \
|
||||||
|
libwebp-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libpango1.0-dev \
|
||||||
|
libswscale-dev \
|
||||||
|
libavcodec-dev \
|
||||||
|
libavutil-dev \
|
||||||
|
libavformat-dev
|
||||||
|
|
||||||
|
msg_info "Updating Guacamole Server (guacd)"
|
||||||
|
fetch_and_deploy_gh_tag "guacd" "apache/guacamole-server" "${CHECK_UPDATE_RELEASE}" "/opt/guacamole-server"
|
||||||
|
cd /opt/guacamole-server
|
||||||
|
export CPPFLAGS="-Wno-error=deprecated-declarations"
|
||||||
|
$STD autoreconf -fi
|
||||||
|
$STD ./configure --with-init-dir=/etc/init.d --enable-allow-freerdp-snapshots
|
||||||
|
$STD make
|
||||||
|
$STD make install
|
||||||
|
$STD ldconfig
|
||||||
|
cd /opt
|
||||||
|
rm -rf /opt/guacamole-server
|
||||||
|
msg_ok "Updated Guacamole Server (guacd) to ${CHECK_UPDATE_RELEASE}"
|
||||||
|
|
||||||
|
if [[ ! -f /etc/guacamole/guacd.conf ]]; then
|
||||||
|
mkdir -p /etc/guacamole
|
||||||
|
cat <<EOF >/etc/guacamole/guacd.conf
|
||||||
|
[server]
|
||||||
|
bind_host = 127.0.0.1
|
||||||
|
bind_port = 4822
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! -f /etc/systemd/system/guacd.service ]]; then
|
||||||
|
cat <<EOF >/etc/systemd/system/guacd.service
|
||||||
|
[Unit]
|
||||||
|
Description=Guacamole Proxy Daemon (guacd)
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
ExecStart=/etc/init.d/guacd start
|
||||||
|
ExecStop=/etc/init.d/guacd stop
|
||||||
|
ExecReload=/etc/init.d/guacd restart
|
||||||
|
PIDFile=/var/run/guacd.pid
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=5
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! grep -q "guacd.service" /etc/systemd/system/termix.service 2>/dev/null; then
|
||||||
|
sed -i '/^After=network.target/s/$/ guacd.service/' /etc/systemd/system/termix.service
|
||||||
|
sed -i '/^\[Unit\]/a Wants=guacd.service' /etc/systemd/system/termix.service
|
||||||
|
fi
|
||||||
|
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl enable -q --now guacd
|
||||||
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "termix" "Termix-SSH/Termix"; then
|
if check_for_gh_release "termix" "Termix-SSH/Termix"; then
|
||||||
msg_info "Stopping Service"
|
msg_info "Stopping Termix"
|
||||||
systemctl stop termix
|
systemctl stop termix
|
||||||
msg_ok "Stopped Service"
|
msg_ok "Stopped Termix"
|
||||||
|
|
||||||
msg_info "Backing up Data"
|
msg_info "Backing up Data"
|
||||||
cp -r /opt/termix/data /opt/termix_data_backup
|
cp -r /opt/termix/data /opt/termix_data_backup
|
||||||
@@ -102,9 +179,9 @@ function update_script() {
|
|||||||
msg_warn "Nginx configuration not updated. If Termix doesn't work, restore from backup or update manually."
|
msg_warn "Nginx configuration not updated. If Termix doesn't work, restore from backup or update manually."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Starting Service"
|
msg_info "Starting Termix"
|
||||||
systemctl start termix
|
systemctl start termix
|
||||||
msg_ok "Started Service"
|
msg_ok "Started Termix"
|
||||||
msg_ok "Updated successfully!"
|
msg_ok "Updated successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
|
|||||||
@@ -19,9 +19,41 @@ $STD apt install -y \
|
|||||||
python3 \
|
python3 \
|
||||||
nginx \
|
nginx \
|
||||||
openssl \
|
openssl \
|
||||||
gettext-base
|
gettext-base \
|
||||||
|
libcairo2-dev \
|
||||||
|
libjpeg62-turbo-dev \
|
||||||
|
libpng-dev \
|
||||||
|
libtool-bin \
|
||||||
|
uuid-dev \
|
||||||
|
libvncserver-dev \
|
||||||
|
freerdp3-dev \
|
||||||
|
libssh2-1-dev \
|
||||||
|
libtelnet-dev \
|
||||||
|
libwebsockets-dev \
|
||||||
|
libpulse-dev \
|
||||||
|
libvorbis-dev \
|
||||||
|
libwebp-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libpango1.0-dev \
|
||||||
|
libswscale-dev \
|
||||||
|
libavcodec-dev \
|
||||||
|
libavutil-dev \
|
||||||
|
libavformat-dev
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
msg_info "Building Guacamole Server (guacd)"
|
||||||
|
fetch_and_deploy_gh_tag "guacd" "apache/guacamole-server" "latest" "/opt/guacamole-server"
|
||||||
|
cd /opt/guacamole-server
|
||||||
|
export CPPFLAGS="-Wno-error=deprecated-declarations"
|
||||||
|
$STD autoreconf -fi
|
||||||
|
$STD ./configure --with-init-dir=/etc/init.d --enable-allow-freerdp-snapshots
|
||||||
|
$STD make
|
||||||
|
$STD make install
|
||||||
|
$STD ldconfig
|
||||||
|
cd /opt
|
||||||
|
rm -rf /opt/guacamole-server
|
||||||
|
msg_ok "Built Guacamole Server (guacd)"
|
||||||
|
|
||||||
NODE_VERSION="22" setup_nodejs
|
NODE_VERSION="22" setup_nodejs
|
||||||
fetch_and_deploy_gh_release "termix" "Termix-SSH/Termix"
|
fetch_and_deploy_gh_release "termix" "Termix-SSH/Termix"
|
||||||
|
|
||||||
@@ -74,10 +106,36 @@ systemctl reload nginx
|
|||||||
msg_ok "Configured Nginx"
|
msg_ok "Configured Nginx"
|
||||||
|
|
||||||
msg_info "Creating Service"
|
msg_info "Creating Service"
|
||||||
|
mkdir -p /etc/guacamole
|
||||||
|
cat <<EOF >/etc/guacamole/guacd.conf
|
||||||
|
[server]
|
||||||
|
bind_host = 127.0.0.1
|
||||||
|
bind_port = 4822
|
||||||
|
EOF
|
||||||
|
|
||||||
|
cat <<EOF >/etc/systemd/system/guacd.service
|
||||||
|
[Unit]
|
||||||
|
Description=Guacamole Proxy Daemon (guacd)
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
ExecStart=/etc/init.d/guacd start
|
||||||
|
ExecStop=/etc/init.d/guacd stop
|
||||||
|
ExecReload=/etc/init.d/guacd restart
|
||||||
|
PIDFile=/var/run/guacd.pid
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=5
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
|
||||||
cat <<EOF >/etc/systemd/system/termix.service
|
cat <<EOF >/etc/systemd/system/termix.service
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Termix Backend
|
Description=Termix Backend
|
||||||
After=network.target
|
After=network.target guacd.service
|
||||||
|
Wants=guacd.service
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
@@ -92,7 +150,7 @@ RestartSec=5
|
|||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOF
|
EOF
|
||||||
systemctl enable -q --now termix
|
systemctl enable -q --now guacd termix
|
||||||
msg_ok "Created Service"
|
msg_ok "Created Service"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
|
|||||||
Reference in New Issue
Block a user