Compare commits

..

1 Commits

Author SHA1 Message Date
CanbiZ (MickLesk)
1801db1a98 remove(suwayomiserver): remove due to inactivity
Removed due to very low usage (3 installs in 120 days).
An alternative will be provided. Thanks for your understanding.
2026-03-05 16:24:12 +01:00
13 changed files with 51 additions and 93 deletions

View File

@@ -8,7 +8,7 @@ on:
jobs: jobs:
check-new-script: check-new-script:
if: github.repository == 'community-scripts/ProxmoxVE' if: github.repository == 'community-scripts/ProxmoxVE'
runs-on: self-hosted runs-on: coolify-runner
permissions: permissions:
pull-requests: write pull-requests: write
contents: read contents: read

View File

@@ -410,14 +410,6 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
</details> </details>
## 2026-03-06
### 🚀 Updated Scripts
- #### ✨ New Features
- RustDesk Server: Switch to updated repository [@tremor021](https://github.com/tremor021) ([#12083](https://github.com/community-scripts/ProxmoxVE/pull/12083))
## 2026-03-05 ## 2026-03-05
### 🆕 New Scripts ### 🆕 New Scripts
@@ -430,15 +422,9 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
- #### 🐞 Bug Fixes - #### 🐞 Bug Fixes
- fluid-calendar: add build-essential to install and update dependencies [@Copilot](https://github.com/Copilot) ([#12602](https://github.com/community-scripts/ProxmoxVE/pull/12602))
- Refactor: BentoPDF [@vhsdream](https://github.com/vhsdream) ([#12597](https://github.com/community-scripts/ProxmoxVE/pull/12597))
- Tianji: Fix the bug introduced by the refactor [@tremor021](https://github.com/tremor021) ([#12564](https://github.com/community-scripts/ProxmoxVE/pull/12564)) - Tianji: Fix the bug introduced by the refactor [@tremor021](https://github.com/tremor021) ([#12564](https://github.com/community-scripts/ProxmoxVE/pull/12564))
- PowerDNS: use 'launch=' instead of 'launch+=' for gsqlite3 backend [@MickLesk](https://github.com/MickLesk) ([#12579](https://github.com/community-scripts/ProxmoxVE/pull/12579)) - PowerDNS: use 'launch=' instead of 'launch+=' for gsqlite3 backend [@MickLesk](https://github.com/MickLesk) ([#12579](https://github.com/community-scripts/ProxmoxVE/pull/12579))
### 🗑️ Deleted Scripts
- Suwayomi-Server: remove due to inactivity and very low usage [@MickLesk](https://github.com/MickLesk) ([#12596](https://github.com/community-scripts/ProxmoxVE/pull/12596))
### 💾 Core ### 💾 Core
- #### 🔧 Refactor - #### 🔧 Refactor

View File

@@ -27,21 +27,21 @@ function update_script() {
fi fi
APIRELEASE=$(curl -s https://api.github.com/repos/lejianwen/rustdesk-api/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') APIRELEASE=$(curl -s https://api.github.com/repos/lejianwen/rustdesk-api/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
RELEASE=$(curl -s https://api.github.com/repos/lejianwen/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(curl -s https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [ "${RELEASE}" != "$(cat ~/.rustdesk-server 2>/dev/null)" ] || [ ! -f ~/.rustdesk-server ]; then if [ "${RELEASE}" != "$(cat ~/.rustdesk-server 2>/dev/null)" ] || [ ! -f ~/.rustdesk-server ]; then
msg_info "Updating RustDesk Server to v${RELEASE}" msg_info "Updating RustDesk Server to v${RELEASE}"
$STD apk -U upgrade $STD apk -U upgrade
$STD service rustdesk-server-hbbs stop $STD service rustdesk-server-hbbs stop
$STD service rustdesk-server-hbbr stop $STD service rustdesk-server-hbbr stop
temp_file1=$(mktemp) temp_file1=$(mktemp)
curl -fsSL "https://github.com/lejianwen/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-linux-amd64.zip" -o "$temp_file1" curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-linux-amd64.zip" -o "$temp_file1"
$STD unzip "$temp_file1" $STD unzip "$temp_file1"
cp -r amd64/* /opt/rustdesk-server/ cp -r amd64/* /opt/rustdesk-server/
echo "${RELEASE}" >~/.rustdesk-server echo "${RELEASE}" >~/.rustdesk-server
$STD service rustdesk-server-hbbs start $STD service rustdesk-server-hbbs start
$STD service rustdesk-server-hbbr start $STD service rustdesk-server-hbbr start
rm -rf amd64 rm -rf amd64
rm -f "$temp_file1" rm -f $temp_file1
msg_ok "Updated RustDesk Server" msg_ok "Updated RustDesk Server"
else else
msg_ok "No update required. ${APP} is already at v${RELEASE}" msg_ok "No update required. ${APP} is already at v${RELEASE}"
@@ -56,7 +56,7 @@ function update_script() {
echo "${APIRELEASE}" >~/.rustdesk-api echo "${APIRELEASE}" >~/.rustdesk-api
$STD service rustdesk-api start $STD service rustdesk-api start
rm -rf release rm -rf release
rm -f "$temp_file2" rm -f $temp_file2
msg_ok "Updated RustDesk API" msg_ok "Updated RustDesk API"
else else
msg_ok "No update required. RustDesk API is already at v${APIRELEASE}" msg_ok "No update required. RustDesk API is already at v${APIRELEASE}"

View File

@@ -7,7 +7,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="BentoPDF" APP="BentoPDF"
var_tags="${var_tags:-pdf-editor}" var_tags="${var_tags:-pdf-editor}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
@@ -35,32 +35,16 @@ function update_script() {
systemctl stop bentopdf systemctl stop bentopdf
msg_ok "Stopped Service" msg_ok "Stopped Service"
[[ -f /opt/bentopdf/.env.production ]] && cp /opt/bentopdf/.env.production /opt/production.env
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "bentopdf" "alam00000/bentopdf" "tarball" "latest" "/opt/bentopdf" CLEAN_INSTALL=1 fetch_and_deploy_gh_release "bentopdf" "alam00000/bentopdf" "tarball" "latest" "/opt/bentopdf"
msg_info "Updating BentoPDF" msg_info "Updating BentoPDF"
cd /opt/bentopdf cd /opt/bentopdf
$STD npm ci --no-audit --no-fund $STD npm ci --no-audit --no-fund
$STD npm install http-server -g
if [[ -f /opt/production.env ]]; then
mv /opt/production.env ./.env.production
else
cp ./.env.example ./.env.production
fi
export NODE_OPTIONS="--max-old-space-size=3072"
export SIMPLE_MODE=true export SIMPLE_MODE=true
export VITE_USE_CDN=true $STD npm run build -- --mode production
$STD npm run build:all
msg_ok "Updated BentoPDF" msg_ok "Updated BentoPDF"
msg_info "Starting Service" msg_info "Starting Service"
if grep -q '8080' /etc/systemd/system/bentopdf.service; then
sed -i -e 's|/bentopdf|/bentopdf/dist|' \
-e 's|npx.*|npx http-server -g -b -d false -r --no-dotfiles|' \
/etc/systemd/system/bentopdf.service
systemctl daemon-reload
fi
systemctl start bentopdf systemctl start bentopdf
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"

View File

@@ -29,7 +29,6 @@ function update_script() {
exit exit
fi fi
ensure_dependencies build-essential
NODE_VERSION="24" setup_nodejs NODE_VERSION="24" setup_nodejs
if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then

View File

@@ -29,7 +29,9 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "rustdesk-api"; then RELEASE=$(curl -fsSL https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
APIRELEASE=$(curl -fsSL https://api.github.com/repos/lejianwen/rustdesk-api/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.rustdesk-hbbr)" ]] || [[ "${APIRELEASE}" != "$(cat ~/.rustdesk-api)" ]] || [[ ! -f ~/.rustdesk-hbbr ]] || [[ ! -f ~/.rustdesk-api ]]; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop rustdesk-hbbr systemctl stop rustdesk-hbbr
systemctl stop rustdesk-hbbs systemctl stop rustdesk-hbbs
@@ -44,7 +46,7 @@ function update_script() {
fetch_and_deploy_gh_release "rustdesk-api" "lejianwen/rustdesk-api" "binary" "latest" "/opt/rustdesk" "rustdesk-api-server*amd64.deb" fetch_and_deploy_gh_release "rustdesk-api" "lejianwen/rustdesk-api" "binary" "latest" "/opt/rustdesk" "rustdesk-api-server*amd64.deb"
msg_info "Starting services" msg_info "Starting services"
systemctl start -q rustdesk-* systemctl start -q rustdesk-* --all
msg_ok "Services started" msg_ok "Services started"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"

View File

@@ -19,7 +19,7 @@
"type": "default", "type": "default",
"script": "ct/bentopdf.sh", "script": "ct/bentopdf.sh",
"resources": { "resources": {
"cpu": 2, "cpu": 1,
"ram": 4096, "ram": 4096,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",

View File

@@ -1,5 +1,5 @@
{ {
"generated": "2026-03-06T06:16:24Z", "generated": "2026-03-05T12:12:30Z",
"versions": [ "versions": [
{ {
"slug": "2fauth", "slug": "2fauth",
@@ -214,9 +214,9 @@
{ {
"slug": "comfyui", "slug": "comfyui",
"repo": "comfyanonymous/ComfyUI", "repo": "comfyanonymous/ComfyUI",
"version": "v0.16.3", "version": "v0.16.0",
"pinned": false, "pinned": false,
"date": "2026-03-05T23:18:25Z" "date": "2026-03-05T10:35:07Z"
}, },
{ {
"slug": "commafeed", "slug": "commafeed",
@@ -452,9 +452,9 @@
{ {
"slug": "gitea-mirror", "slug": "gitea-mirror",
"repo": "RayLabsHQ/gitea-mirror", "repo": "RayLabsHQ/gitea-mirror",
"version": "v3.12.4", "version": "v3.12.2",
"pinned": false, "pinned": false,
"date": "2026-03-06T05:02:40Z" "date": "2026-03-05T04:26:50Z"
}, },
{ {
"slug": "glance", "slug": "glance",
@@ -606,16 +606,16 @@
{ {
"slug": "invoiceninja", "slug": "invoiceninja",
"repo": "invoiceninja/invoiceninja", "repo": "invoiceninja/invoiceninja",
"version": "v5.12.70", "version": "v5.12.69",
"pinned": false, "pinned": false,
"date": "2026-03-06T01:53:38Z" "date": "2026-02-26T22:23:32Z"
}, },
{ {
"slug": "jackett", "slug": "jackett",
"repo": "Jackett/Jackett", "repo": "Jackett/Jackett",
"version": "v0.24.1292", "version": "v0.24.1287",
"pinned": false, "pinned": false,
"date": "2026-03-06T05:57:21Z" "date": "2026-03-05T05:49:33Z"
}, },
{ {
"slug": "jellystat", "slug": "jellystat",
@@ -662,9 +662,9 @@
{ {
"slug": "keycloak", "slug": "keycloak",
"repo": "keycloak/keycloak", "repo": "keycloak/keycloak",
"version": "26.5.5", "version": "26.5.4",
"pinned": false, "pinned": false,
"date": "2026-03-05T15:40:30Z" "date": "2026-02-20T09:19:45Z"
}, },
{ {
"slug": "kima-hub", "slug": "kima-hub",
@@ -1110,9 +1110,9 @@
{ {
"slug": "photoprism", "slug": "photoprism",
"repo": "photoprism/photoprism", "repo": "photoprism/photoprism",
"version": "260305-fad9d5395", "version": "251130-b3068414c",
"pinned": false, "pinned": false,
"date": "2026-03-05T20:25:12Z" "date": "2025-12-01T05:07:31Z"
}, },
{ {
"slug": "pihole-exporter", "slug": "pihole-exporter",
@@ -1229,9 +1229,9 @@
{ {
"slug": "pulse", "slug": "pulse",
"repo": "rcourtman/Pulse", "repo": "rcourtman/Pulse",
"version": "v5.1.20", "version": "v5.1.19",
"pinned": false, "pinned": false,
"date": "2026-03-06T00:30:32Z" "date": "2026-03-05T11:14:54Z"
}, },
{ {
"slug": "pve-scripts-local", "slug": "pve-scripts-local",
@@ -1306,9 +1306,9 @@
{ {
"slug": "recyclarr", "slug": "recyclarr",
"repo": "recyclarr/recyclarr", "repo": "recyclarr/recyclarr",
"version": "v8.4.0", "version": "v8.3.2",
"pinned": false, "pinned": false,
"date": "2026-03-06T01:25:59Z" "date": "2026-02-25T22:39:51Z"
}, },
{ {
"slug": "reitti", "slug": "reitti",
@@ -1390,9 +1390,9 @@
{ {
"slug": "semaphore", "slug": "semaphore",
"repo": "semaphoreui/semaphore", "repo": "semaphoreui/semaphore",
"version": "v2.17.16", "version": "v2.17.15",
"pinned": false, "pinned": false,
"date": "2026-03-05T12:39:05Z" "date": "2026-02-28T09:04:40Z"
}, },
{ {
"slug": "shelfmark", "slug": "shelfmark",
@@ -1411,9 +1411,9 @@
{ {
"slug": "silverbullet", "slug": "silverbullet",
"repo": "silverbulletmd/silverbullet", "repo": "silverbulletmd/silverbullet",
"version": "2.5.1", "version": "2.4.1",
"pinned": false, "pinned": false,
"date": "2026-03-05T15:13:22Z" "date": "2026-01-16T12:08:28Z"
}, },
{ {
"slug": "slskd", "slug": "slskd",
@@ -1467,9 +1467,9 @@
{ {
"slug": "sportarr", "slug": "sportarr",
"repo": "Sportarr/Sportarr", "repo": "Sportarr/Sportarr",
"version": "v4.0.986.1061", "version": "v4.0.985.1060",
"pinned": false, "pinned": false,
"date": "2026-03-06T01:04:24Z" "date": "2026-03-04T01:00:04Z"
}, },
{ {
"slug": "stirling-pdf", "slug": "stirling-pdf",
@@ -1698,9 +1698,9 @@
{ {
"slug": "wallos", "slug": "wallos",
"repo": "ellite/Wallos", "repo": "ellite/Wallos",
"version": "v4.6.2", "version": "v4.6.1",
"pinned": false, "pinned": false,
"date": "2026-03-05T22:18:06Z" "date": "2026-02-10T21:06:46Z"
}, },
{ {
"slug": "wanderer", "slug": "wanderer",
@@ -1740,9 +1740,9 @@
{ {
"slug": "wealthfolio", "slug": "wealthfolio",
"repo": "afadil/wealthfolio", "repo": "afadil/wealthfolio",
"version": "v3.0.4", "version": "v3.0.3",
"pinned": false, "pinned": false,
"date": "2026-03-05T19:58:24Z" "date": "2026-03-03T21:47:55Z"
}, },
{ {
"slug": "web-check", "slug": "web-check",

View File

@@ -54,10 +54,6 @@
{ {
"text": "To see admin password on Alpine, type `cat ~/rustdesk.creds` inside LXC.", "text": "To see admin password on Alpine, type `cat ~/rustdesk.creds` inside LXC.",
"type": "info" "type": "info"
},
{
"text": "This script uses hbbs/hbbr builds from `lejianwen/rustdesk-server` (instead of the official repo) for full compatibility with the RustDesk API (SSO/OAuth). See `https://github.com/community-scripts/ProxmoxVE/issues/12079`.",
"type": "info"
} }
] ]
} }

View File

@@ -13,17 +13,17 @@ setting_up_container
network_check network_check
update_os update_os
RELEASE=$(curl -s https://api.github.com/repos/lejianwen/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(curl -s https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
msg_info "Installing RustDesk Server v${RELEASE}" msg_info "Installing RustDesk Server v${RELEASE}"
temp_file1=$(mktemp) temp_file1=$(mktemp)
curl -fsSL "https://github.com/lejianwen/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-linux-amd64.zip" -o "$temp_file1" curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-linux-amd64.zip" -o "$temp_file1"
$STD unzip "$temp_file1" $STD unzip "$temp_file1"
mv amd64 /opt/rustdesk-server mv amd64 /opt/rustdesk-server
mkdir -p /root/.config/rustdesk mkdir -p /root/.config/rustdesk
cd /opt/rustdesk-server cd /opt/rustdesk-server
./rustdesk-utils genkeypair >/tmp/rustdesk_keys.txt ./rustdesk-utils genkeypair > /tmp/rustdesk_keys.txt
grep "Public Key" /tmp/rustdesk_keys.txt | awk '{print $3}' >/root/.config/rustdesk/id_ed25519.pub grep "Public Key" /tmp/rustdesk_keys.txt | awk '{print $3}' > /root/.config/rustdesk/id_ed25519.pub
grep "Secret Key" /tmp/rustdesk_keys.txt | awk '{print $3}' >/root/.config/rustdesk/id_ed25519 grep "Secret Key" /tmp/rustdesk_keys.txt | awk '{print $3}' > /root/.config/rustdesk/id_ed25519
chmod 600 /root/.config/rustdesk/id_ed25519 chmod 600 /root/.config/rustdesk/id_ed25519
chmod 644 /root/.config/rustdesk/id_ed25519.pub chmod 644 /root/.config/rustdesk/id_ed25519.pub
rm /tmp/rustdesk_keys.txt rm /tmp/rustdesk_keys.txt

View File

@@ -19,12 +19,8 @@ fetch_and_deploy_gh_release "bentopdf" "alam00000/bentopdf" "tarball" "latest" "
msg_info "Setup BentoPDF" msg_info "Setup BentoPDF"
cd /opt/bentopdf cd /opt/bentopdf
$STD npm ci --no-audit --no-fund $STD npm ci --no-audit --no-fund
$STD npm install http-server -g
cp ./.env.example ./.env.production
export NODE_OPTIONS="--max-old-space-size=3072"
export SIMPLE_MODE=true export SIMPLE_MODE=true
export VITE_USE_CDN=true $STD npm run build -- --mode production
$STD npm run build:all
msg_ok "Setup BentoPDF" msg_ok "Setup BentoPDF"
msg_info "Creating Service" msg_info "Creating Service"
@@ -35,8 +31,8 @@ After=network.target
[Service] [Service]
Type=simple Type=simple
WorkingDirectory=/opt/bentopdf/dist WorkingDirectory=/opt/bentopdf
ExecStart=/usr/bin/npx http-server -g -b -d false -r --no-dotfiles ExecStart=/usr/bin/npx serve dist -p 8080
Restart=always Restart=always
RestartSec=10 RestartSec=10

View File

@@ -14,9 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt install -y zip
build-essential \
zip
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
PG_VERSION="17" setup_postgresql PG_VERSION="17" setup_postgresql

View File

@@ -13,13 +13,10 @@ setting_up_container
network_check network_check
update_os update_os
fetch_and_deploy_gh_release "rustdesk-hbbr" "lejianwen/rustdesk-server" "binary" "latest" "/opt/rustdesk" "rustdesk-server-hbbr*amd64.deb" fetch_and_deploy_gh_release "rustdesk-hbbr" "rustdesk/rustdesk-server" "binary" "latest" "/opt/rustdesk" "rustdesk-server-hbbr*amd64.deb"
fetch_and_deploy_gh_release "rustdesk-hbbs" "lejianwen/rustdesk-server" "binary" "latest" "/opt/rustdesk" "rustdesk-server-hbbs*amd64.deb" fetch_and_deploy_gh_release "rustdesk-hbbs" "rustdesk/rustdesk-server" "binary" "latest" "/opt/rustdesk" "rustdesk-server-hbbs*amd64.deb"
fetch_and_deploy_gh_release "rustdesk-utils" "lejianwen/rustdesk-server" "binary" "latest" "/opt/rustdesk" "rustdesk-server-utils*amd64.deb" fetch_and_deploy_gh_release "rustdesk-utils" "rustdesk/rustdesk-server" "binary" "latest" "/opt/rustdesk" "rustdesk-server-utils*amd64.deb"
fetch_and_deploy_gh_release "rustdesk-api" "lejianwen/rustdesk-api" "binary" "latest" "/opt/rustdesk" "rustdesk-api-server*amd64.deb" fetch_and_deploy_gh_release "rustdesk-api" "lejianwen/rustdesk-api" "binary" "latest" "/opt/rustdesk" "rustdesk-api-server*amd64.deb"
systemctl enable -q --now rustdesk-hbbr
systemctl enable -q --now rustdesk-hbbs
systemctl enable -q --now rustdesk-api
motd_ssh motd_ssh
customize customize