Compare commits

..

42 Commits

Author SHA1 Message Date
MickLesk 3b45fc21ef fix(librenms): run daily.sh as librenms user with git available
Install git, initialize git metadata for tarball deployments, and execute
daily.sh via su so updates no longer fail with permission or missing git.
2026-06-22 21:39:17 +02:00
community-scripts-pr-app[bot] 6b931ef4d4 Update CHANGELOG.md (#15310)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:14:03 +00:00
community-scripts-pr-app[bot] 10d19362a2 Update CHANGELOG.md (#15309)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:13:50 +00:00
Sam Heinz 3fc187efb8 [arm64] Port scripts between warracker-zwavejsui to support arm64 (#15291)
* [arm64] Port scripts between warracker-zwavejsui to support arm64

* Update zerotier-one-install.sh
2026-06-22 21:13:32 +02:00
community-scripts-pr-app[bot] 51db1a9d7d Update CHANGELOG.md (#15308)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:13:17 +00:00
Sam Heinz bc9ceb187d add proxy headers to dispatcharr from #15143 (#15293) 2026-06-22 21:12:42 +02:00
community-scripts-pr-app[bot] 490aa20dab Update CHANGELOG.md (#15307)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:12:16 +00:00
push-app-to-main[bot] 834f2dbd29 Postiz (#15048)
* Add postiz (ct)

* Update postiz.sh

* rm: python

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2026-06-22 21:11:47 +02:00
community-scripts-pr-app[bot] 0524e7feb5 Update CHANGELOG.md (#15306)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:11:45 +00:00
galz55 c1a6dc29ee Fix-15015: check correct path for certbot (#15034)
Co-authored-by: galz55 <damianbc-github@gmail.com>
2026-06-22 21:11:14 +02:00
community-scripts-pr-app[bot] 7f363170f3 Update CHANGELOG.md (#15305)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:10:44 +00:00
hugo bf815a847b fix(romm): resolve 403 Forbidden error on nginx mod_zip installation (#15134)
* Update Nginx installation and mod_zip configuration

Replaced nginx with nginx-extras and modified Nginx mod_zip installation to use the native Debian module.

* Update source URL for build functions in romm.sh

* Update install script URL in build.func

* Update romm-install.sh for Nginx and mod_zip installation

Updated the installation script to include Nginx and libpcre2-dev, and modified the process for installing the Nginx mod_zip module.

* Install Nginx mod_zip module and create symlinks

Add installation steps for Nginx mod_zip module.

* Modify Nginx installation to use custom modules path

Updated installation script to use a custom modules directory for Nginx.

* Install Nginx mod_zip without HTTP rewrite module

Removed unnecessary HTTP rewrite module from Nginx configuration.

* Simplify Nginx mod_zip installation script

Removed redundant installation of libpcre3-dev for Nginx mod_zip.

* Update romm-install.sh

* Remove temporary files after Nginx module installation

Clean up temporary files after installing the Nginx mod_zip module.

* Update source URL in romm.sh script

* Update install script URL to community repository

* fix(romm): replace getpagespeed repo with source compilation for mod_zip

The `getpagespeed` repository now requires a paid subscription, causing the RomM installation to fail with a 403 Forbidden error. Additionally, Debian 13 (Trixie) introduced an APT conflict between `libpcre3-dev` and `libpcre2-dev`.

This commit fixes the installation by:
- Removing the proprietary `getpagespeed` repository dependency.
- Replacing `libpcre3-dev` with `libpcre2-dev` to resolve APT conflicts on Debian 13.
- Downloading the `mod_zip` tarball directly from GitHub (avoiding `git clone`).
- Downloading the exact Nginx source code matching the installed APT version.
- Compiling the dynamic module (`ngx_http_zip_module.so`) using `--with-compat`.
- Placing the compiled module in a custom directory (`/etc/nginx/custom-modules/`) to bypass Debian's default symlink quirks.
- Cleaning up compilation files in `/tmp` to keep the container footprint small.

* migrate from nginx to angie

so dont need to then install nginx from tarball just to compile the zip module

---------

Co-authored-by: Sam Heinz <54530346+asylumexp@users.noreply.github.com>
2026-06-22 21:10:14 +02:00
community-scripts-pr-app[bot] a5f21f63e8 Update CHANGELOG.md (#15304)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 19:08:36 +00:00
CanbiZ (MickLesk) 0940119aea feat(build): add pre-install storage health checks (#15226)
Warn or block container creation when target storage is above 85% or 95% full.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 21:08:09 +02:00
community-scripts-pr-app[bot] 7b3afbc609 Update CHANGELOG.md (#15303)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 18:13:56 +00:00
Chris b581ce74e7 Degoog: Fix valkey url in update; set mandatory settings password (#15300) 2026-06-22 20:13:27 +02:00
community-scripts-pr-app[bot] afd20452b5 Update CHANGELOG.md (#15296)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 13:35:47 +00:00
Sam Heinz 6545c0b731 [arm64] fix update functions to support arm64 (#15290)
oops forgot about a few update functions
2026-06-22 23:35:14 +10:00
community-scripts-pr-app[bot] 826311c0d6 Update CHANGELOG.md (#15295)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 13:32:07 +00:00
Sam Heinz 6e82dc8bce Fix type in victoriametrics (#15289) 2026-06-22 15:31:34 +02:00
community-scripts-pr-app[bot] 0783cefae2 Update CHANGELOG.md (#15287)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 11:27:41 +00:00
Sam Heinz c218deddd1 [arm64] Port scripts between thingsboard & wanderer to support arm64 (#15286) 2026-06-22 13:27:16 +02:00
community-scripts-pr-app[bot] ca6eacdd92 Update CHANGELOG.md (#15285)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-22 09:41:42 +00:00
Sam Heinz 9996ed71ba [arm64] Port scripts between snowshare & thelounge to support arm64 (#15280) 2026-06-22 11:41:14 +02:00
community-scripts-pr-app[bot] a3794d2eb6 Update CHANGELOG.md (#15279)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 21:12:21 +00:00
community-scripts-pr-app[bot] 92c22b40d7 Update CHANGELOG.md (#15278)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 21:11:54 +00:00
Sam Heinz cf2252f548 [arm64] Port scripts between qdrant & snipeit to support arm64 (#15274) 2026-06-21 23:11:47 +02:00
CanbiZ (MickLesk) 6345455031 Matomo: flatten nested deploy layout after update (#15267)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 23:11:31 +02:00
community-scripts-pr-app[bot] 73c55bed9f Update CHANGELOG.md (#15277)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 21:10:51 +00:00
community-scripts-pr-app[bot] f7210f3a66 Update CHANGELOG.md (#15276)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 21:10:32 +00:00
CanbiZ (MickLesk) 8b877f1c9f tools.func: APT install and deb822 repo reliability (#15272)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 23:10:27 +02:00
community-scripts-pr-app[bot] 6192225be7 Update CHANGELOG.md (#15275)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 21:10:13 +00:00
CanbiZ (MickLesk) 6665a5bf5d tools.func: prevent MySQL data loss and fix repo version matching (#15271)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 23:10:08 +02:00
CanbiZ (MickLesk) 53efcadfa9 tools.func: runtime hardening for API helpers and Docker/MeiliSearch (#15273)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 23:09:51 +02:00
community-scripts-pr-app[bot] 89d82d324c Update CHANGELOG.md (#15270)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 20:24:34 +00:00
CanbiZ (MickLesk) b5c31d58f4 tools.func: centralize Node.js corepack and npm handling in setup_nodejs() (#15268) 2026-06-21 22:24:10 +02:00
community-scripts-pr-app[bot] c98d2da1bd Update CHANGELOG.md (#15264)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 18:46:05 +00:00
Sam Heinz 3799d565da [arm64] Port scripts between nodered & paperlessngx to support arm64 (#15255)
* [arm64] Port scripts between nodered-paperlessngx to support arm64

* Update paperclip.sh
2026-06-21 20:45:41 +02:00
community-scripts-pr-app[bot] c0c230058b Update CHANGELOG.md (#15263)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 18:44:26 +00:00
Sam Heinz dd2d2a1696 [arm64] port papra-qbit to support arm64 (#15258)
not supported (all dont ship arm64 binaries):
proxmox-datacenter-manager
proxmox-mail-gateway
protonmail-bridge
2026-06-21 20:44:06 +02:00
community-scripts-pr-app[bot] a6db986d97 Update CHANGELOG.md (#15262)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-21 18:42:42 +00:00
Sam Heinz df187136ef [arm64] Port scripts between mediamtx-nocodb to support arm64 (#15254) 2026-06-21 20:42:17 +02:00
299 changed files with 1426 additions and 608 deletions
+54
View File
@@ -486,8 +486,62 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
</details>
## 2026-06-22
### 🆕 New Scripts
- Postiz ([#15048](https://github.com/community-scripts/ProxmoxVE/pull/15048))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- add proxy headers to dispatcharr from #15143 [@asylumexp](https://github.com/asylumexp) ([#15293](https://github.com/community-scripts/ProxmoxVE/pull/15293))
- Fix-15015: check correct path for certbot [@galz55](https://github.com/galz55) ([#15034](https://github.com/community-scripts/ProxmoxVE/pull/15034))
- fix(romm): resolve 403 Forbidden error on nginx mod_zip installation [@hug-efrei](https://github.com/hug-efrei) ([#15134](https://github.com/community-scripts/ProxmoxVE/pull/15134))
- Degoog: Fix valkey url in update; set mandatory settings password [@vhsdream](https://github.com/vhsdream) ([#15300](https://github.com/community-scripts/ProxmoxVE/pull/15300))
- [arm64] fix update functions to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15290](https://github.com/community-scripts/ProxmoxVE/pull/15290))
- Fix typo in victoriametrics [@asylumexp](https://github.com/asylumexp) ([#15289](https://github.com/community-scripts/ProxmoxVE/pull/15289))
- #### ✨ New Features
- [arm64] Port scripts between warracker-zwavejsui to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15291](https://github.com/community-scripts/ProxmoxVE/pull/15291))
- [arm64] Port scripts between thingsboard & wanderer to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15286](https://github.com/community-scripts/ProxmoxVE/pull/15286))
- [arm64] Port scripts between snowshare & thelounge to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15280](https://github.com/community-scripts/ProxmoxVE/pull/15280))
### 💾 Core
- #### ✨ New Features
- core: add pre-install storage health checks [@MickLesk](https://github.com/MickLesk) ([#15226](https://github.com/community-scripts/ProxmoxVE/pull/15226))
## 2026-06-21
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Matomo: flatten nested deploy layout after update [@MickLesk](https://github.com/MickLesk) ([#15267](https://github.com/community-scripts/ProxmoxVE/pull/15267))
- #### ✨ New Features
- [arm64] Port scripts between qdrant & snipeit to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15274](https://github.com/community-scripts/ProxmoxVE/pull/15274))
- [arm64] Port scripts between nodered & paperlessngx to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15255](https://github.com/community-scripts/ProxmoxVE/pull/15255))
- [arm64] port scripts titled between papra and qbittorrent to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15258](https://github.com/community-scripts/ProxmoxVE/pull/15258))
- [arm64] Port scripts between mediamtx-nocodb to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15254](https://github.com/community-scripts/ProxmoxVE/pull/15254))
- #### 🔧 Refactor
- tools.func: centralize Node.js corepack and npm handling in `setup_nodejs()` [@MickLesk](https://github.com/MickLesk) ([#15268](https://github.com/community-scripts/ProxmoxVE/pull/15268))
### 💾 Core
- #### 🐞 Bug Fixes
- tools.func: APT install and deb822 repo reliability [@MickLesk](https://github.com/MickLesk) ([#15272](https://github.com/community-scripts/ProxmoxVE/pull/15272))
- tools.func: prevent MySQL data loss and fix repo version matching [@MickLesk](https://github.com/MickLesk) ([#15271](https://github.com/community-scripts/ProxmoxVE/pull/15271))
- tools.func: runtime hardening for API helpers and Docker/MeiliSearch [@MickLesk](https://github.com/MickLesk) ([#15273](https://github.com/community-scripts/ProxmoxVE/pull/15273))
## 2026-06-20
### 🆕 New Scripts
+3 -3
View File
@@ -30,7 +30,7 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL "https://www.ispyconnect.com/api/Agent/DownloadLocation4?platform=Linux64&fromVersion=0" | grep -o 'https://.*\.zip')
RELEASE=$(curl -fsSL "https://www.ispyconnect.com/api/Agent/DownloadLocation4?platform=$(arch_resolve "Linux64" "LinuxARM64")&fromVersion=0" | grep -o 'https://.*\.zip')
if [[ "${RELEASE}" != "$(cat ~/.agentdvr 2>/dev/null)" ]] || [[ ! -f ~/.agentdvr ]]; then
msg_info "Stopping service"
systemctl stop AgentDVR
@@ -39,10 +39,10 @@ function update_script() {
msg_info "Updating AgentDVR"
cd /opt/agentdvr/agent
curl -fsSL "$RELEASE" -o $(basename "$RELEASE")
$STD unzip -o Agent_Linux64*.zip
$STD unzip -o Agent_$(arch_resolve "Linux64" "LinuxARM64")*.zip
chmod +x ./Agent
echo $RELEASE >~/.agentdvr
rm -rf Agent_Linux64*.zip
rm -rf Agent_$(arch_resolve "Linux64" "LinuxARM64")*.zip
msg_ok "Updated AgentDVR"
msg_info "Starting service"
+5 -2
View File
@@ -31,11 +31,14 @@ function update_script() {
fi
RELEASE_JSON=$(curl -fsSL "https://api.bitfocus.io/v1/product/companion/packages?limit=20")
PACKAGE_JSON=$(echo "$RELEASE_JSON" | jq -c '(if type == "array" then . else .packages end) | [.[] | select(.target=="linux-tgz" and (.uri | contains("linux-x64")))] | first')
PACKAGE_JSON=$(echo "$RELEASE_JSON" | jq -c \
--arg target "linux-$(arch_resolve "tgz" "arm64-tgz")" \
--arg arch "linux-$(arch_resolve "x64" "arm64")" \
'(if type == "array" then . else .packages end) | [.[] | select(.target==$target and (.uri | contains($arch)))] | first')
RELEASE=$(echo "$PACKAGE_JSON" | jq -r '.version // empty')
ASSET_URL=$(echo "$PACKAGE_JSON" | jq -r '.uri // empty')
if [[ -z "$RELEASE" || -z "$ASSET_URL" ]]; then
msg_error "Could not resolve a matching Linux x64 Companion package from the Bitfocus API."
msg_error "Could not resolve a matching Linux $(arch_resolve "x64" "arm64") Companion package from the Bitfocus API."
exit 1
fi
+3 -2
View File
@@ -30,6 +30,8 @@ function update_script() {
exit
fi
NODE_VERSION="24" NODE_MODULE="corepack" setup_nodejs
if check_for_gh_release "bookorbit" "bookorbit/bookorbit"; then
msg_info "Stopping Service"
systemctl stop bookorbit
@@ -42,7 +44,7 @@ function update_script() {
msg_info "Rebuilding Application"
cd /opt/bookorbit
PNPM_VERSION=$(jq -r '.packageManager | ltrimstr("pnpm@")' /opt/bookorbit/package.json)
$STD corepack enable
$STD corepack prepare "pnpm@${PNPM_VERSION}" --activate
$STD pnpm install --frozen-lockfile
$STD pnpm --filter client run build-only
@@ -59,7 +61,6 @@ function update_script() {
$STD uv pip install --python /opt/bookorbit-python/bin/python -r /opt/bookorbit/server/requirements/kobo-cloudscraper.txt
msg_ok "Updated Kobo Python Runtime"
msg_info "Starting Service"
systemctl start bookorbit
msg_ok "Started Service"
+1 -1
View File
@@ -37,7 +37,7 @@ function update_script() {
/opt/configarr/secrets.yml \
/opt/configarr/.env
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "configarr" "raydak-labs/configarr" "prebuild" "latest" "/opt/configarr" "configarr-linux-x64.tar.xz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "configarr" "raydak-labs/configarr" "prebuild" "latest" "/opt/configarr" "configarr-linux-$(arch_resolve "x64" "arm64").tar.xz"
restore_backup
+3 -1
View File
@@ -30,6 +30,8 @@ function update_script() {
exit
fi
NODE_VERSION="24" NODE_MODULE="corepack" setup_nodejs
if check_for_gh_release "databasus" "databasus/databasus"; then
msg_info "Stopping Databasus"
$STD systemctl stop databasus
@@ -70,7 +72,7 @@ function update_script() {
msg_info "Updating Databasus"
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
cd /opt/databasus/frontend
$STD corepack enable
$STD corepack prepare pnpm@latest --activate
$STD pnpm install --frozen-lockfile
$STD pnpm run build
+3 -1
View File
@@ -57,9 +57,11 @@ function update_script() {
restore_backup
if [[ -f /opt/degoog/.env ]]; then
grep -q "^DEGOOG_VALKEY_URL=" /opt/degoog/.env && sed -i "s|^DEGOOG_VALKEY_URL=.*|DEGOOG_VALKEY_URL=redis://valkey:6379|" /opt/degoog/.env || echo "DEGOOG_VALKEY_URL=redis://valkey:6379" >>/opt/degoog/.env
grep -q "^DEGOOG_VALKEY_URL=" /opt/degoog/.env && sed -i "s|^DEGOOG_VALKEY_URL=.*|DEGOOG_VALKEY_URL=redis://127.0.0.1:6379|" /opt/degoog/.env || echo "DEGOOG_VALKEY_URL=redis://127.0.0.1:6379" >>/opt/degoog/.env
grep -q "^DEGOOG_CACHE_MAX_ENTRIES=" /opt/degoog/.env && sed -i "s|^DEGOOG_CACHE_MAX_ENTRIES=.*|DEGOOG_CACHE_MAX_ENTRIES=1000|" /opt/degoog/.env || echo "DEGOOG_CACHE_MAX_ENTRIES=1000" >>/opt/degoog/.env
grep -q "^DEGOOG_CACHE_TTL_MS=" /opt/degoog/.env && sed -i "s|^DEGOOG_CACHE_TTL_MS=.*|DEGOOG_CACHE_TTL_MS=43200000|" /opt/degoog/.env || echo "DEGOOG_CACHE_TTL_MS=43200000" >>/opt/degoog/.env
grep -q "^# DEGOOG_SETTINGS_PASSWORDS" /opt/degoog/.env && sed -i "s|^# DEGOOG_SETTINGS_PASSWORDS=.*|DEGOOG_SETTINGS_PASSWORDS=$(openssl rand -hex 32)|" /opt/degoog/.env &&
msg_warn "Mandatory Settings Password created - check /opt/degoog/.env"
fi
msg_ok "Restored Configuration & Data"
+68 -3
View File
@@ -32,11 +32,76 @@ function update_script() {
setup_uv
NODE_VERSION="24" setup_nodejs
if [[ -f "/etc/nginx/sites-available/dispatcharr.conf" ]] && ! grep -q "real_forwarded_proto" "/etc/nginx/sites-available/dispatcharr.conf"; then
msg_info "Migrating Nginx Configuration"
cat <<EOF >"/etc/nginx/sites-available/dispatcharr.conf"
map \$http_x_forwarded_proto \$real_forwarded_proto {
"" \$scheme;
default \$http_x_forwarded_proto;
}
# Fix for nginx not allowing large files
if ! grep -q "client_max_body_size 100M;" /etc/nginx/sites-available/dispatcharr.conf; then
sed -i '/server_name _;/a \ client_max_body_size 100M;' /etc/nginx/sites-available/dispatcharr.conf
map \$http_x_forwarded_port \$real_forwarded_port {
"" \$server_port;
default \$http_x_forwarded_port;
}
server {
listen 9191;
server_name _;
client_max_body_size 100M;
# Serve static assets with correct MIME types
location /assets/ {
alias /opt/dispatcharr/frontend/dist/assets/;
expires 30d;
add_header Cache-Control "public, immutable";
# Explicitly set MIME types for webpack-built assets
types {
text/javascript js;
text/css css;
image/png png;
image/svg+xml svg svgz;
font/woff2 woff2;
font/woff woff;
font/ttf ttf;
}
}
location /static/ {
alias /opt/dispatcharr/static/;
expires 30d;
add_header Cache-Control "public, immutable";
}
location /media/ {
alias /opt/dispatcharr/media/;
}
location /ws/ {
proxy_pass http://127.0.0.1:8001;
proxy_http_version 1.1;
proxy_set_header Upgrade \$http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto \$real_forwarded_proto;
}
# All other requests proxy to uWSGI
location / {
proxy_set_header Host \$host;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto \$real_forwarded_proto;
proxy_set_header X-Forwarded-Port \$real_forwarded_port;
proxy_pass http://127.0.0.1:5656;
}
}
EOF
systemctl reload nginx
msg_ok "Migrated Nginx Configuration"
fi
ensure_dependencies vlc-bin vlc-plugin-base
+1 -1
View File
@@ -34,7 +34,7 @@ function update_script() {
systemctl stop duplicati
msg_info "Stopped Service"
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb"
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-$(arch_resolve "x64" "arm64")-gui.deb"
msg_info "Starting Service"
systemctl start duplicati
+3 -1
View File
@@ -30,6 +30,8 @@ function update_script() {
exit
fi
NODE_VERSION="24" NODE_MODULE="corepack" setup_nodejs
if check_for_gh_release "feishin" "jeffvli/feishin"; then
create_backup /opt/feishin/.env
@@ -38,7 +40,7 @@ function update_script() {
msg_info "Rebuilding Feishin Web"
cd /opt/feishin
#PNPM_VERSION=$(jq -r '.packageManager | ltrimstr("pnpm@")' /opt/feishin/package.json)
$STD corepack enable
$STD corepack prepare "pnpm@10" --activate
$STD pnpm install
$STD pnpm run build:web
+1 -1
View File
@@ -40,7 +40,7 @@ function update_script() {
msg_ok "Backed Up Data"
msg_info "Updating Garage"
curl -fsSL "https://garagehq.deuxfleurs.fr/_releases/${GITEA_RELEASE}/x86_64-unknown-linux-musl/garage" -o /usr/local/bin/garage
curl -fsSL "https://garagehq.deuxfleurs.fr/_releases/${GITEA_RELEASE}/$(arch_resolve "x86_64" "aarch64")-unknown-linux-musl/garage" -o /usr/local/bin/garage
chmod +x /usr/local/bin/garage
echo "${GITEA_RELEASE}" >~/.garage
msg_ok "Updated Garage"
+1 -1
View File
@@ -35,7 +35,7 @@ function update_script() {
msg_ok "Service stopped"
rm -rf /usr/local/bin/gitea
fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64"
fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-$(arch_resolve)"
chmod +x /usr/local/bin/gitea
msg_info "Starting service"
+1 -1
View File
@@ -46,7 +46,7 @@ function update_script() {
done
msg_ok "Backed up configuration"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "actions-runner" "actions/runner" "prebuild" "latest" "/opt/actions-runner" "actions-runner-linux-x64-*.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "actions-runner" "actions/runner" "prebuild" "latest" "/opt/actions-runner" "actions-runner-linux-$(arch_resolve "x64" "arm64")-*.tar.gz"
msg_info "Restoring runner configuration"
for f in .runner .credentials .credentials_rsaparams .env .path; do
+1 -1
View File
@@ -43,7 +43,7 @@ function update_script() {
systemctl stop glance
msg_ok "Stopped Service"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "glance" "glanceapp/glance" "prebuild" "latest" "/opt/glance" "glance-linux-amd64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "glance" "glanceapp/glance" "prebuild" "latest" "/opt/glance" "glance-linux-$(arch_resolve).tar.gz"
msg_info "Starting Service"
systemctl start glance
+1 -1
View File
@@ -35,7 +35,7 @@ function update_script() {
systemctl stop go2rtc
msg_ok "Stopped service"
fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_amd64"
fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_$(arch_resolve)"
msg_info "Starting service"
systemctl start go2rtc
+1 -1
View File
@@ -40,7 +40,7 @@ function update_script() {
cp -r /opt/gogs/data /opt/gogs_data_backup
msg_ok "Backed up Data"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gogs" "gogs/gogs" "prebuild" "latest" "/opt/gogs" "gogs_*_linux_amd64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gogs" "gogs/gogs" "prebuild" "latest" "/opt/gogs" "gogs_*_linux_$(arch_resolve).tar.gz"
msg_info "Restoring Data"
cp -r /opt/gogs_custom_backup/. /opt/gogs/custom
+1 -1
View File
@@ -33,7 +33,7 @@ function update_script() {
systemctl stop gokapi
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "gokapi" "Forceu/Gokapi" "prebuild" "latest" "/opt/gokapi" "*linux*amd64.zip"
fetch_and_deploy_gh_release "gokapi" "Forceu/Gokapi" "prebuild" "latest" "/opt/gokapi" "*linux*$(arch_resolve).zip"
# Migrate from pre-v2.2.4 binary name (gokapi-linux_amd64 -> gokapi)
if [[ -f /opt/gokapi/gokapi-linux_amd64 ]]; then
+2 -2
View File
@@ -33,8 +33,8 @@ function update_script() {
systemctl stop gotify
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "gotify" "gotify/server" "prebuild" "latest" "/opt/gotify" "gotify-linux-amd64.zip"
chmod +x /opt/gotify/gotify-linux-amd64
fetch_and_deploy_gh_release "gotify" "gotify/server" "prebuild" "latest" "/opt/gotify" "gotify-linux-$(arch_resolve).zip"
chmod +x /opt/gotify/gotify-linux-$(arch_resolve)
msg_info "Starting Service"
systemctl start gotify
+2 -2
View File
@@ -31,7 +31,7 @@ function update_script() {
fi
PYTHON_VERSION="3.12" setup_uv
NODE_VERSION="22" setup_nodejs
NODE_VERSION="22" NODE_MODULE="corepack" setup_nodejs
if check_for_gh_release "gramps-web-api" "gramps-project/gramps-web-api"; then
msg_info "Stopping Service"
@@ -84,7 +84,7 @@ function update_script() {
msg_info "Updating Gramps Web Frontend"
cd /opt/gramps-web/frontend
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
$STD corepack enable
$STD npm install
$STD npm run build
msg_ok "Updated Gramps Web Frontend"
+6
View File
@@ -0,0 +1,6 @@
____ __ _
/ __ \____ _____/ /_(_)___
/ /_/ / __ \/ ___/ __/ /_ /
/ ____/ /_/ (__ ) /_/ / / /_
/_/ \____/____/\__/_/ /___/
+1 -1
View File
@@ -36,7 +36,7 @@ function update_script() {
systemctl stop hev-socks5-server
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "hev-socks5-server" "heiher/hev-socks5-server" "singlefile" "latest" "/opt" "hev-socks5-server-linux-x86_64"
fetch_and_deploy_gh_release "hev-socks5-server" "heiher/hev-socks5-server" "singlefile" "latest" "/opt" "hev-socks5-server-linux-$(arch_resolve "x86_64" "arm64")"
msg_info "Starting Service"
systemctl start hev-socks5-server
+1 -1
View File
@@ -62,7 +62,7 @@ EOF
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
setup_nodejs
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr" "prebuild" "latest" "/opt/homarr" "build-debian-amd64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr" "prebuild" "latest" "/opt/homarr" "build-debian-$(arch_resolve).tar.gz"
msg_info "Updating Homarr"
cp /opt/homarr/redis.conf /etc/redis/redis.conf
+1 -1
View File
@@ -71,7 +71,7 @@ function update_script() {
if [ "$UPD" == "4" ]; then
msg_info "Installing FileBrowser"
RELEASE=$(curl -fsSL https://api.github.com/repos/filebrowser/filebrowser/releases/latest | grep -o '"tag_name": ".*"' | sed 's/"//g' | sed 's/tag_name: //g')
$STD curl -fsSL https://github.com/filebrowser/filebrowser/releases/download/v2.23.0/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin
$STD curl -fsSL https://github.com/filebrowser/filebrowser/releases/download/v2.23.0/linux-$(arch_resolve)-filebrowser.tar.gz | tar -xzv -C /usr/local/bin
$STD filebrowser config init -a '0.0.0.0'
$STD filebrowser config set -a '0.0.0.0'
$STD filebrowser users add admin community-scripts.org --perm.admin
+1 -1
View File
@@ -39,7 +39,7 @@ function update_script() {
systemctl stop homebox
msg_ok "Stopped Service"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homebox" "sysadminsmedia/homebox" "prebuild" "latest" "/opt/homebox" "homebox_Linux_x86_64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homebox" "sysadminsmedia/homebox" "prebuild" "latest" "/opt/homebox" "homebox_Linux_$(arch_resolve "x86_64" "arm64").tar.gz"
chmod +x /opt/homebox/homebox
[ -f /opt/.env ] && mv /opt/.env /opt/homebox/.env
[ -d /opt/.data ] && mv /opt/.data /opt/homebox/.data
+1 -1
View File
@@ -40,7 +40,7 @@ function update_script() {
cp /opt/hoodik/.env /opt/hoodik.env.bak
msg_ok "Backed up Configuration"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "hoodik" "hudikhq/hoodik" "prebuild" "latest" "/opt/hoodik" "*x86_64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "hoodik" "hudikhq/hoodik" "prebuild" "latest" "/opt/hoodik" "*$(arch_resolve "x86_64" "arm64").tar.gz"
msg_info "Restoring Configuration"
cp /opt/hoodik.env.bak /opt/hoodik/.env
+1 -1
View File
@@ -39,7 +39,7 @@ function update_script() {
cp /opt/igotify/.env /opt/igotify.env.bak
msg_ok "Backed up Configuration"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "igotify" "androidseb25/iGotify-Notification-Assistent" "prebuild" "latest" "/opt/igotify" "iGotify-Notification-Service-amd64-v*.zip"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "igotify" "androidseb25/iGotify-Notification-Assistent" "prebuild" "latest" "/opt/igotify" "iGotify-Notification-Service-$(arch_resolve)-v*.zip"
msg_info "Restoring Configuration"
cp /opt/igotify.env.bak /opt/igotify/.env
+4 -5
View File
@@ -67,7 +67,7 @@ EOF
if [[ ! -f /etc/apt/sources.list.d/mise.list ]]; then
msg_info "Installing Mise"
curl -fSs https://mise.jdx.dev/gpg-key.pub | tee /etc/apt/keyrings/mise-archive-keyring.pub 1>/dev/null
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.pub arch=amd64] https://mise.jdx.dev/deb stable main" >/etc/apt/sources.list.d/mise.list
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.pub arch=$(arch_resolve)] https://mise.jdx.dev/deb stable main" >/etc/apt/sources.list.d/mise.list
ensure_dependencies mise
msg_ok "Installed Mise"
fi
@@ -127,7 +127,7 @@ EOF
VCHORD_RELEASE="0.5.3"
[[ -f ~/.vchord_version ]] && mv ~/.vchord_version ~/.vectorchord
if check_for_gh_release "VectorChord" "tensorchord/VectorChord" "${VCHORD_RELEASE}" "updated together with Immich after testing"; then
fetch_and_deploy_gh_release "VectorChord" "tensorchord/VectorChord" "binary" "${VCHORD_RELEASE}" "/tmp" "postgresql-16-vchord_*_amd64.deb"
fetch_and_deploy_gh_release "VectorChord" "tensorchord/VectorChord" "binary" "${VCHORD_RELEASE}" "/tmp" "postgresql-16-vchord_*_$(arch_resolve).deb"
systemctl restart postgresql
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vector UPDATE;"
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
@@ -168,13 +168,12 @@ EOF
setup_uv
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "Immich" "immich-app/immich" "tarball" "${RELEASE}" "$SRC_DIR"
PNPM_VERSION="$(jq -r '.packageManager | split("@")[1] | split("+")[0]' ${SRC_DIR}/package.json)"
NODE_VERSION="24" NODE_MODULE="pnpm@${PNPM_VERSION}" setup_nodejs
NODE_VERSION="24" NODE_MODULE="corepack,pnpm@${PNPM_VERSION}" setup_nodejs
msg_info "Updating Immich web and microservices"
cd "$SRC_DIR"/server
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
export CI=1
corepack enable
# server build
export SHARP_IGNORE_GLOBAL_LIBVIPS=true
@@ -241,7 +240,7 @@ EOF
$STD sudo --preserve-env=VIRTUAL_ENV,UV_HTTP_TIMEOUT -nu immich uv sync --extra openvino --no-dev --active --link-mode copy -n -p "${ML_PYTHON}" --managed-python && break
[[ $attempt -lt 3 ]] && msg_warn "uv sync attempt $attempt failed, retrying..." && sleep 10
done
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.13/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-313-x86_64-linux-gnu.so"
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.13/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-313-$(arch_resolve "x86_64" "aarch64")-linux-gnu.so"
msg_ok "Updated Intel OpenVINO machine-learning"
else
ML_PYTHON="python3.11"
+1 -1
View File
@@ -45,7 +45,7 @@ function update_script() {
cd /tmp/immichframe
$STD dotnet publish ImmichFrame.WebApi/ImmichFrame.WebApi.csproj \
--configuration Release \
--runtime linux-x64 \
--runtime "$(arch_resolve "linux-x64" "linux-arm64")" \
--self-contained false \
--output /opt/immichframe
+1 -1
View File
@@ -53,7 +53,7 @@ function update_script() {
cd /opt/invoiceshelf
$STD composer install --no-dev --optimize-autoloader
if command -v corepack >/dev/null 2>&1; then
$STD corepack enable
$STD corepack yarn install
$STD corepack yarn build
else
+2 -2
View File
@@ -36,9 +36,9 @@ function update_script() {
systemctl stop isponsorblocktv
msg_ok "Stopped Service"
ISBTV_BINARY="iSponsorBlockTV-x86_64-linux-v1"
ISBTV_BINARY="iSponsorBlockTV-$(arch_resolve "x86_64-linux-v1" "aarch64-linux")"
if grep -q ' avx ' /proc/cpuinfo 2>/dev/null && grep -q ' avx2 ' /proc/cpuinfo 2>/dev/null && grep -q ' movbe ' /proc/cpuinfo 2>/dev/null; then
ISBTV_BINARY="iSponsorBlockTV-x86_64-linux"
ISBTV_BINARY="iSponsorBlockTV-$(arch_resolve "x86_64" "aarch64")-linux"
fi
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "isponsorblocktv" "dmunozv04/iSponsorBlockTV" "singlefile" "latest" "/opt/isponsorblocktv" "${ISBTV_BINARY}"
+1 -1
View File
@@ -41,7 +41,7 @@ EOF
systemctl stop jackett
msg_ok "Stopped Service"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.Linux$(arch_resolve "AMDx64" "ARM64").tar.gz"
msg_info "Starting Service"
systemctl start jackett
+2 -2
View File
@@ -30,7 +30,7 @@ function update_script() {
exit
fi
if ! grep -qEi 'ubuntu' /etc/os-release; then
if ! grep -qEi 'ubuntu' /etc/os-release && [[ "$(arch_resolve)" == "amd64" ]]; then
msg_info "Updating Intel Dependencies"
rm -f ~/.intel-* || true
@@ -57,7 +57,7 @@ function update_script() {
msg_info "Updating Jellyfin"
ensure_dependencies libjemalloc2
if [[ ! -f /usr/lib/libjemalloc.so ]]; then
ln -sf /usr/lib/x86_64-linux-gnu/libjemalloc.so.2 /usr/lib/libjemalloc.so
ln -sf "/usr/lib/$(arch_resolve "x86_64-linux-gnu" "aarch64-linux-gnu")/libjemalloc.so.2" /usr/lib/libjemalloc.so
fi
$STD apt -y upgrade
$STD apt -y --with-new-pkgs upgrade jellyfin jellyfin-server jellyfin-ffmpeg7
+2 -2
View File
@@ -89,11 +89,11 @@ EOF
fi
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE#v}/" /etc/karakeep/karakeep.env
MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)"
NODE_VERSION="24" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs
NODE_VERSION="24" NODE_MODULE="corepack,pnpm@${MODULE_VERSION}" setup_nodejs
setup_meilisearch
msg_info "Updating Karakeep"
corepack enable
export PUPPETEER_SKIP_DOWNLOAD="true"
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true"
export NEXT_TELEMETRY_DISABLED=1
+1 -1
View File
@@ -34,7 +34,7 @@ function update_script() {
systemctl stop kavita
msg_ok "Service Stopped"
fetch_and_deploy_gh_release "kavita" "Kareadita/Kavita" "prebuild" "latest" "/opt/Kavita" "kavita-linux-x64.tar.gz"
fetch_and_deploy_gh_release "kavita" "Kareadita/Kavita" "prebuild" "latest" "/opt/Kavita" "kavita-linux-$(arch_resolve "x64" "arm64").tar.gz"
chmod +x /opt/Kavita/Kavita && chown root:root /opt/Kavita/Kavita
msg_info "Starting Service"
+14 -3
View File
@@ -29,10 +29,21 @@ function update_script() {
exit
fi
setup_mariadb
ensure_dependencies git
if [[ ! -d /opt/librenms/.git ]]; then
msg_info "Initializing LibreNMS git metadata"
LIBRENMS_VERSION=$(cat ~/.librenms 2>/dev/null)
cd /opt/librenms
git init -q
git remote add origin https://github.com/librenms/librenms.git
git fetch --depth 1 origin "refs/tags/v${LIBRENMS_VERSION}" 2>/dev/null ||
git fetch --depth 1 origin "refs/tags/${LIBRENMS_VERSION}" 2>/dev/null || true
git checkout -qf FETCH_HEAD 2>/dev/null || true
chown -R librenms:librenms .git
msg_ok "Initialized LibreNMS git metadata"
fi
msg_info "Updating LibreNMS"
su librenms
cd /opt/librenms
./daily.sh
$STD su - librenms -s /bin/bash -c 'cd /opt/librenms && ./daily.sh'
msg_ok "Updated LibreNMS"
exit
}
+2 -2
View File
@@ -28,7 +28,7 @@ function update_script() {
exit
fi
if check_for_gh_release "linkwarden" "linkwarden/linkwarden"; then
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
NODE_VERSION="22" NODE_MODULE="corepack,yarn@latest" setup_nodejs
msg_info "Stopping Service"
systemctl stop linkwarden
msg_ok "Stopped Service"
@@ -54,7 +54,7 @@ function update_script() {
fi
fi
if command -v corepack >/dev/null 2>&1; then
$STD corepack enable
$STD corepack prepare "yarn@${yarn_ver}" --activate || true
fi
$STD yarn
+1 -3
View File
@@ -29,7 +29,7 @@ function update_script() {
exit
fi
NODE_VERSION="24" NODE_MODULE="yarn" setup_nodejs
NODE_VERSION="24" NODE_MODULE="corepack,yarn" setup_nodejs
ensure_dependencies f3d
if check_for_gh_release "manyfold" "manyfold3d/manyfold"; then
@@ -65,8 +65,6 @@ function update_script() {
msg_ok "Restored Data"
msg_info "Installing Manyfold"
$STD npm install --global corepack
$STD corepack enable yarn
sudo -u manyfold bash -c '
source /opt/manyfold/.env
+19
View File
@@ -43,6 +43,16 @@ function update_script() {
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "matomo" "matomo-org/matomo" "prebuild" "latest" "/opt/matomo" "matomo-*.zip"
msg_info "Setting up Matomo"
if [[ -d /opt/matomo/matomo ]]; then
rm -rf /opt/matomo/tmp "/opt/matomo/How to install Matomo.html"
find /opt/matomo/matomo -mindepth 1 -maxdepth 1 -exec mv -t /opt/matomo {} +
rm -rf /opt/matomo/matomo
fi
mkdir -p /opt/matomo/tmp
chmod -R 755 /opt/matomo/tmp
msg_ok "Set up Matomo"
msg_info "Restoring Data"
if [[ -f /opt/matomo_config.bak ]]; then
mkdir -p /opt/matomo/config
@@ -58,7 +68,16 @@ function update_script() {
chown -R www-data:www-data /opt/matomo
msg_ok "Restored Data"
if [[ -f /opt/matomo/console ]]; then
msg_info "Running Matomo database upgrade"
cd /opt/matomo
$STD runuser -u www-data -- php console core:update --no-interaction
msg_ok "Ran Matomo database upgrade"
fi
msg_info "Starting Services"
PHP_VER=$(php -r 'echo PHP_MAJOR_VERSION . "." . PHP_MINOR_VERSION;')
systemctl restart "php${PHP_VER}-fpm"
systemctl start caddy
msg_ok "Started Services"
msg_ok "Updated successfully!"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
@@ -35,7 +35,7 @@ function update_script() {
systemctl stop mediamtx
msg_ok "Service stopped"
fetch_and_deploy_gh_release "mediamtx" "bluenviron/mediamtx" "prebuild" "latest" "/opt/mediamtx" "mediamtx*linux_amd64.tar.gz"
fetch_and_deploy_gh_release "mediamtx" "bluenviron/mediamtx" "prebuild" "latest" "/opt/mediamtx" "mediamtx*linux_$(arch_resolve).tar.gz"
msg_info "Starting service"
systemctl start mediamtx
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -33,7 +33,7 @@ function update_script() {
systemctl stop memos
msg_ok "Service stopped"
fetch_and_deploy_gh_release "memos" "usememos/memos" "prebuild" "latest" "/opt/memos" "memos*linux_amd64.tar.gz"
fetch_and_deploy_gh_release "memos" "usememos/memos" "prebuild" "latest" "/opt/memos" "memos*linux_$(arch_resolve).tar.gz"
msg_info "Starting service"
systemctl start memos
+2 -2
View File
@@ -41,7 +41,7 @@ function update_script() {
fi
fi
NODE_VERSION="24" NODE_MODULE="pnpm" setup_nodejs
NODE_VERSION="24" NODE_MODULE="corepack,pnpm" setup_nodejs
if check_for_gh_release "metube" "alexta69/metube"; then
msg_info "Stopping Service"
@@ -60,7 +60,7 @@ function update_script() {
msg_info "Building Frontend"
cd /opt/metube/ui
if command -v corepack >/dev/null 2>&1; then
$STD corepack enable
$STD corepack prepare pnpm --activate || true
fi
echo 'onlyBuiltDependencies=*' >> .npmrc
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-4096}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-12}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_tun="${var_tun:-yes}"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -8,11 +8,11 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="Scanopy"
var_tags="${var_tags:-analytics}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -13,7 +13,7 @@ var_ram="${var_ram:-3072}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -13,7 +13,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-5}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -39,7 +39,7 @@ function update_script() {
cp /usr/local/etc/nginx-ui/app.ini /tmp/nginx-ui-app.ini.bak
msg_ok "Backed up Configuration"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "nginx-ui" "0xJacky/nginx-ui" "prebuild" "latest" "/opt/nginx-ui" "nginx-ui-linux-64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "nginx-ui" "0xJacky/nginx-ui" "prebuild" "latest" "/opt/nginx-ui" "nginx-ui-linux-$(arch_resolve "64" "arm64-v8a").tar.gz"
msg_info "Updating Binary"
cp /opt/nginx-ui/nginx-ui /usr/local/bin/nginx-ui
+8 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -221,7 +221,13 @@ EOF
msg_ok "Initialized Backend"
msg_info "Starting Services"
CERTBOT_VER=$(/opt/certbot/bin/certbot --version 2>&1 | awk '{print $NF}')
if [ -f /opt/certbot/bin/certbot ]; then
CERTBOT_VER=$(/opt/certbot/bin/certbot --version 2>&1 | awk '{print $NF}' || echo "0.0.0")
elif command -v certbot &>/dev/null; then
CERTBOT_VER=$(certbot --version 2>&1 | awk '{print $NF}' || echo "0.0.0")
else
CERTBOT_VER="2.0.0"
fi
if grep -q "Environment=CERTBOT_VERSION" /lib/systemd/system/npm.service; then
sed -i "s|Environment=CERTBOT_VERSION=.*|Environment=CERTBOT_VERSION=${CERTBOT_VER}|" /lib/systemd/system/npm.service
else
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -35,7 +35,7 @@ function update_script() {
systemctl stop nocodb
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "nocodb" "nocodb/nocodb" "singlefile" "latest" "/opt/nocodb/" "Noco-linux-x64"
fetch_and_deploy_gh_release "nocodb" "nocodb/nocodb" "singlefile" "latest" "/opt/nocodb/" "Noco-linux-$(arch_resolve "x64" "arm64")"
msg_info "Starting Service"
systemctl start nocodb
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-alpine}"
var_version="${var_version:-3.23}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+5 -5
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}"
var_os="${var_os:-ubuntu}"
var_version="${var_version:-24.04}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-0}"
var_gpu="${var_gpu:-yes}"
@@ -32,7 +32,7 @@ function update_script() {
BASE_URL="https://updates.networkoptix.com/default/index.html"
RELEASE=$(curl -fsSL "$BASE_URL" | grep -oP '(?<=<b>)[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?=</b>)' | head -n 1)
DETAIL_PAGE=$(curl -fsSL "$BASE_URL#note_$RELEASE")
DOWNLOAD_URL=$(echo "$DETAIL_PAGE" | grep -oP "https://updates.networkoptix.com/default/$RELEASE/linux/nxwitness-server-[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+-linux_x64\.deb" | head -n 1)
DOWNLOAD_URL=$(echo "$DETAIL_PAGE" | grep -oP "https://updates.networkoptix.com/default/$RELEASE/$(arch_resolve "linux" "arm")/nxwitness-server-[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+-linux_$(arch_resolve "x64" "arm64")\.deb" | head -n 1)
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping Service"
systemctl stop networkoptix-root-tool networkoptix-mediaserver
@@ -40,11 +40,11 @@ function update_script() {
msg_info "Updating ${APP} to ${RELEASE}"
cd /tmp
curl -fsSL "$DOWNLOAD_URL" -o ""nxwitness-server-$RELEASE-linux_x64.deb""
curl -fsSL "$DOWNLOAD_URL" -o ""nxwitness-server-$RELEASE-linux_$(arch_resolve "x64" "arm64").deb""
export DEBIAN_FRONTEND=noninteractive
export DEBCONF_NOWARNINGS=yes
$STD dpkg -i nxwitness-server-$RELEASE-linux_x64.deb
rm -f /tmp/nxwitness-server-$RELEASE-linux_x64.deb
$STD dpkg -i nxwitness-server-$RELEASE-linux_$(arch_resolve "x64" "arm64").deb
rm -f /tmp/nxwitness-server-$RELEASE-linux_$(arch_resolve "x64" "arm64").deb
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP}"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -34,7 +34,7 @@ function update_script() {
systemctl stop oauth2-proxy
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "oauth2-proxy" "oauth2-proxy/oauth2-proxy" "prebuild" "latest" "/opt/oauth2-proxy" "oauth2-proxy*linux-amd64.tar.gz"
fetch_and_deploy_gh_release "oauth2-proxy" "oauth2-proxy/oauth2-proxy" "prebuild" "latest" "/opt/oauth2-proxy" "oauth2-proxy*linux-$(arch_resolve).tar.gz"
msg_info "Starting Service"
systemctl start oauth2-proxy
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-40}"
var_os="${var_os:-ubuntu}"
var_version="${var_version:-24.04}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
@@ -40,7 +40,7 @@ function update_script() {
OLLAMA_INSTALL_DIR="/usr/local/lib/ollama"
rm -rf "$OLLAMA_INSTALL_DIR" /usr/local/bin/ollama
mkdir -p "$OLLAMA_INSTALL_DIR"
if ! fetch_and_deploy_gh_release "ollama-com" "ollama/ollama" "prebuild" "latest" "$OLLAMA_INSTALL_DIR" "ollama-linux-amd64.tar.zst"; then
if ! fetch_and_deploy_gh_release "ollama-com" "ollama/ollama" "prebuild" "latest" "$OLLAMA_INSTALL_DIR" "ollama-linux-$(arch_resolve).tar.zst"; then
msg_error "Download or deployment failed check network connectivity and GitHub API availability"
exit 250
fi
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-3072}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -30,7 +30,7 @@ function update_script() {
fi
msg_info "Updating MongoDB"
if lscpu | grep -q 'avx'; then
if [[ "$(arch_resolve)" == "arm64" ]] || lscpu | grep -q 'avx'; then
MONGO_VERSION="8.0"
else
msg_error "No AVX detected (CPU-Flag)! We have discontinued support for this. You are welcome to try it manually with a Debian LXC, but due to the many issues with Omada, we currently only support AVX CPUs."
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -41,7 +41,7 @@ function update_script() {
msg_ok "Backup created"
rm -rf /opt/ombi
fetch_and_deploy_gh_release "ombi" "Ombi-app/Ombi" "prebuild" "latest" "/opt/ombi" "linux-x64.tar.gz"
fetch_and_deploy_gh_release "ombi" "Ombi-app/Ombi" "prebuild" "latest" "/opt/ombi" "linux-$(arch_resolve "x64" "arm64").tar.gz"
[[ -f /opt/Ombi.db ]] && mv /opt/Ombi.db /opt/ombi
[[ -f /opt/OmbiExternal.db ]] && mv /opt/OmbiExternal.db /opt/ombi
[[ -f /opt/OmbiSettings.db ]] && mv /opt/OmbiSettings.db /opt/ombi
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -43,7 +43,7 @@ function update_script() {
msg_ok "Updated packages"
rm -f /usr/bin/{OpenCloud,opencloud}
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "OpenCloud" "opencloud-eu/opencloud" "singlefile" "${RELEASE}" "/usr/bin" "opencloud-*-linux-amd64"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "OpenCloud" "opencloud-eu/opencloud" "singlefile" "${RELEASE}" "/usr/bin" "opencloud-*-linux-$(arch_resolve)"
mv /usr/bin/OpenCloud /usr/bin/opencloud
if ! grep -q 'POSIX_WATCH' /etc/opencloud/opencloud.env; then
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -37,7 +37,7 @@ function update_script() {
mv /opt/opengist /opt/opengist-backup
msg_ok "Backup created"
fetch_and_deploy_gh_release "opengist" "thomiceli/opengist" "prebuild" "latest" "/opt/opengist" "opengist*linux-amd64.tar.gz"
fetch_and_deploy_gh_release "opengist" "thomiceli/opengist" "prebuild" "latest" "/opt/opengist" "opengist*linux-$(arch_resolve).tar.gz"
msg_info "Restoring Configuration"
mv /opt/opengist-backup/config.yml /opt/opengist/config.yml
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -33,7 +33,7 @@ function update_script() {
msg_info "Updating OpenObserve"
systemctl stop openobserve
RELEASE=$(get_latest_github_release "openobserve/openobserve")
tar zxf <(curl -fsSL https://downloads.openobserve.ai/releases/openobserve/v$RELEASE/openobserve-v$RELEASE-linux-amd64.tar.gz) -C /opt/openobserve
tar zxf <(curl -fsSL https://downloads.openobserve.ai/releases/openobserve/v$RELEASE/openobserve-v$RELEASE-linux-$(arch_resolve).tar.gz) -C /opt/openobserve
systemctl start openobserve
msg_ok "Updated OpenObserve"
msg_ok "Updated successfully!"
+1 -1
View File
@@ -13,7 +13,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-0}"
var_tun="${var_tun:-yes}"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-8192}"
var_disk="${var_disk:-50}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
@@ -99,7 +99,7 @@ EOF
msg_ok "Stopped Service"
rm -rf /usr/lib/ollama /usr/bin/ollama
if ! fetch_and_deploy_gh_release "ollama-com" "ollama/ollama" "prebuild" "latest" "/usr/lib/ollama" "ollama-linux-amd64.tar.zst"; then
if ! fetch_and_deploy_gh_release "ollama-com" "ollama/ollama" "prebuild" "latest" "/usr/lib/ollama" "ollama-linux-$(arch_resolve).tar.zst"; then
msg_error "Ollama download or deployment failed check network connectivity and GitHub API availability"
else
ln -sf /usr/lib/ollama/bin/ollama /usr/bin/ollama
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -34,7 +34,7 @@ function update_script() {
systemctl stop nginx
msg_ok "Stopped Services"
fetch_and_deploy_gh_release "ots" "Luzifer/ots" "prebuild" "latest" "/opt/ots" "ots_linux_amd64.tgz"
fetch_and_deploy_gh_release "ots" "Luzifer/ots" "prebuild" "latest" "/opt/ots" "ots_linux_$(arch_resolve).tgz"
msg_info "Starting Services"
systemctl start ots
+2 -2
View File
@@ -29,7 +29,7 @@ function update_script() {
exit
fi
NODE_VERSION="24" setup_nodejs
NODE_VERSION="24" NODE_MODULE="corepack" setup_nodejs
if check_for_gh_release "outline" "outline/outline"; then
msg_info "Stopping Services"
@@ -48,7 +48,7 @@ function update_script() {
export NODE_ENV=development
export NODE_OPTIONS="--max-old-space-size=3584"
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
$STD corepack enable
$STD yarn install --immutable
export NODE_ENV=production
$STD yarn build
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
@@ -34,7 +34,7 @@ function update_script() {
systemctl stop owncast
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "owncast" "owncast/owncast" "prebuild" "latest" "/opt/owncast" "owncast*linux-64bit.zip"
fetch_and_deploy_gh_release "owncast" "owncast/owncast" "prebuild" "latest" "/opt/owncast" "owncast*linux-$(arch_resolve "64bit" "arm64").zip"
msg_info "Starting Service"
systemctl start owncast
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -13,7 +13,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_tun="${var_tun:-1}"
@@ -50,7 +50,7 @@ function update_script() {
msg_ok "Created backup"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "pangolin" "fosrl/pangolin" "tarball" "$PANGOLIN_VERSION"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gerbil" "fosrl/gerbil" "singlefile" "latest" "/usr/bin" "gerbil_linux_amd64"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gerbil" "fosrl/gerbil" "singlefile" "latest" "/usr/bin" "gerbil_linux_$(arch_resolve)"
msg_info "Updating Pangolin"
cd /opt/pangolin
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-8192}"
var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -73,7 +73,7 @@ function update_script() {
msg_ok "Migration complete!"
fi
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "PatchMon" "PatchMon/PatchMon" "singlefile" "latest" "/opt/patchmon" "patchmon-server-linux-amd64"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "PatchMon" "PatchMon/PatchMon" "singlefile" "latest" "/opt/patchmon" "patchmon-server-linux-$(arch_resolve)"
mv /opt/patchmon/PatchMon /opt/patchmon/patchmon-server
msg_info "Fetching PatchMon agent binaries"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-5}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -34,7 +34,7 @@ function update_script() {
systemctl stop wings
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "wings" "pelican-dev/wings" "singlefile" "latest" "/usr/local/bin" "wings_linux_amd64"
fetch_and_deploy_gh_release "wings" "pelican-dev/wings" "singlefile" "latest" "/usr/local/bin" "wings_linux_$(arch_resolve)"
msg_info "Starting Service"
systemctl start wings
+3 -3
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-3072}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
@@ -43,9 +43,9 @@ function update_script() {
msg_ok "Added environment export"
fi
fetch_and_deploy_gh_release "photoprism" "photoprism/photoprism" "prebuild" "latest" "/opt/photoprism" "*linux-amd64.tar.gz"
fetch_and_deploy_gh_release "photoprism" "photoprism/photoprism" "prebuild" "latest" "/opt/photoprism" "*linux-$(arch_resolve).tar.gz"
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-bookworm-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-bookworm-$(arch_resolve)-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
if [[ "${LIBHEIF_URL}" != "$(cat ~/.photoprism_libheif 2>/dev/null)" ]] || [[ ! -f ~/.photoprism_libheif ]]; then
msg_info "Updating PhotoPrism LibHeif"
ensure_dependencies libvips42
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+4 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-6144}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -30,6 +30,8 @@ function update_script() {
exit 1
fi
NODE_VERSION="24" NODE_MODULE="corepack" setup_nodejs
if check_for_gh_release "plane" "makeplane/plane"; then
msg_info "Stopping Services"
systemctl stop plane-api plane-worker plane-beat plane-live plane-space
@@ -49,7 +51,7 @@ function update_script() {
cd /opt/plane
export NODE_OPTIONS="--max-old-space-size=4096"
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
$STD corepack enable pnpm
$STD pnpm install --frozen-lockfile
$STD pnpm turbo run build --filter=web --filter=admin --filter=space --filter=live
msg_ok "Rebuilt Frontend"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -71,7 +71,7 @@ function update_script() {
cp /opt/pocket-id/.env /opt/env
fi
fetch_and_deploy_gh_release "pocket-id" "pocket-id/pocket-id" "singlefile" "latest" "/opt/pocket-id/" "pocket-id-linux-amd64"
fetch_and_deploy_gh_release "pocket-id" "pocket-id/pocket-id" "singlefile" "latest" "/opt/pocket-id/" "pocket-id-linux-$(arch_resolve)"
mv /opt/env /opt/pocket-id/.env
msg_info "Starting Service"
+78
View File
@@ -0,0 +1,78 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2026 community-scripts ORG
# Author: MickLesk (CanbiZ)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/gitroomhq/postiz-app
APP="Postiz"
var_tags="${var_tags:-social-media;scheduling;automation}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-8192}"
var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
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/postiz ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "postiz" "gitroomhq/postiz-app"; then
msg_info "Stopping Services"
systemctl stop postiz-orchestrator postiz-frontend postiz-backend
msg_ok "Stopped Services"
create_backup /opt/postiz/.env \
/opt/postiz/uploads
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "postiz" "gitroomhq/postiz-app" "tarball"
msg_info "Building Application"
cd /opt/postiz
cp /opt/postiz_env.bak /opt/postiz/.env
set -a && source /opt/postiz/.env && set +a
export NODE_OPTIONS="--max-old-space-size=4096"
$STD pnpm install
$STD pnpm run build
unset NODE_OPTIONS
msg_ok "Built Application"
msg_info "Running Database Migrations"
cd /opt/postiz
$STD pnpm run prisma-db-push
msg_ok "Ran Database Migrations"
mkdir -p /opt/postiz/uploads
restore_backup
msg_info "Starting Services"
systemctl start postiz-backend postiz-frontend postiz-orchestrator
msg_ok "Started Services"
msg_ok "Updated successfully!"
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}http://${IP}${CL}"
+1 -1
View File
@@ -13,7 +13,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-7}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -33,7 +33,7 @@ function update_script() {
systemctl stop prometheus-alertmanager
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "alertmanager" "prometheus/alertmanager" "prebuild" "latest" "/usr/local/bin/" "alertmanager*linux-amd64.tar.gz"
fetch_and_deploy_gh_release "alertmanager" "prometheus/alertmanager" "prebuild" "latest" "/usr/local/bin/" "alertmanager*linux-$(arch_resolve).tar.gz"
msg_info "Starting Service"
systemctl start prometheus-alertmanager
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -38,7 +38,7 @@ function update_script() {
mv /opt/blackbox-exporter/blackbox.yml /opt
msg_ok "Backup created"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "blackbox-exporter" "prometheus/blackbox_exporter" "prebuild" "latest" "/opt/blackbox-exporter" "blackbox_exporter-*.linux-amd64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "blackbox-exporter" "prometheus/blackbox_exporter" "prebuild" "latest" "/opt/blackbox-exporter" "blackbox_exporter-*.linux-$(arch_resolve).tar.gz"
msg_info "Restoring backup"
cp -r /opt/blackbox.yml /opt/blackbox-exporter
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -33,7 +33,7 @@ function update_script() {
systemctl stop prometheus
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "prometheus" "prometheus/prometheus" "prebuild" "latest" "/usr/local/bin" "*linux-amd64.tar.gz"
fetch_and_deploy_gh_release "prometheus" "prometheus/prometheus" "prebuild" "latest" "/usr/local/bin" "*linux-$(arch_resolve).tar.gz"
rm -f /usr/local/bin/prometheus.yml
msg_info "Starting Service"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -34,7 +34,7 @@ function update_script() {
msg_ok "Stopped Service"
rm -rf /opt/Prowlarr
fetch_and_deploy_gh_release "prowlarr" "Prowlarr/Prowlarr" "prebuild" "latest" "/opt/Prowlarr" "Prowlarr.master*linux-core-x64.tar.gz"
fetch_and_deploy_gh_release "prowlarr" "Prowlarr/Prowlarr" "prebuild" "latest" "/opt/Prowlarr" "Prowlarr.master*linux-core-$(arch_resolve "x64" "arm64").tar.gz"
chmod 775 /opt/Prowlarr
msg_info "Starting Service"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+1 -1
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -35,7 +35,7 @@ function update_script() {
msg_ok "Stopped Service"
rm /usr/local/bin/wings
fetch_and_deploy_gh_release "wings" "pterodactyl/wings" "singlefile" "latest" "/usr/local/bin" "wings_linux_amd64"
fetch_and_deploy_gh_release "wings" "pterodactyl/wings" "singlefile" "latest" "/usr/local/bin" "wings_linux_$(arch_resolve)"
msg_info "Starting Service"
systemctl start wings
+2 -2
View File
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_arm64="${var_arm64:-no}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -39,7 +39,7 @@ function update_script() {
rm -f /opt/pulse/pulse
fi
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "pulse-v*-linux-amd64.tar.gz"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "pulse-v*-linux-$(arch_resolve).tar.gz"
ln -sf /opt/pulse/bin/pulse /usr/local/bin/pulse
mkdir -p /etc/pulse
chown pulse:pulse /etc/pulse

Some files were not shown because too many files have changed in this diff Show More