Compare commits

...

11 Commits

Author SHA1 Message Date
30ca65e1d5 Update versions.json (#6130)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Sync to Gitea / sync (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-22 02:13:47 +02:00
ae84b7d281 Update CHANGELOG.md (#6128)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Sync to Gitea / sync (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Auto Update .app-files / update-app-files (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-21 18:22:53 +00:00
202eed7c13 firefly: fix permissions at update (#6119) 2025-07-21 20:22:31 +02:00
e194a36301 readd teamspeak-json (#6127) 2025-07-21 19:17:39 +02:00
7b93eed34a Delete frontend/public/json/teamspeak-server.json 2025-07-21 19:09:15 +02:00
5a3855566b Update CHANGELOG.md (#6123)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-21 16:47:29 +00:00
85595871df alternate fix for #6087 (#6098) 2025-07-21 18:47:03 +02:00
901837b4ae Update CHANGELOG.md (#6122)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-21 16:45:20 +00:00
9f1273349f Teamspeak-Server (#6121)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-07-21 18:44:57 +02:00
e6756385ed Update CHANGELOG.md (#6118)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-21 14:05:42 +00:00
74be3e70b9 nginxproxymanager: remove injected tteck link (#6117) 2025-07-21 16:05:17 +02:00
9 changed files with 279 additions and 101 deletions

View File

@ -12,6 +12,19 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
## 2025-07-21
### 🆕 New Scripts
- Teamspeak-Server ([#6121](https://github.com/community-scripts/ProxmoxVE/pull/6121))
### 🚀 Updated Scripts
- pve-post-installer: remove Nag-File if already exist [@luckman212](https://github.com/luckman212) ([#6098](https://github.com/community-scripts/ProxmoxVE/pull/6098))
- #### 🐞 Bug Fixes
- firefly: fix permissions at update [@MickLesk](https://github.com/MickLesk) ([#6119](https://github.com/community-scripts/ProxmoxVE/pull/6119))
- nginxproxymanager: remove injected footer link (tteck) [@MickLesk](https://github.com/MickLesk) ([#6117](https://github.com/community-scripts/ProxmoxVE/pull/6117))
## 2025-07-20
### 🚀 Updated Scripts

View File

@ -46,9 +46,13 @@ function update_script() {
rm -rf /opt/firefly/storage
cp /opt/.env /opt/firefly/.env
cp -r /opt/storage /opt/firefly/storage
cd /opt/firefly
chown -R www-data:www-data /opt/firefly
chmod -R 775 /opt/firefly/storage
find /opt/firefly/storage -type d -exec chmod 775 {} \;
find /opt/firefly/storage -type f -exec chmod 664 {} \;
mkdir -p /opt/firefly/storage/framework/{cache/data,sessions,views}
$STD sudo -u www-data php /opt/firefly/artisan cache:clear
$STD php artisan migrate --seed --force
$STD php artisan cache:clear
$STD php artisan view:clear

View File

@ -0,0 +1,6 @@
______ __ _____
/_ __/__ ____ _____ ___ _________ ___ ____ _/ /__ / ___/___ ______ _____ _____
/ / / _ \/ __ `/ __ `__ \/ ___/ __ \/ _ \/ __ `/ //_/_____\__ \/ _ \/ ___/ | / / _ \/ ___/
/ / / __/ /_/ / / / / / (__ ) /_/ / __/ /_/ / ,< /_____/__/ / __/ / | |/ / __/ /
/_/ \___/\__,_/_/ /_/ /_/____/ .___/\___/\__,_/_/|_| /____/\___/_/ |___/\___/_/
/_/

63
ct/teamspeak-server.sh Normal file
View File

@ -0,0 +1,63 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: tremor021 (Slaviša Arežina)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://teamspeak.com/en/
APP="Teamspeak-Server"
var_tags="${var_tags:-voice;communication}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/teamspeak-server ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://teamspeak.com/en/downloads/#server | grep -oP 'teamspeak3-server_linux_amd64-\K[0-9]+\.[0-9]+\.[0-9]+' | head -1)
if [[ "${RELEASE}" != "$(cat ~/.teamspeak-server 2>/dev/null)" ]] || [[ ! -f ~/.teamspeak-server ]]; then
msg_info "Stopping Service"
systemctl stop teamspeak-server
msg_ok "Stopped Service"
msg_info "Updating ${APP}"
curl -fsSL "https://files.teamspeak-services.com/releases/server/${RELEASE}/teamspeak3-server_linux_amd64-${RELEASE}.tar.bz2" -o ts3server.tar.bz2
tar -xf ./ts3server.tar.bz2
cp -ru teamspeak3-server_linux_amd64/* /opt/teamspeak-server/
rm -f ~/ts3server.tar.bz*
echo "${RELEASE}" >~/.teamspeak-server
msg_ok "Updated $APP"
msg_info "Starting Service"
systemctl start teamspeak-server
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "Already up to date"
fi
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}${IP}:9987${CL}"

View File

@ -0,0 +1,40 @@
{
"name": "Teamspeak-Server",
"slug": "teamspeak-server",
"categories": [
24
],
"date_created": "2025-07-21",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 9987,
"documentation": "https://support.teamspeak.com/hc/en-us/categories/360000302017-TeamSpeak-3",
"website": "https://teamspeak.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/teamspeak-light.webp",
"config_path": "",
"description": "TeamSpeak is a voice over IP (VoIP) application, primarily used by gamers and teams to chat in real time on dedicated servers. It delivers crystalclear, lowlatency voice communication.",
"install_methods": [
{
"type": "default",
"script": "ct/teamspeak-server.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 2,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Use `journalctl -u teamspeak-server.service` inside LXC console to check for admin credentials!",
"type": "info"
}
]
}

View File

@ -1,9 +1,84 @@
[
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2",
"date": "2025-06-26T22:08:00Z"
},
{
"name": "advplyr/audiobookshelf",
"version": "v2.26.2",
"date": "2025-07-21T22:47:38Z"
},
{
"name": "ellite/Wallos",
"version": "v4.0.0",
"date": "2025-07-21T21:05:02Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v0.7.16-beta",
"date": "2025-07-21T20:58:02Z"
},
{
"name": "autobrr/autobrr",
"version": "v1.64.0",
"date": "2025-07-21T20:56:33Z"
},
{
"name": "Checkmk/checkmk",
"version": "v2.4.0p8",
"date": "2025-07-21T19:25:40Z"
},
{
"name": "mongodb/mongo",
"version": "r8.2.0-rc0",
"date": "2025-07-21T19:07:52Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "v2.7.2",
"date": "2025-07-21T18:19:05Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.24.5",
"date": "2025-07-21T17:04:25Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.37.2",
"date": "2025-07-21T14:08:35Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.102.4",
"date": "2025-07-17T11:27:58Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.2.5r2",
"date": "2025-07-21T12:52:26Z"
},
{
"name": "mealie-recipes/mealie",
"version": "v3.0.2",
"date": "2025-07-21T12:33:19Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.13.1",
"date": "2025-07-21T11:57:03Z"
},
{
"name": "VictoriaMetrics/VictoriaMetrics",
"version": "pmm-6401-v1.122.0",
"date": "2025-07-21T10:40:07Z"
},
{
"name": "zabbix/zabbix",
"version": "7.0.17rc2",
"date": "2025-07-21T10:37:33Z"
},
{
"name": "linuxserver/Heimdall",
"version": "v2.7.1",
@ -54,21 +129,11 @@
"version": "v3.6.2",
"date": "2025-07-17T12:08:03Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-seerr",
"date": "2025-07-20T22:47:08Z"
},
{
"name": "Dolibarr/dolibarr",
"version": "21.0.2",
"date": "2025-07-20T17:02:07Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.24.4",
"date": "2025-07-20T16:35:14Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-openapi@9.1.4",
@ -94,11 +159,6 @@
"version": "v2.16.0-beta1",
"date": "2025-07-20T09:43:36Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.2.5",
"date": "2025-07-20T07:28:22Z"
},
{
"name": "documenso/documenso",
"version": "v1.12.2-rc.2",
@ -124,16 +184,6 @@
"version": "3.1.5",
"date": "2025-07-19T21:50:47Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v0.7.15-beta",
"date": "2025-07-19T20:57:34Z"
},
{
"name": "ellite/Wallos",
"version": "v3.3.1",
"date": "2025-07-19T20:51:00Z"
},
{
"name": "pelican-dev/panel",
"version": "v1.0.0-beta23",
@ -144,11 +194,6 @@
"version": "v1.0.0-beta15",
"date": "2025-07-19T19:46:52Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2",
"date": "2025-06-26T22:08:00Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.18",
@ -211,13 +256,8 @@
},
{
"name": "wazuh/wazuh",
"version": "coverity-w29-4.13.0",
"date": "2025-07-16T12:35:22Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.102.4",
"date": "2025-07-17T11:27:58Z"
"version": "coverity-w30-4.13.0",
"date": "2025-07-18T12:05:26Z"
},
{
"name": "emqx/emqx",
@ -259,11 +299,6 @@
"version": "v0.9.83",
"date": "2025-07-17T17:48:01Z"
},
{
"name": "mongodb/mongo",
"version": "r8.0.12",
"date": "2025-07-17T17:43:01Z"
},
{
"name": "wavelog/wavelog",
"version": "2.0.7",
@ -284,11 +319,6 @@
"version": "v0.22.0",
"date": "2025-07-17T06:35:43Z"
},
{
"name": "advplyr/audiobookshelf",
"version": "v2.26.1",
"date": "2025-07-16T22:48:43Z"
},
{
"name": "plexguide/Huntarr.io",
"version": "8.1.15",
@ -309,11 +339,6 @@
"version": "v1.27.1",
"date": "2025-07-16T13:29:00Z"
},
{
"name": "Checkmk/checkmk",
"version": "v2.4.0p8-rc2",
"date": "2025-07-16T13:21:20Z"
},
{
"name": "glpi-project/glpi",
"version": "10.0.19",
@ -359,11 +384,6 @@
"version": "v1.134.0",
"date": "2025-07-15T13:43:39Z"
},
{
"name": "zabbix/zabbix",
"version": "7.2.11rc1",
"date": "2025-07-15T11:47:53Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.50.7",
@ -414,11 +434,6 @@
"version": "v1.11.0",
"date": "2025-07-13T19:22:47Z"
},
{
"name": "mealie-recipes/mealie",
"version": "v3.0.1",
"date": "2025-07-13T14:40:57Z"
},
{
"name": "mayswind/AriaNg",
"version": "1.3.11",
@ -604,11 +619,6 @@
"version": "0.23.1",
"date": "2025-07-06T23:57:52Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.13.0",
"date": "2025-07-06T19:23:55Z"
},
{
"name": "syncthing/syncthing",
"version": "v1.30.0",
@ -704,11 +714,6 @@
"version": "2025.4",
"date": "2025-07-01T18:01:37Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.37.1",
"date": "2025-07-01T16:57:43Z"
},
{
"name": "navidrome/navidrome",
"version": "v0.57.0",
@ -889,11 +894,6 @@
"version": "v3.3.25",
"date": "2025-06-14T02:52:44Z"
},
{
"name": "autobrr/autobrr",
"version": "v1.63.1",
"date": "2025-06-11T11:05:42Z"
},
{
"name": "OctoPrint/OctoPrint",
"version": "1.11.2",

View File

@ -32,9 +32,8 @@ $STD apt-get install -y \
python3-cffi \
python3-certbot \
python3-certbot-dns-cloudflare
$STD pip3 install certbot-dns-multi
$STD pip3 install --break-system-packages certbot-dns-multi
$STD python3 -m venv /opt/certbot/
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Installed Python Dependencies"
VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)"
@ -85,8 +84,6 @@ else
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"$RELEASE\"|" backend/package.json
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"$RELEASE\"|" frontend/package.json
fi
sed -i 's|"fork-me": ".*"|"fork-me": "Proxmox VE Helper-Scripts"|' frontend/js/i18n/messages.json
sed -i "s|https://github.com.*source=nginx-proxy-manager|https://helper-scripts.com|g" frontend/js/app/ui/footer/main.ejs
sed -i 's+^daemon+#daemon+g' docker/rootfs/etc/nginx/nginx.conf
NGINX_CONFS=$(find "$(pwd)" -type f -name "*.conf")
for NGINX_CONF in $NGINX_CONFS; do

View File

@ -0,0 +1,56 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: tremor021 (Slaviša Arežina)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://teamspeak.com/en/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
RELEASE=$(curl -fsSL https://teamspeak.com/en/downloads/#server | grep -oP 'teamspeak3-server_linux_amd64-\K[0-9]+\.[0-9]+\.[0-9]+' | head -1)
msg_info "Setting up Teamspeak Server"
curl -fsSL "https://files.teamspeak-services.com/releases/server/${RELEASE}/teamspeak3-server_linux_amd64-${RELEASE}.tar.bz2" -o ts3server.tar.bz2
tar -xf ./ts3server.tar.bz2
mv teamspeak3-server_linux_amd64/ /opt/teamspeak-server/
touch /opt/teamspeak-server/.ts3server_license_accepted
echo "${RELEASE}" >~/.teamspeak-server
msg_ok "Setup Teamspeak Server"
msg_info "Creating service"
cat <<EOF >/etc/systemd/system/teamspeak-server.service
[Unit]
Description=TeamSpeak3 Server
Wants=network-online.target
After=network.target
[Service]
WorkingDirectory=/opt/teamspeak-server
User=root
Type=forking
ExecStart=/opt/teamspeak-server/ts3server_startscript.sh start
ExecStop=/opt/teamspeak-server/ts3server_startscript.sh stop
ExecReload=/opt/teamspeak-server/ts3server_startscript.sh restart
Restart=always
RestartSec=15
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now teamspeak-server
msg_ok "Created service"
motd_ssh
customize
msg_info "Cleaning up"
rm -f ~/ts3server.tar.bz*
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -133,24 +133,23 @@ EOF
;;
esac
if [[ ! -f /etc/apt/apt.conf.d/no-nag-script ]]; then
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUBSCRIPTION NAG" --menu "This will disable the nag message reminding you to purchase a subscription every time you log in to the web interface.\n \nDisable subscription nag?" 14 58 2 \
"yes" " " \
"no" " " 3>&2 2>&1 1>&3)
case $CHOICE in
yes)
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "Support Subscriptions" "Supporting the software's development team is essential. Check their official website's Support Subscriptions for pricing. Without their dedicated work, we wouldn't have this exceptional software." 10 58
msg_info "Disabling subscription nag"
echo "DPkg::Post-Invoke { \"dpkg -V proxmox-widget-toolkit 2>/dev/null && [ -f /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js ] && echo 'Removing subscription nag from UI...' && sed -i '/data\.status/{s/\!/=/;s/active/NoMoreNagging/}' /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js\"; };" >/etc/apt/apt.conf.d/no-nag-script
apt --reinstall install proxmox-widget-toolkit &>/dev/null
msg_ok "Disabled subscription nag (Delete browser cache)"
;;
no)
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "Support Subscriptions" "Supporting the software's development team is essential. Check their official website's Support Subscriptions for pricing. Without their dedicated work, we wouldn't have this exceptional software." 10 58
msg_error "Selected no to Disabling subscription nag"
;;
esac
fi
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUBSCRIPTION NAG" --menu "This will disable the nag message reminding you to purchase a subscription every time you log in to the web interface.\n \nDisable subscription nag?" 14 58 2 \
"yes" " " \
"no" " " 3>&2 2>&1 1>&3)
case $CHOICE in
yes)
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "Support Subscriptions" "Supporting the software's development team is essential. Check their official website's Support Subscriptions for pricing. Without their dedicated work, we wouldn't have this exceptional software." 10 58
msg_info "Disabling subscription nag"
echo "DPkg::Post-Invoke { \"dpkg -V proxmox-widget-toolkit 2>/dev/null && [ -f /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js ] && echo 'Removing subscription nag from UI...' && sed -i '/data\.status/{s/\!/=/;s/active/NoMoreNagging/}' /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js\"; };" >/etc/apt/apt.conf.d/no-nag-script
msg_ok "Disabled subscription nag (Delete browser cache)"
;;
no)
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "Support Subscriptions" "Supporting the software's development team is essential. Check their official website's Support Subscriptions for pricing. Without their dedicated work, we wouldn't have this exceptional software." 10 58
msg_error "Selected no to Disabling subscription nag"
rm /etc/apt/apt.conf.d/no-nag-script 2>/dev/null
;;
esac
apt --reinstall install proxmox-widget-toolkit &>/dev/null
if ! systemctl is-active --quiet pve-ha-lrm; then
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "HIGH AVAILABILITY" --menu "Enable high availability?" 10 58 2 \