Compare commits

...

92 Commits

Author SHA1 Message Date
CanbiZ
6f358d7e5d Add PostGIS extension check to Reitti update_script
Automatically enable PostGIS extension on existing installations if missing.
Checks if extension is already enabled before attempting to create it.

Fixes existing Reitti installations that were created before PostGIS was
added to the initial setup (commit b6312b87d).

Users no longer need to manually run 'CREATE EXTENSION postgis;'
2026-01-05 15:15:59 +01:00
CanbiZ
e44a8e8af8 Add idempotency check for Debian 13 certbot fix
Only apply certbot-dns-multi fix if not already installed.
Checks pip list for certbot-dns-multi before installing golang deps.

Prevents unnecessary reinstallation on repeated update runs.
2026-01-05 15:00:25 +01:00
CanbiZ
b42f9fabe1 Fix NPM API health issues on Debian 13 with certbot-dns-multi
On Debian 13 Trixie, NPM shows 'API isn't healthy' after upgrade.
Install certbot-dns-multi with golang dependencies to fix this.

Changes:
- Install golang, build-essential, git on Debian 13
- Install setuptools-golang==2.9.0 in certbot venv
- Set CGO_ENABLED=1 and GO111MODULE=on for pip install
- Install certbot-dns-multi with --no-build-isolation flag
- Applied to both fresh install and update_script()

Credit: @i4mr000t and @CrazyWolf13
Source: https://v64.tech/t/nginx-proxy-manager-dnschallenge-ipv64-debian-13-fail/4177/7
Fixes: #7489 - NPM Web UI broken after Debian 13 upgrade
2026-01-05 14:59:30 +01:00
CanbiZ
259f14b8e9 Fix openresty suite mapping for Debian 13
Openresty doesn't have trixie packages yet, only bookworm.
Map trixie and sid to use bookworm packages which are compatible.

Available openresty suites: bookworm, bullseye, buster, stretch, jessie
Fixes 404 errors when installing/updating on Debian 13 Trixie
2026-01-05 14:57:40 +01:00
CanbiZ
0fb5fc5ce0 Fix Nginx Proxy Manager for Debian 13 Trixie
- Detect Debian version dynamically from /etc/os-release
- Replace hardcoded 'bookworm' with VERSION_CODENAME in openresty sources
- Fixes both install and update_script() functions
- Ensures openresty repository matches container's Debian version

Fixes: Nginx Proxy Manager update fails on Debian 13 with 404 errors
Previously: Only worked on Debian 12 Bookworm due to hardcoded suite name
2026-01-05 14:56:49 +01:00
community-scripts-pr-app[bot]
32927d903e Update versions.json (#10553)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-05 13:07:43 +01:00
community-scripts-pr-app[bot]
66808d03a8 Update CHANGELOG.md (#10550)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-05 08:44:36 +00:00
Joerg Heinemann
b59e04fa94 Upgrade evcc LXC to Debian 13 (#10548) 2026-01-05 09:44:15 +01:00
community-scripts-pr-app[bot]
cc1117db5d Update CHANGELOG.md (#10545)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-05 00:15:27 +00:00
community-scripts-pr-app[bot]
a1005795fc Update versions.json (#10544)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-05 01:15:01 +01:00
community-scripts-pr-app[bot]
4f2fb3c6cc Update CHANGELOG.md (#10542)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 22:11:53 +00:00
Rémi Bédard-Couture
cd8991875b Export IPV6_METHOD to trigger verb_ip6() function (#10538) 2026-01-04 23:11:29 +01:00
community-scripts-pr-app[bot]
c6a2548f10 Update CHANGELOG.md (#10541)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 22:09:31 +00:00
Slaviša Arežina
ad22b8ddd4 Update config_path in prowlarr.json (#10504) 2026-01-04 23:09:08 +01:00
community-scripts-pr-app[bot]
03f805e54b Update CHANGELOG.md (#10540)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 22:08:09 +00:00
Slaviša Arežina
5f67c385b8 PocketID: Update PocketID for 2.x (#10506)
* Update PocketID for 2.x

* Update env var
2026-01-04 23:07:44 +01:00
community-scripts-pr-app[bot]
eeb4c0a860 Update CHANGELOG.md (#10539)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 22:07:17 +00:00
Tobias
266a23d319 fix: reitti: nginx (#10511)
* fix: reitti: nginx

* fix: reitti: nginx
2026-01-04 23:06:56 +01:00
community-scripts-pr-app[bot]
7cafd046ca Update CHANGELOG.md (#10537)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 22:06:20 +00:00
Slaviša Arežina
41c8c4ce0b Refactor (#10518) 2026-01-04 23:05:51 +01:00
community-scripts-pr-app[bot]
a4f62116c9 Update CHANGELOG.md (#10536)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 22:04:11 +00:00
CanbiZ (MickLesk)
3cd02aac77 MagicMirror: bump to nodejs 24 (#10534) 2026-01-04 23:03:45 +01:00
community-scripts-pr-app[bot]
aebb4c3a55 Update CHANGELOG.md (#10531)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 19:51:06 +00:00
community-scripts-pr-app[bot]
a30c6fc3a9 Update CHANGELOG.md (#10530)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 19:50:57 +00:00
Slaviša Arežina
dbe2c553fe Refactor (#10517) 2026-01-04 20:50:43 +01:00
community-scripts-pr-app[bot]
195f073ea3 Update CHANGELOG.md (#10529)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 19:50:35 +00:00
Slaviša Arežina
57d43f1a94 Refactor (#10516) 2026-01-04 20:50:07 +01:00
community-scripts-pr-app[bot]
11dced98c2 Update CHANGELOG.md (#10527)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 17:33:34 +00:00
Slaviša Arežina
d025bf1cf6 Refactor (#10519) 2026-01-04 18:33:09 +01:00
community-scripts-pr-app[bot]
7cd1546135 Update versions.json (#10526)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 13:05:53 +01:00
community-scripts-pr-app[bot]
64e8aaab03 Update CHANGELOG.md (#10513)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 00:15:54 +00:00
community-scripts-pr-app[bot]
7c3e338aae Update versions.json (#10512)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-04 01:15:34 +01:00
community-scripts-pr-app[bot]
f6eab1c6a0 Update CHANGELOG.md (#10510)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 15:18:18 +00:00
Slaviša Arežina
254ea64c99 Preserve log files (#10509) 2026-01-03 16:17:53 +01:00
community-scripts-pr-app[bot]
e02023a2fc Update versions.json (#10507)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 13:05:48 +01:00
community-scripts-pr-app[bot]
3befc843c1 Update CHANGELOG.md (#10503)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 09:39:41 +00:00
community-scripts-pr-app[bot]
7a88f38789 Update CHANGELOG.md (#10502)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 09:39:33 +00:00
Slaviša Arežina
d8788bd935 Update Wireguard notes URL to the new link (#10496) 2026-01-03 10:39:16 +01:00
community-scripts-pr-app[bot]
a5f4ab4c71 Update CHANGELOG.md (#10501)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 09:39:08 +00:00
community-scripts-pr-app[bot]
de1bc809eb Update CHANGELOG.md (#10500)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 09:38:53 +00:00
AZFAR AZMAN
09899b2824 Fix ownership and permissions for InvoiceNinja setup (#10298)
Updated ownership and permissions for InvoiceNinja directories.
2026-01-03 10:38:43 +01:00
community-scripts-pr-app[bot]
1739745aca Update CHANGELOG.md (#10499)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 09:38:31 +00:00
Slaviša Arežina
450c116723 Update database credentials message format (#10497) 2026-01-03 10:38:05 +01:00
community-scripts-pr-app[bot]
e93e87b0bc Update CHANGELOG.md (#10495)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 08:54:08 +00:00
Ilya Semenov
136e3f0405 Fix headscale Caddyfile to pass non-API URLs (#10493) 2026-01-03 09:53:46 +01:00
community-scripts-pr-app[bot]
bf1b43ecf5 Update CHANGELOG.md (#10490)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 00:13:54 +00:00
community-scripts-pr-app[bot]
7d3437d4b3 Update versions.json (#10489)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-03 01:13:26 +01:00
community-scripts-pr-app[bot]
12599f359f Update CHANGELOG.md (#10487)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-02 20:21:27 +00:00
Copilot
8c0fda523e Fix Intel Level Zero package conflict on Debian 13 (#10467)
* Initial plan

* Fix Intel Level Zero package conflict on Debian 13

Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>

* Add numeric validation for VERSION_ID comparison

Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>

* Use existing get_os_info and is_debian functions

Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>
2026-01-02 21:21:06 +01:00
community-scripts-pr-app[bot]
eb9cee4fab Update versions.json (#10480)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-02 13:06:07 +01:00
community-scripts-pr-app[bot]
f464d9d4cb Update CHANGELOG.md (#10477)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-02 09:05:04 +00:00
Joel Shprentz
6faef00835 Extend guidance for changing the immich upload location for #10447 (#10475) 2026-01-02 10:04:43 +01:00
community-scripts-pr-app[bot]
df5cc68ea1 Update CHANGELOG.md (#10474)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-02 00:14:43 +00:00
community-scripts-pr-app[bot]
cd2acd93cd Update versions.json (#10473)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-02 01:14:21 +01:00
community-scripts-pr-app[bot]
b208b2a20d Update CHANGELOG.md (#10471)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-01 22:54:14 +00:00
Copilot
ca5cd83c40 Fix MariaDB runtime directory persistence on container reboot (#10468)
Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-01-01 23:53:53 +01:00
community-scripts-pr-app[bot]
12767b4ffa Update CHANGELOG.md (#10470)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-01 22:43:43 +00:00
Gabriel David Pragin
ded7da536d fix(sabnzbd): update script now migrates old service files to use venv Python (#10466)
- Separates venv creation from service file migration logic
- Always checks and fixes service file if it uses system python3
- Fixes installations that have venv but wrong service file path
- Ensures all users running update script get automatic migration
- Idempotent: safe to run multiple times

This applies the same fix from PR #10459 (Bazarr) to SABnzbd, which has
the identical bug pattern where service file migration was locked behind
a venv existence check.

Related: #7332, #10459
2026-01-01 23:43:20 +01:00
community-scripts-pr-app[bot]
e351925119 Update CHANGELOG.md (#10463)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-01 18:10:02 +00:00
Karlito83
2ccbf11741 fix #10453 broken update (#10456)
Co-authored-by: Ronny Marx <r0mx@mailbox.org>
2026-01-01 19:09:43 +01:00
Gabriel David Pragin
53a2635240 fix(bazarr): update script now migrates old service files to use venv Python (#10459)
- Separates venv creation from service file migration logic
- Always checks and fixes service file if it uses /usr/bin/python3
- Fixes installations created before October 28, 2025 that upgraded to Debian 13
- Ensures all users running update script get automatic migration
- Idempotent: safe to run multiple times

Resolves issue where Bazarr fails to start on Debian 13 with 'externally-managed-environment' error for installations created before the October 28, 2025 fix (commit 909dbc20c).

Related: #7332
2026-01-01 19:09:19 +01:00
community-scripts-pr-app[bot]
1f5191c071 Update versions.json (#10460)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-01 13:06:13 +01:00
community-scripts-pr-app[bot]
9b7cfcff73 Update CHANGELOG.md (#10455)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-01 00:17:41 +00:00
community-scripts-pr-app[bot]
b7e2706eff Update versions.json (#10454)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-01 01:17:16 +01:00
community-scripts-pr-app[bot]
2d859aba23 Update CHANGELOG.md (#10452)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-31 19:10:08 +00:00
Copilot
76f20024f3 Increase BentoPDF RAM requirement from 2GB to 4GB (#10449)
* Initial plan

* Increase BentoPDF RAM requirement from 2GB to 4GB

- Update var_ram from 2048 to 4096 in ct/bentopdf.sh
- Update ram from 2048 to 4096 in frontend/public/json/bentopdf.json
- Fixes out-of-memory crashes during installation and updates
- Build process requires more memory than previously allocated

Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>

* Bump ConvertX to Debian 13 (#10450)

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: MickLesk <47820557+MickLesk@users.noreply.github.com>
2025-12-31 20:09:43 +01:00
community-scripts-pr-app[bot]
bf35ad0d21 Update versions.json (#10443)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-31 13:05:49 +01:00
community-scripts-pr-app[bot]
8bac0e66f4 Update CHANGELOG.md (#10442)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-31 08:51:13 +00:00
Brett Lyons
72a7777328 fix(wazuh): add LXC rootcheck exclusion to prevent false positives (#10436) 2025-12-31 09:50:46 +01:00
community-scripts-pr-app[bot]
8dbc4161c7 Update CHANGELOG.md (#10441)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-31 08:46:47 +00:00
Fraser McGlinn
49f92e1cf4 fix(swizzin): Use HTTPS and add curl error handling (#10440)
- Add https:// to s5n.sh URL to ensure secure connection
- Add -f flag to fail on HTTP errors instead of piping error pages to bash
- Add -S flag to show errors even in silent mode

Without -f, if the server returns an error page (4xx/5xx), curl would
pipe that HTML content to bash, causing unexpected behavior.
2025-12-31 09:46:24 +01:00
community-scripts-pr-app[bot]
0fba391aa6 Update CHANGELOG.md (#10439)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-31 00:15:08 +00:00
community-scripts-pr-app[bot]
fd60467db9 Update versions.json (#10438)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-31 01:14:48 +01:00
community-scripts-pr-app[bot]
8ea1ec247e Update CHANGELOG.md (#10433)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 16:37:29 +00:00
iLikeToCode
08eded6e37 Unlink default nginx config (#10432)
Unlinking the nginx default config means zammad will respond on all addresses, as it should when running in a dedicated container.
2025-12-30 17:37:08 +01:00
community-scripts-pr-app[bot]
e9b22f04ab Update CHANGELOG.md (#10430)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 13:59:21 +00:00
CanbiZ (MickLesk)
eb5a1cb9f7 Remove: GoAway (#10429) 2025-12-30 14:59:00 +01:00
community-scripts-pr-app[bot]
f4ceff8d8e Update versions.json (#10426)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 13:06:15 +01:00
community-scripts-pr-app[bot]
4e988a7d60 Update CHANGELOG.md (#10424)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 07:31:42 +00:00
Slaviša Arežina
8839ad5127 Refactor (#10421) 2025-12-30 08:31:20 +01:00
community-scripts-pr-app[bot]
784e4171ce Update CHANGELOG.md (#10423)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 00:14:18 +00:00
community-scripts-pr-app[bot]
cb4ab231b9 Update versions.json (#10422)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-30 01:13:53 +01:00
community-scripts-pr-app[bot]
95cb440b2e Update CHANGELOG.md (#10420)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-29 19:40:56 +00:00
CanbiZ (MickLesk)
e4eea7a6ae syncthing: check for deb822 source (#10414) 2025-12-29 20:40:33 +01:00
CanbiZ (MickLesk)
2cc54fdbdf speedtest-tracker: add external IP URL and internet check hostname in .env (#10078) 2025-12-29 20:40:20 +01:00
community-scripts-pr-app[bot]
86069a1663 Update CHANGELOG.md (#10419)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-29 19:38:36 +00:00
CanbiZ (MickLesk)
78b4f44447 fix(pelican-panel): prevent composer superuser prompt (#10418) 2025-12-29 20:38:10 +01:00
CanbiZ
62ca1552a8 fix cleanup &>/dev/null 2025-12-29 16:10:33 +01:00
CanbiZ
eba6fd8c6d linkwarden: use npx for Playwright install command
Replaces 'yarn playwright install' with 'npx playwright install' in both update and install scripts to ensure consistent Playwright installation regardless of local yarn configuration.
2025-12-29 15:50:10 +01:00
community-scripts-pr-app[bot]
0cefe4c5c5 Update versions.json (#10410)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-29 13:07:02 +01:00
community-scripts-pr-app[bot]
57295c31ab Update CHANGELOG.md (#10408)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-29 08:35:59 +00:00
Casey Jones
5a43b901b5 add libmfx-gen1.2 for intel gpu hwaccel (#10400)
Co-authored-by: Casey Jones <jonescaseyb@gmail.com>
2025-12-29 09:35:35 +01:00
55 changed files with 690 additions and 680 deletions

View File

@@ -10,8 +10,134 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2026-01-05
### 🚀 Updated Scripts
- #### 🔧 Refactor
- Upgrade evcc LXC to Debian 13 [@heinemannj](https://github.com/heinemannj) ([#10548](https://github.com/community-scripts/ProxmoxVE/pull/10548))
## 2026-01-04
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- PocketID: Update PocketID for 2.x [@tremor021](https://github.com/tremor021) ([#10506](https://github.com/community-scripts/ProxmoxVE/pull/10506))
- fix: reitti: nginx [@CrazyWolf13](https://github.com/CrazyWolf13) ([#10511](https://github.com/community-scripts/ProxmoxVE/pull/10511))
- MagicMirror: bump to nodejs 24 [@MickLesk](https://github.com/MickLesk) ([#10534](https://github.com/community-scripts/ProxmoxVE/pull/10534))
- #### 🔧 Refactor
- Refactor: SFTPGo [@tremor021](https://github.com/tremor021) ([#10518](https://github.com/community-scripts/ProxmoxVE/pull/10518))
- Refactor: Pelican Wings [@tremor021](https://github.com/tremor021) ([#10517](https://github.com/community-scripts/ProxmoxVE/pull/10517))
- Refactor: Pelican Panel [@tremor021](https://github.com/tremor021) ([#10516](https://github.com/community-scripts/ProxmoxVE/pull/10516))
- Refactor: Audiobookshelf [@tremor021](https://github.com/tremor021) ([#10519](https://github.com/community-scripts/ProxmoxVE/pull/10519))
### 💾 Core
- #### 🐞 Bug Fixes
- Export IPV6_METHOD to trigger verb_ip6() function [@remz1337](https://github.com/remz1337) ([#10538](https://github.com/community-scripts/ProxmoxVE/pull/10538))
### 🌐 Website
- #### 📝 Script Information
- Prowlarr: Update config_path [@tremor021](https://github.com/tremor021) ([#10504](https://github.com/community-scripts/ProxmoxVE/pull/10504))
## 2026-01-03
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Fix ownership and permissions for InvoiceNinja setup [@twinzdragonz](https://github.com/twinzdragonz) ([#10298](https://github.com/community-scripts/ProxmoxVE/pull/10298))
- Fix headscale Caddyfile to pass non-API URLs [@IlyaSemenov](https://github.com/IlyaSemenov) ([#10493](https://github.com/community-scripts/ProxmoxVE/pull/10493))
### 💾 Core
- #### 🔧 Refactor
- [core]: Preserve log files [@tremor021](https://github.com/tremor021) ([#10509](https://github.com/community-scripts/ProxmoxVE/pull/10509))
### ❔ Uncategorized
- Wireguard: Update WGDashboard notes URL to the new link [@tremor021](https://github.com/tremor021) ([#10496](https://github.com/community-scripts/ProxmoxVE/pull/10496))
- InvoiceNinja: Update database credentias information [@tremor021](https://github.com/tremor021) ([#10497](https://github.com/community-scripts/ProxmoxVE/pull/10497))
## 2026-01-02
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Fix Intel Level Zero package conflict on Debian 13 [@Copilot](https://github.com/Copilot) ([#10467](https://github.com/community-scripts/ProxmoxVE/pull/10467))
### ❔ Uncategorized
- Extend guidance for changing the immich upload location for #10447 [@jshprentz](https://github.com/jshprentz) ([#10475](https://github.com/community-scripts/ProxmoxVE/pull/10475))
## 2026-01-01
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- fix(sabnzbd): update script now migrates old service files to use venv Python [@vidonnus](https://github.com/vidonnus) ([#10466](https://github.com/community-scripts/ProxmoxVE/pull/10466))
- fix(bazarr): update script now migrates old service files to use venv Python [@vidonnus](https://github.com/vidonnus) ([#10459](https://github.com/community-scripts/ProxmoxVE/pull/10459))
- fix #10453 broken sonarqube update [@Karlito83](https://github.com/Karlito83) ([#10456](https://github.com/community-scripts/ProxmoxVE/pull/10456))
### 💾 Core
- #### 🐞 Bug Fixes
- Fix MariaDB runtime directory persistence on container reboot [@Copilot](https://github.com/Copilot) ([#10468](https://github.com/community-scripts/ProxmoxVE/pull/10468))
## 2025-12-31
### 🚀 Updated Scripts
- fix(wazuh): add LXC rootcheck exclusion to prevent false positives [@brettlyons](https://github.com/brettlyons) ([#10436](https://github.com/community-scripts/ProxmoxVE/pull/10436))
- #### 🐞 Bug Fixes
- Increase BentoPDF RAM requirement from 2GB to 4GB [@Copilot](https://github.com/Copilot) ([#10449](https://github.com/community-scripts/ProxmoxVE/pull/10449))
- fix(swizzin): Use HTTPS and add curl error handling [@fmcglinn](https://github.com/fmcglinn) ([#10440](https://github.com/community-scripts/ProxmoxVE/pull/10440))
## 2025-12-30
### 🚀 Updated Scripts
- #### ✨ New Features
- Unlink default nginx config [@iLikeToCode](https://github.com/iLikeToCode) ([#10432](https://github.com/community-scripts/ProxmoxVE/pull/10432))
- #### 🔧 Refactor
- Refactor: Firefly [@tremor021](https://github.com/tremor021) ([#10421](https://github.com/community-scripts/ProxmoxVE/pull/10421))
### 🗑️ Deleted Scripts
- Remove: GoAway [@MickLesk](https://github.com/MickLesk) ([#10429](https://github.com/community-scripts/ProxmoxVE/pull/10429))
## 2025-12-29
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- syncthing: check for deb822 source [@MickLesk](https://github.com/MickLesk) ([#10414](https://github.com/community-scripts/ProxmoxVE/pull/10414))
- speedtest-tracker: add external IP URL and internet check hostname in .env [@MickLesk](https://github.com/MickLesk) ([#10078](https://github.com/community-scripts/ProxmoxVE/pull/10078))
- Pelican-panel: prevent composer superuser prompt [@MickLesk](https://github.com/MickLesk) ([#10418](https://github.com/community-scripts/ProxmoxVE/pull/10418))
### 💾 Core
- #### 🐞 Bug Fixes
- add libmfx-gen1.2 for intel gpu hwaccel [@jcnix](https://github.com/jcnix) ([#10400](https://github.com/community-scripts/ProxmoxVE/pull/10400))
## 2025-12-28
### 🆕 New Scripts

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -30,7 +30,7 @@ function update_script() {
msg_info "Updating $APP LXC"
$STD apt-get update
$STD apt-get -y upgrade
$STD apt-get upgrade -y
msg_ok "Updated $APP LXC"
msg_ok "Updated successfully!"
exit

View File

@@ -38,8 +38,13 @@ function update_script() {
msg_info "Setup Bazarr"
mkdir -p /var/lib/bazarr/
chmod 775 /opt/bazarr /var/lib/bazarr/
# Always ensure venv exists
if [[ ! -d /opt/bazarr/venv/ ]]; then
$STD uv venv /opt/bazarr/venv --python 3.12
fi
# Always check and fix service file if needed
if [[ -f /etc/systemd/system/bazarr.service ]] && grep -q "ExecStart=/usr/bin/python3" /etc/systemd/system/bazarr.service; then
sed -i "s|ExecStart=/usr/bin/python3 /opt/bazarr/bazarr.py|ExecStart=/opt/bazarr/venv/bin/python3 /opt/bazarr/bazarr.py|g" /etc/systemd/system/bazarr.service
systemctl daemon-reload
fi

View File

@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="BentoPDF"
var_tags="${var_tags:-pdf-editor}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-2048}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -73,17 +73,13 @@ function update_script() {
msg_ok "Updated Firefly"
if [[ "${IMPORTER_INSTALLED:-0}" -eq 1 ]]; then
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "dataimporter" "firefly-iii/data-importer" "prebuild" "latest" "/opt/firefly/dataimporter" "DataImporter-v*.tar.gz"
msg_info "Updating Firefly Importer"
IMPORTER_RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/data-importer/releases/latest | grep tag_name | cut -d '"' -f 4 | sed 's/v//')
rm -rf /opt/firefly/dataimporter
mkdir -p /opt/firefly/dataimporter
curl -fsSL "https://github.com/firefly-iii/data-importer/releases/download/v${IMPORTER_RELEASE}/DataImporter-v${IMPORTER_RELEASE}.tar.gz" -o "/opt/DataImporter.tar.gz"
tar -xzf /opt/DataImporter.tar.gz -C /opt/firefly/dataimporter
if [[ -f /opt/dataimporter.env ]]; then
cp /opt/dataimporter.env /opt/firefly/dataimporter/.env
fi
chown -R www-data:www-data /opt/firefly/dataimporter
rm -f /opt/DataImporter.tar.gz
msg_ok "Updated Firefly Importer"
fi
systemctl start apache2

View File

@@ -1,54 +0,0 @@
#!/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: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/pommee/goaway
APP="GoAway"
var_tags="${var_tags:-network}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
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/goaway ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "goaway" "pommee/goaway"; then
msg_info "Stopping Services"
systemctl stop goaway
msg_ok "Stopped Services"
fetch_and_deploy_gh_release "goaway" "pommee/goaway" "prebuild" "latest" "/opt/goaway" "goaway_*_linux_amd64.tar.gz"
msg_info "Starting Services"
systemctl start goaway
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}:8080${CL}"

View File

@@ -1,6 +0,0 @@
______ ___
/ ____/___ / |_ ______ ___ __
/ / __/ __ \/ /| | | /| / / __ `/ / / /
/ /_/ / /_/ / ___ | |/ |/ / /_/ / /_/ /
\____/\____/_/ |_|__/|__/\__,_/\__, /
/____/

View File

@@ -58,7 +58,7 @@ function update_script() {
fi
$STD yarn
$STD npx playwright install-deps
$STD yarn playwright install
$STD npx playwright install
mv /opt/.env /opt/linkwarden/.env
$STD yarn prisma:generate
$STD yarn web:build

View File

@@ -32,6 +32,8 @@ function update_script() {
systemctl stop magicmirror
msg_ok "Stopped Service"
NODE_VERSION="24" setup_nodejs
msg_info "Backing up data"
rm -rf /opt/magicmirror-backup
mkdir /opt/magicmirror-backup

View File

@@ -157,18 +157,39 @@ EOF
[ -f /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg ] && rm -f /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg
[ -f /etc/apt/sources.list.d/openresty.list ] && rm -f /etc/apt/sources.list.d/openresty.list
[ ! -f /etc/apt/trusted.gpg.d/openresty.gpg ] && curl -fsSL https://openresty.org/package/pubkey.gpg | gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/openresty.gpg
[ ! -f /etc/apt/sources.list.d/openresty.sources ] && cat <<'EOF' >/etc/apt/sources.list.d/openresty.sources
if [ ! -f /etc/apt/sources.list.d/openresty.sources ]; then
DEBIAN_VERSION=$(grep -E '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)
# Openresty only has bookworm, not trixie - map newer versions to bookworm
case "$DEBIAN_VERSION" in
trixie|sid) OPENRESTY_SUITE="bookworm" ;;
*) OPENRESTY_SUITE="$DEBIAN_VERSION" ;;
esac
cat <<EOF >/etc/apt/sources.list.d/openresty.sources
Types: deb
URIs: http://openresty.org/package/debian/
Suites: bookworm
Suites: ${OPENRESTY_SUITE}
Components: openresty
Signed-By: /etc/apt/trusted.gpg.d/openresty.gpg
EOF
fi
$STD apt update
$STD apt -y install openresty
if [ -d /opt/certbot ]; then
$STD /opt/certbot/bin/pip install --upgrade pip setuptools wheel
$STD /opt/certbot/bin/pip install --upgrade certbot certbot-dns-cloudflare
# Fix for Debian 13 Trixie - certbot-dns-multi needed to prevent "API isn't healthy" error
if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"13"* ]]; then
if ! /opt/certbot/bin/pip list 2>/dev/null | grep -q certbot-dns-multi; then
msg_info "Applying Debian 13 Certbot Fix"
$STD apt-get install -y golang build-essential git
$STD /opt/certbot/bin/pip install --no-cache-dir setuptools-golang==2.9.0
export CGO_ENABLED=1
export GO111MODULE=on
$STD /opt/certbot/bin/pip install --no-build-isolation --no-cache-dir certbot-dns-multi
msg_ok "Applied Debian 13 Certbot Fix"
fi
fi
fi
msg_ok "Updated Certbot"

View File

@@ -27,37 +27,31 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
setup_mariadb
CURRENT_PHP=$(php -v 2>/dev/null | awk '/^PHP/{print $2}' | cut -d. -f1,2)
setup_composer
if [[ "$CURRENT_PHP" != "8.4" ]]; then
msg_info "Migrating PHP $CURRENT_PHP to 8.4"
$STD curl -fsSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
$STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
$STD apt update
$STD apt remove -y php"${CURRENT_PHP//./}"*
$STD apt install -y \
php8.4 \
php8.4-{gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm} \
libapache2-mod-php8.4
PHP_VERSION="8.4" PHP_MODULE="mysql,sqlite3" PHP_APACHE="YES" PHP_FPM="YES" setup_php
msg_ok "Migrated PHP $CURRENT_PHP to 8.4"
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
if check_for_gh_release "pelican-panel" "pelican-dev/panel"; then
msg_info "Stopping Service"
cd /opt/pelican-panel
$STD php artisan down
msg_ok "Stopped Service"
msg_info "Updating ${APP} to v${RELEASE}"
cp -r /opt/pelican-panel/.env /opt/
SQLITE_INSTALL=$(ls /opt/pelican-panel/database/*.sqlite 1>/dev/null 2>&1 && echo "true" || echo "false")
$SQLITE_INSTALL && cp -r /opt/pelican-panel/database/*.sqlite /opt/
rm -rf * .*
curl -fsSL "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" -o $(basename "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz")
tar -xzf "panel.tar.gz"
fetch_and_deploy_gh_release "pelican-panel" "pelican-dev/panel" "prebuild" "latest" "/opt/pelican-panel" "panel.tar.gz"
msg_info "Updating Pelican Panel"
mv /opt/.env /opt/pelican-panel/
$SQLITE_INSTALL && mv /opt/*.sqlite /opt/pelican-panel/database/
$STD composer install --no-dev --optimize-autoloader --no-interaction
@@ -68,17 +62,13 @@ function update_script() {
$STD php artisan migrate --seed --force
chown -R www-data:www-data /opt/pelican-panel
chmod -R 755 /opt/pelican-panel/storage /opt/pelican-panel/bootstrap/cache/
rm -rf "/opt/pelican-panel/panel.tar.gz"
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated Pelican Panel"
msg_info "Starting Service"
$STD php artisan queue:restart
$STD php artisan up
msg_ok "Started Service"
msg_ok "Updated successfully!"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -27,25 +27,18 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
if check_for_gh_release "wings" "pelican-dev/wings"; then
msg_info "Stopping Service"
systemctl stop wings
msg_ok "Stopped Service"
msg_info "Updating ${APP} to v${RELEASE}"
rm /usr/local/bin/wings
curl -fsSL "https://github.com/pelican-dev/wings/releases/download/v${RELEASE}/wings_linux_amd64" -o "/usr/local/bin/wings"
chmod u+x /usr/local/bin/wings
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}"
fetch_and_deploy_gh_release "wings" "pelican-dev/wings" "singlefile" "latest" "/usr/local/bin" "wings_linux_amd64"
msg_info "Starting Service"
systemctl start wings
msg_ok "Started Service"
msg_ok "Updated successfully!"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -29,6 +29,12 @@ function update_script() {
exit
fi
# Mandatory as of v2.x.x
ENCRYPTION_KEY=$(openssl rand -base64 32)
if ! grep -q '^ENCRYPTION_KEY=' /opt/pocket-id/.env; then
echo "ENCRYPTION_KEY=$ENCRYPTION_KEY" >> /opt/pocket-id/.env
fi
if check_for_gh_release "pocket-id" "pocket-id/pocket-id"; then
if [ "$(printf '%s\n%s' "$(cat ~/.pocket-id 2>/dev/null || echo 0.0.0)" "1.0.0" | sort -V | head -n1)" = "$(cat ~/.pocket-id 2>/dev/null || echo 0.0.0)" ] &&
[ "$(cat ~/.pocket-id 2>/dev/null || echo 0.0.0)" != "1.0.0" ]; then

View File

@@ -28,11 +28,22 @@ function update_script() {
exit
fi
# Enable PostGIS extension if not already enabled
if systemctl is-active --quiet postgresql; then
if ! sudo -u postgres psql -d reitti -tAc "SELECT 1 FROM pg_extension WHERE extname='postgis'" 2>/dev/null | grep -q 1; then
msg_info "Enabling PostGIS extension"
sudo -u postgres psql -d reitti -c "CREATE EXTENSION IF NOT EXISTS postgis;" &>/dev/null
msg_ok "Enabled PostGIS extension"
fi
fi
if [ ! -d /var/cache/nginx/tiles ]; then
msg_info "Installing Nginx Tile Cache"
mkdir -p /var/cache/nginx/tiles
$STD apt install -y nginx
cat <<EOF >/etc/nginx/nginx.conf
user www-data;
events {
worker_connections 1024;
}
@@ -51,7 +62,8 @@ http {
}
}
EOF
chown -R www-data:www-data /var/cache/nginx/tiles
chown -R www-data:www-data /var/cache/nginx
chmod -R 750 /var/cache/nginx
systemctl restart nginx
echo "reitti.ui.tiles.cache.url=http://127.0.0.1" >> /opt/reitti/application.properties
systemctl restart reitti

View File

@@ -38,16 +38,18 @@ function update_script() {
cp -r /opt/sabnzbd /opt/sabnzbd_backup_$(date +%s)
fetch_and_deploy_gh_release "sabnzbd-org" "sabnzbd/sabnzbd" "prebuild" "latest" "/opt/sabnzbd" "SABnzbd-*-src.tar.gz"
# Always ensure venv exists
if [[ ! -d /opt/sabnzbd/venv ]]; then
msg_info "Migrating SABnzbd to uv virtual environment"
$STD uv venv /opt/sabnzbd/venv
msg_ok "Created uv venv at /opt/sabnzbd/venv"
fi
if grep -q "ExecStart=python3 SABnzbd.py" /etc/systemd/system/sabnzbd.service; then
sed -i "s|ExecStart=python3 SABnzbd.py|ExecStart=/opt/sabnzbd/venv/bin/python SABnzbd.py|" /etc/systemd/system/sabnzbd.service
systemctl daemon-reload
msg_ok "Updated SABnzbd service to use uv venv"
fi
# Always check and fix service file if needed
if [[ -f /etc/systemd/system/sabnzbd.service ]] && grep -q "ExecStart=python3 SABnzbd.py" /etc/systemd/system/sabnzbd.service; then
sed -i "s|ExecStart=python3 SABnzbd.py|ExecStart=/opt/sabnzbd/venv/bin/python SABnzbd.py|" /etc/systemd/system/sabnzbd.service
systemctl daemon-reload
msg_ok "Updated SABnzbd service to use uv venv"
fi
$STD uv pip install --upgrade pip --python=/opt/sabnzbd/venv/bin/python
$STD uv pip install -r /opt/sabnzbd/requirements.txt --python=/opt/sabnzbd/venv/bin/python

View File

@@ -27,10 +27,11 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP LXC"
msg_info "Updating SFTPGo"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated $APP LXC"
$STD apt upgrade -y
msg_ok "Updated SFTPGo"
msg_ok "Updated successfully!"
exit
}

View File

@@ -43,7 +43,7 @@ function update_script() {
RELEASE=$(get_latest_github_release "SonarSource/sonarqube")
curl -fsSL "https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-${RELEASE}.zip" -o $temp_file
unzip -q "$temp_file" -d /opt
mv /opt/sonarqube-* /opt/sonarqube
mv /opt/sonarqube-${RELEASE} /opt/sonarqube
msg_ok "Updated SonarQube"
msg_info "Restoring Backup"

View File

@@ -33,6 +33,7 @@ function update_script() {
PHP_VERSION="8.4" PHP_FPM="YES" PHP_MODULE="common,sqlite3,redis" setup_php
setup_composer
NODE_VERSION="22" setup_nodejs
setcap cap_net_raw+ep /bin/ping
msg_info "Stopping Service"
systemctl stop speedtest-tracker

View File

@@ -23,7 +23,7 @@ function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/apt/sources.list.d/syncthing.list ]]; then
if [[ ! -f /etc/apt/sources.list.d/syncthing.list && ! -f /etc/apt/sources.list.d/syncthing.sources ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi

View File

@@ -23,7 +23,7 @@
"ram": 2048,
"hdd": 5,
"os": "debian",
"version": "12"
"version": "13"
}
}
],

View File

@@ -20,7 +20,7 @@
"script": "ct/bentopdf.sh",
"resources": {
"cpu": 1,
"ram": 2048,
"ram": 4096,
"hdd": 4,
"os": "debian",
"version": "13"

View File

@@ -23,7 +23,7 @@
"ram": 4096,
"hdd": 20,
"os": "Debian",
"version": "12"
"version": "13"
}
}
],

View File

@@ -23,7 +23,7 @@
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "12"
"version": "13"
}
}
],

View File

@@ -23,7 +23,7 @@
"ram": 1024,
"hdd": 2,
"os": "debian",
"version": "12"
"version": "13"
}
}
],

View File

@@ -1,40 +0,0 @@
{
"name": "GoAway",
"slug": "goaway",
"categories": [
5
],
"date_created": "2025-09-25",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8080,
"documentation": "https://github.com/pommee/goaway#configuration-file",
"config_path": "/opt/goaway/config/settings.yaml",
"website": "https://github.com/pommee/goaway",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/goaway.webp",
"description": "Lightweight DNS sinkhole written in Go with a modern dashboard client. Very good looking new alternative to Pi-Hole and Adguard Home.",
"install_methods": [
{
"type": "default",
"script": "ct/goaway.sh",
"resources": {
"cpu": 1,
"ram": 1024,
"hdd": 4,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Type `cat ~/goaway.creds` to see login credentials.",
"type": "info"
}
]
}

View File

@@ -45,7 +45,7 @@
"type": "info"
},
{
"text": "To change upload location, edit 'IMMICH_MEDIA_LOCATION' in `/opt/immich/.env`, and create the symlink 'upload' in /opt/immich/app & /opt/immich/app/machine-learning to your new upload location",
"text": "To change upload location, edit 'IMMICH_MEDIA_LOCATION' in `/opt/immich/.env`, retarget the symlink 'upload' in /opt/immich/app and /opt/immich/app/machine-learning to your new upload location, copy the default upload location `/opt/immich/upload` and its contents to the new upload location, confirm that the new upload location and its contents are owned by `immich:immich`, and restart the Immich server. See `https://github.com/community-scripts/ProxmoxVE/discussions/5075` for more information.",
"type": "info"
},
{

View File

@@ -37,7 +37,7 @@
"type": "info"
},
{
"text": "Database credentials are stored in ~/invoiceninja.creds",
"text": "Database credentials are stored in `~/invoiceninja.creds`. Use them in the above initial configuration step.",
"type": "info"
},
{

View File

@@ -12,7 +12,7 @@
"documentation": "https://wiki.servarr.com/prowlarr",
"website": "https://github.com/Prowlarr/Prowlarr",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/prowlarr.webp",
"config_path": "",
"config_path": "/var/lib/prowlarr/",
"description": "Prowlarr is a software tool designed to integrate with various PVR (Personal Video Recorder) apps. It is built on a popular *arr .net/ReactJS base stack and serves as an indexer manager and proxy. Prowlarr makes it easy to manage and organize TV show and movie collections, by integrating with popular PVR apps and automating the downloading and organizing of media files. The software provides a web-based interface for managing and organizing TV shows and movies, making it easy to search and find content. Prowlarr also supports metadata management, including show and movie information, making it easy for users to keep their media collection organized and up-to-date. The software is designed to be easy to use and provides a simple and intuitive interface for managing and organizing media collections, making it a valuable tool for media enthusiasts who want to keep their collection organized and up-to-date. With Prowlarr, users can enjoy their media collection from anywhere, making it a powerful tool for managing and sharing media files.",
"install_methods": [
{

View File

@@ -1,63 +1,48 @@
[
{
"name": "chrisbenincasa/tunarr",
"version": "v1.0.11",
"date": "2025-12-28T23:39:20Z"
"name": "theonedev/onedev",
"version": "v14.0.2",
"date": "2026-01-05T10:59:42Z"
},
{
"name": "Lidarr/Lidarr",
"version": "v3.1.0.4875",
"date": "2025-11-16T22:40:18Z"
"name": "mattermost/mattermost",
"version": "v11.1.2",
"date": "2025-12-17T09:26:24Z"
},
{
"name": "Radarr/Radarr",
"version": "v6.0.4.10291",
"date": "2025-11-16T22:39:01Z"
},
{
"name": "scanopy/scanopy",
"version": "v0.12.7",
"date": "2025-12-28T16:51:10Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.15.6",
"date": "2025-12-28T16:38:35Z"
},
{
"name": "release-argus/Argus",
"version": "0.29.0",
"date": "2025-12-28T14:32:36Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.31.0",
"date": "2025-12-28T11:41:41Z"
},
{
"name": "pommee/goaway",
"version": "v0.63.3",
"date": "2025-12-28T10:17:20Z"
},
{
"name": "linkwarden/linkwarden",
"version": "v2.13.5",
"date": "2025-12-28T09:15:51Z"
},
{
"name": "kimai/kimai",
"version": "2.45.0",
"date": "2025-12-28T06:32:47Z"
"name": "maxdorninger/MediaManager",
"version": "v1.12.1",
"date": "2026-01-05T09:06:22Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.4.14",
"date": "2025-12-16T05:42:34Z"
"version": "develop-20251228",
"date": "2025-12-28T05:59:54Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.4",
"date": "2026-01-04T22:41:00Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.590",
"date": "2025-12-28T05:55:38Z"
"version": "v0.24.726",
"date": "2026-01-05T06:02:39Z"
},
{
"name": "jason5ng32/MyIP",
"version": "v5.2.0",
"date": "2026-01-05T05:56:57Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.16.5",
"date": "2026-01-05T02:26:15Z"
},
{
"name": "louislam/uptime-kuma",
"version": "2.0.2",
"date": "2025-10-22T17:03:54Z"
},
{
"name": "hyperion-project/hyperion.ng",
@@ -71,13 +56,313 @@
},
{
"name": "jeedom/core",
"version": "4.5.1",
"date": "2025-12-28T00:27:09Z"
"version": "4.5.2",
"date": "2026-01-05T00:27:03Z"
},
{
"name": "Part-DB/Part-DB-server",
"version": "v2.4.0",
"date": "2026-01-04T21:10:51Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v2.1.0",
"date": "2026-01-04T20:32:58Z"
},
{
"name": "rcourtman/Pulse",
"version": "v5.0.11",
"date": "2026-01-04T19:48:21Z"
},
{
"name": "scanopy/scanopy",
"version": "v0.13.0",
"date": "2026-01-04T19:42:58Z"
},
{
"name": "actualbudget/actual",
"version": "v26.1.0",
"date": "2026-01-04T17:07:30Z"
},
{
"name": "dedicatedcode/reitti",
"version": "v3.1.0",
"date": "2026-01-04T13:05:59Z"
},
{
"name": "fccview/jotty",
"version": "1.15.2",
"date": "2026-01-04T13:04:02Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v1.0.13",
"date": "2026-01-04T12:59:19Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.3.1-rc1",
"date": "2026-01-04T04:38:01Z"
},
{
"name": "Dispatcharr/Dispatcharr",
"version": "v0.16.0",
"date": "2026-01-04T01:18:19Z"
},
{
"name": "nickheyer/discopanel",
"version": "v1.0.19",
"date": "2026-01-03T23:21:15Z"
},
{
"name": "ghostfolio/ghostfolio",
"version": "2.228.0",
"date": "2026-01-03T16:38:36Z"
},
{
"name": "ZoeyVid/NPMplus",
"version": "2025-05-07-r1",
"date": "2025-05-07T12:18:42Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.49.1",
"date": "2026-01-03T13:13:12Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "create-fumadocs-app@16.0.36",
"date": "2026-01-03T11:13:01Z"
},
{
"name": "requarks/wiki",
"version": "v2.5.309",
"date": "2026-01-03T08:32:10Z"
},
{
"name": "TwiN/gatus",
"version": "v5.34.0",
"date": "2026-01-03T03:12:12Z"
},
{
"name": "outline/outline",
"version": "v1.2.0-2",
"date": "2026-01-03T02:42:11Z"
},
{
"name": "9001/copyparty",
"version": "v1.20.0",
"date": "2026-01-02T23:40:23Z"
},
{
"name": "karakeep-app/karakeep",
"version": "android/v1.8.5-0",
"date": "2026-01-02T22:35:27Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.4.6",
"date": "2026-01-02T22:20:47Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.7",
"date": "2025-12-01T08:14:11Z"
},
{
"name": "mealie-recipes/mealie",
"version": "v3.9.2",
"date": "2026-01-02T19:40:09Z"
},
{
"name": "Dokploy/dokploy",
"version": "v0.26.3",
"date": "2026-01-02T17:06:30Z"
},
{
"name": "alam00000/bentopdf",
"version": "v1.15.4",
"date": "2026-01-02T16:20:33Z"
},
{
"name": "metabase/metabase",
"version": "v0.57.x",
"date": "2026-01-02T15:44:38Z"
},
{
"name": "livebook-dev/livebook",
"version": "v0.18.2",
"date": "2025-12-15T19:17:42Z"
},
{
"name": "gotify/server",
"version": "v2.8.0",
"date": "2026-01-02T11:56:16Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@2.1.5",
"date": "2026-01-02T09:10:15Z"
},
{
"name": "alexta69/metube",
"version": "2026.01.02",
"date": "2026-01-02T06:27:23Z"
},
{
"name": "MagicMirrorOrg/MagicMirror",
"version": "v2.34.0",
"date": "2026-01-01T14:48:28Z"
},
{
"name": "Koenkk/zigbee2mqtt",
"version": "2.7.2",
"date": "2026-01-01T13:43:47Z"
},
{
"name": "esphome/esphome",
"version": "2025.12.4",
"date": "2025-12-31T22:42:42Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v1.1.5-beta",
"date": "2025-12-31T18:46:48Z"
},
{
"name": "wavelog/wavelog",
"version": "2.2.2",
"date": "2025-12-31T16:53:34Z"
},
{
"name": "home-assistant/core",
"version": "2025.12.5",
"date": "2025-12-29T12:55:22Z"
},
{
"name": "emqx/emqx",
"version": "e5.8.9",
"date": "2025-12-31T15:06:41Z"
},
{
"name": "evcc-io/evcc",
"version": "0.300.2",
"date": "2025-12-31T15:05:51Z"
},
{
"name": "YunoHost/yunohost",
"version": "debian/12.1.38",
"date": "2025-12-31T13:38:03Z"
},
{
"name": "pommee/goaway",
"version": "v0.63.4",
"date": "2025-12-31T12:40:07Z"
},
{
"name": "coollabsio/coolify",
"version": "v4.0.0-beta.460",
"date": "2025-12-31T10:58:42Z"
},
{
"name": "Athou/commafeed",
"version": "5.12.1",
"date": "2025-12-31T08:23:37Z"
},
{
"name": "comfyanonymous/ComfyUI",
"version": "v0.7.0",
"date": "2025-12-31T07:50:53Z"
},
{
"name": "wazuh/wazuh",
"version": "v5.0.0-alpha0",
"date": "2025-12-31T01:18:10Z"
},
{
"name": "meilisearch/meilisearch",
"version": "prototype-v1.31.0-support-protocol-negociation-http.0",
"date": "2025-12-30T17:56:00Z"
},
{
"name": "BookStackApp/BookStack",
"version": "v25.12.1",
"date": "2025-12-30T17:25:57Z"
},
{
"name": "dani-garcia/vaultwarden",
"version": "1.35.0",
"date": "2025-12-27T23:07:12Z"
"version": "1.35.1",
"date": "2025-12-30T14:21:05Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.8.0",
"date": "2025-12-30T12:16:28Z"
},
{
"name": "openobserve/openobserve",
"version": "v0.40.0",
"date": "2025-12-30T11:45:10Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.544",
"date": "2025-12-30T11:00:27Z"
},
{
"name": "javedh-dev/tracktor",
"version": "1.1.0",
"date": "2025-12-30T04:42:18Z"
},
{
"name": "karlomikus/bar-assistant",
"version": "v5.11.2",
"date": "2025-12-29T21:09:41Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.31.1",
"date": "2025-12-29T16:50:03Z"
},
{
"name": "traefik/traefik",
"version": "v3.6.6",
"date": "2025-12-29T15:56:09Z"
},
{
"name": "ArchiveBox/ArchiveBox",
"version": "v0.8.6rc1",
"date": "2025-12-29T10:58:49Z"
},
{
"name": "Lidarr/Lidarr",
"version": "v3.1.0.4875",
"date": "2025-11-16T22:40:18Z"
},
{
"name": "Radarr/Radarr",
"version": "v6.0.4.10291",
"date": "2025-11-16T22:39:01Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.15.6",
"date": "2025-12-28T16:38:35Z"
},
{
"name": "release-argus/Argus",
"version": "0.29.0",
"date": "2025-12-28T14:32:36Z"
},
{
"name": "linkwarden/linkwarden",
"version": "v2.13.5",
"date": "2025-12-28T09:15:51Z"
},
{
"name": "kimai/kimai",
"version": "2.45.0",
"date": "2025-12-28T06:32:47Z"
},
{
"name": "laurent22/joplin",
@@ -94,41 +379,6 @@
"version": "v1.5.6",
"date": "2025-12-27T20:29:53Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.4.5",
"date": "2025-12-27T19:40:14Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.7",
"date": "2025-12-01T08:14:11Z"
},
{
"name": "alam00000/bentopdf",
"version": "v1.15.1",
"date": "2025-12-27T16:29:08Z"
},
{
"name": "rcourtman/Pulse",
"version": "v5.0.5",
"date": "2025-12-27T11:47:48Z"
},
{
"name": "alexta69/metube",
"version": "2025.12.27",
"date": "2025-12-27T10:24:02Z"
},
{
"name": "karlomikus/bar-assistant",
"version": "v5.11.1",
"date": "2025-12-27T09:55:49Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-ui@16.4.1",
"date": "2025-12-27T09:40:37Z"
},
{
"name": "sysadminsmedia/homebox",
"version": "v0.22.3",
@@ -139,36 +389,11 @@
"version": "preview-music-support",
"date": "2025-12-26T22:24:19Z"
},
{
"name": "metabase/metabase",
"version": "v0.58.x",
"date": "2025-12-26T19:49:03Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.48.0",
"date": "2025-12-26T19:23:50Z"
},
{
"name": "toniebox-reverse-engineering/teddycloud",
"version": "tc_v0.6.6",
"date": "2025-12-26T18:45:22Z"
},
{
"name": "openobserve/openobserve",
"version": "v0.40.0-rc3",
"date": "2025-12-26T16:06:54Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w52-4.14.2",
"date": "2025-12-19T13:31:21Z"
},
{
"name": "theonedev/onedev",
"version": "v13.1.7",
"date": "2025-12-26T07:59:41Z"
},
{
"name": "HydroshieldMKII/Guardian",
"version": "v1.3.3",
@@ -194,21 +419,11 @@
"version": "5.2.5",
"date": "2025-12-25T09:23:10Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "fosrl/pangolin",
"version": "1.14.1",
"date": "2025-12-24T21:33:56Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.16.0",
"date": "2025-12-24T19:57:11Z"
},
{
"name": "FreshRSS/FreshRSS",
"version": "1.28.0",
@@ -229,31 +444,11 @@
"version": "22.0.4",
"date": "2025-12-24T12:26:24Z"
},
{
"name": "BookStackApp/BookStack",
"version": "v25.12",
"date": "2025-12-24T12:19:42Z"
},
{
"name": "emqx/emqx",
"version": "6.1.0-rc.1",
"date": "2025-12-24T09:46:02Z"
},
{
"name": "comfyanonymous/ComfyUI",
"version": "v0.6.0",
"date": "2025-12-24T03:32:16Z"
},
{
"name": "advplyr/audiobookshelf",
"version": "v2.32.1",
"date": "2025-12-23T23:28:06Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@2.1.4",
"date": "2025-12-23T20:53:07Z"
},
{
"name": "prometheus-pve/prometheus-pve-exporter",
"version": "v3.8.0",
@@ -269,11 +464,6 @@
"version": "r6.0.27",
"date": "2025-12-23T16:21:51Z"
},
{
"name": "esphome/esphome",
"version": "2025.12.2",
"date": "2025-12-23T16:17:04Z"
},
{
"name": "SonarSource/sonarqube",
"version": "25.12.0.117093",
@@ -284,21 +474,11 @@
"version": "v5.7",
"date": "2025-12-23T14:53:51Z"
},
{
"name": "coollabsio/coolify",
"version": "v4.0.0-beta.459",
"date": "2025-12-23T14:40:52Z"
},
{
"name": "prometheus/prometheus",
"version": "v3.8.1",
"date": "2025-12-16T09:59:22Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.543",
"date": "2025-12-23T12:39:16Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.4",
@@ -324,11 +504,6 @@
"version": "v2.0.12",
"date": "2025-12-02T08:11:24Z"
},
{
"name": "Dispatcharr/Dispatcharr",
"version": "v0.15.1",
"date": "2025-12-22T23:01:26Z"
},
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.5",
@@ -339,26 +514,11 @@
"version": "v4.0.16.2944",
"date": "2025-11-05T01:56:48Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v1.1.0-stable",
"date": "2025-12-22T20:30:40Z"
},
{
"name": "maxdorninger/MediaManager",
"version": "v1.11.1",
"date": "2025-12-22T18:15:40Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.80.11.rc.1",
"date": "2025-12-22T16:29:28Z"
},
{
"name": "meilisearch/meilisearch",
"version": "latest",
"date": "2025-12-22T16:21:19Z"
},
{
"name": "openhab/openhab-core",
"version": "5.1.0",
@@ -389,21 +549,11 @@
"version": "v1.1.10",
"date": "2025-12-21T13:13:01Z"
},
{
"name": "jason5ng32/MyIP",
"version": "v5.1.1",
"date": "2025-12-21T12:59:32Z"
},
{
"name": "pocketbase/pocketbase",
"version": "v0.35.0",
"date": "2025-12-21T07:44:15Z"
},
{
"name": "dedicatedcode/reitti",
"version": "v3.0.1",
"date": "2025-12-21T04:35:21Z"
},
{
"name": "intri-in/manage-my-damn-life-nextjs",
"version": "v0.8.2",
@@ -414,11 +564,6 @@
"version": "1.1.7",
"date": "2025-12-20T17:13:34Z"
},
{
"name": "ghostfolio/ghostfolio",
"version": "2.224.2",
"date": "2025-12-20T16:39:52Z"
},
{
"name": "ellite/Wallos",
"version": "v4.6.0",
@@ -434,11 +579,6 @@
"version": "v11.9.1",
"date": "2025-12-20T09:14:25Z"
},
{
"name": "louislam/uptime-kuma",
"version": "2.0.2",
"date": "2025-10-22T17:03:54Z"
},
{
"name": "pelican-dev/panel",
"version": "v1.0.0-beta30",
@@ -449,16 +589,6 @@
"version": "v1.0.0-beta21",
"date": "2025-12-19T23:04:27Z"
},
{
"name": "YunoHost/yunohost",
"version": "debian/12.1.37",
"date": "2025-12-18T16:43:23Z"
},
{
"name": "home-assistant/core",
"version": "2025.12.4",
"date": "2025-12-19T17:55:13Z"
},
{
"name": "qdrant/qdrant",
"version": "v1.16.3",
@@ -474,11 +604,6 @@
"version": "v1.19.0",
"date": "2025-12-19T13:37:00Z"
},
{
"name": "fccview/jotty",
"version": "1.14.4",
"date": "2025-12-19T13:17:26Z"
},
{
"name": "readeck/readeck",
"version": "0.21.5",
@@ -489,26 +614,11 @@
"version": "v15.0.0-dev",
"date": "2025-12-19T11:43:47Z"
},
{
"name": "mattermost/mattermost",
"version": "v11.1.2",
"date": "2025-12-17T09:26:24Z"
},
{
"name": "jhuckaby/Cronicle",
"version": "v0.9.102",
"date": "2025-12-19T03:45:13Z"
},
{
"name": "javedh-dev/tracktor",
"version": "1.0.2",
"date": "2025-12-19T02:43:42Z"
},
{
"name": "mealie-recipes/mealie",
"version": "v3.8.0",
"date": "2025-12-19T01:37:04Z"
},
{
"name": "moghtech/komodo",
"version": "v1.19.5",
@@ -594,16 +704,6 @@
"version": "testing",
"date": "2025-12-16T11:13:20Z"
},
{
"name": "traefik/traefik",
"version": "v2.11.33",
"date": "2025-12-17T10:10:19Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.7.6",
"date": "2025-12-17T08:56:54Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.105.1",
@@ -614,16 +714,6 @@
"version": "@jupyter-notebook/ui-components@7.6.0-alpha.0",
"date": "2025-12-17T08:35:55Z"
},
{
"name": "nickheyer/discopanel",
"version": "v1.0.16",
"date": "2025-12-17T04:47:13Z"
},
{
"name": "9001/copyparty",
"version": "v1.19.23",
"date": "2025-12-17T00:51:11Z"
},
{
"name": "grafana/grafana",
"version": "v12.3.1",
@@ -639,11 +729,6 @@
"version": "v0.19.0",
"date": "2025-12-15T19:43:03Z"
},
{
"name": "livebook-dev/livebook",
"version": "v0.18.2",
"date": "2025-12-15T19:17:42Z"
},
{
"name": "opencloud-eu/opencloud",
"version": "v4.1.0",
@@ -749,16 +834,6 @@
"version": "v1.71.0",
"date": "2025-12-13T14:38:09Z"
},
{
"name": "karakeep-app/karakeep",
"version": "cli/v0.29.1",
"date": "2025-12-13T13:55:51Z"
},
{
"name": "Dokploy/dokploy",
"version": "v0.26.2",
"date": "2025-12-13T07:48:09Z"
},
{
"name": "node-red/node-red",
"version": "4.1.2",
@@ -784,11 +859,6 @@
"version": "0.43.1",
"date": "2025-12-11T22:45:52Z"
},
{
"name": "TwiN/gatus",
"version": "v5.33.1",
"date": "2025-12-11T01:59:13Z"
},
{
"name": "gethomepage/homepage",
"version": "v1.8.0",
@@ -799,11 +869,6 @@
"version": "v1.72.1",
"date": "2025-12-10T14:55:44Z"
},
{
"name": "evcc-io/evcc",
"version": "0.211.1",
"date": "2025-12-10T12:25:19Z"
},
{
"name": "kyantech/Palmr",
"version": "v3.3.2-beta",
@@ -864,26 +929,11 @@
"version": "v0.107.71",
"date": "2025-12-08T14:34:55Z"
},
{
"name": "wavelog/wavelog",
"version": "2.2.1",
"date": "2025-12-08T12:01:34Z"
},
{
"name": "Part-DB/Part-DB-server",
"version": "v2.3.0",
"date": "2025-12-07T21:58:43Z"
},
{
"name": "traccar/traccar",
"version": "v6.11.1",
"date": "2025-12-07T19:19:08Z"
},
{
"name": "Koenkk/zigbee2mqtt",
"version": "2.7.1",
"date": "2025-12-06T20:30:34Z"
},
{
"name": "navidrome/navidrome",
"version": "v0.59.0",
@@ -904,11 +954,6 @@
"version": "v4.9.0",
"date": "2025-12-06T08:58:40Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.3.0",
"date": "2025-12-06T06:18:23Z"
},
{
"name": "community-scripts/ProxmoxVE-Local",
"version": "v0.5.2",
@@ -944,11 +989,6 @@
"version": "11.0.4",
"date": "2025-12-04T09:26:37Z"
},
{
"name": "actualbudget/actual",
"version": "v25.12.0",
"date": "2025-12-03T17:45:09Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "6.2.10",
@@ -999,11 +1039,6 @@
"version": "v2.4.7",
"date": "2025-11-30T20:59:51Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.16.0",
"date": "2025-11-30T17:44:44Z"
},
{
"name": "sabre-io/Baikal",
"version": "0.11.1",
@@ -1104,11 +1139,6 @@
"version": "v4.3.2",
"date": "2025-10-18T12:11:00Z"
},
{
"name": "Athou/commafeed",
"version": "5.12.0",
"date": "2025-11-20T06:18:58Z"
},
{
"name": "nextcloud/nextcloudpi",
"version": "v1.56.0",
@@ -1154,11 +1184,6 @@
"version": "v2.15.0",
"date": "2025-11-16T18:53:49Z"
},
{
"name": "outline/outline",
"version": "v1.1.0",
"date": "2025-11-16T15:07:09Z"
},
{
"name": "bastienwirtz/homer",
"version": "v25.11.1",
@@ -1354,11 +1379,6 @@
"version": "v0.1.64",
"date": "2025-10-03T05:18:24Z"
},
{
"name": "MagicMirrorOrg/MagicMirror",
"version": "v2.33.0",
"date": "2025-09-30T16:18:10Z"
},
{
"name": "thomiceli/opengist",
"version": "v1.11.1",
@@ -1384,11 +1404,6 @@
"version": "1.2.39",
"date": "2025-09-25T15:57:02Z"
},
{
"name": "gotify/server",
"version": "v2.7.3",
"date": "2025-09-21T12:07:19Z"
},
{
"name": "mmastrac/stylus",
"version": "v0.17.0",
@@ -1494,11 +1509,6 @@
"version": "1.5.1",
"date": "2025-08-13T15:43:57Z"
},
{
"name": "requarks/wiki",
"version": "v2.5.308",
"date": "2025-08-13T07:09:29Z"
},
{
"name": "ioBroker/ioBroker",
"version": "1012-08-09",
@@ -1574,11 +1584,6 @@
"version": "v0.2.3",
"date": "2025-05-10T21:14:45Z"
},
{
"name": "ZoeyVid/NPMplus",
"version": "2025-05-07-r1",
"date": "2025-05-07T12:18:42Z"
},
{
"name": "dotnetfactory/fluid-calendar",
"version": "v1.4.0",
@@ -1689,11 +1694,6 @@
"version": "v1.15.1",
"date": "2024-12-16T13:00:05Z"
},
{
"name": "ArchiveBox/ArchiveBox",
"version": "v0.7.3",
"date": "2024-12-15T10:18:06Z"
},
{
"name": "swizzin/swizzin",
"version": "stable",

View File

@@ -44,7 +44,7 @@
},
"notes": [
{
"text": "Wireguard and WGDashboard are not the same. More info: `https://docs.wgdashboard.dev/what-is-wireguard-what-is-wgdashboard.html`",
"text": "Wireguard and WGDashboard are not the same. More info: `https://wgdashboard.dev/`",
"type": "info"
},
{

View File

@@ -17,13 +17,17 @@ msg_info "Installing Dependencies"
$STD apt-get install -y ffmpeg
msg_ok "Installed Dependencies"
setup_deb822_repo \
"audiobookshelf" \
"https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg" \
"https://advplyr.github.io/audiobookshelf-ppa" \
"./"
msg_info "Setup audiobookshelf"
curl -fsSL https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg >/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc
echo "deb [signed-by=/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc] https://advplyr.github.io/audiobookshelf-ppa ./" >/etc/apt/sources.list.d/audiobookshelf.list
$STD apt update
$STD apt install -y audiobookshelf
echo "FFMPEG_PATH=/usr/bin/ffmpeg" >>/etc/default/audiobookshelf
echo "FFPROBE_PATH=/usr/bin/ffprobe" >>/etc/default/audiobookshelf
systemctl restart audiobookshelf
msg_ok "Setup audiobookshelf"
motd_ssh

View File

@@ -17,7 +17,7 @@ setup_hwaccel
setup_imagemagick
msg_info "Installing Dependencies"
$STD apt-get install -y \
$STD apt install -y \
assimp-utils \
calibre \
dcraw \

View File

@@ -16,24 +16,10 @@ update_os
PHP_VERSION="8.4" PHP_APACHE="YES" PHP_MODULE="mysql" setup_php
setup_composer
setup_mariadb
LOCAL_IP=$(hostname -I | awk '{print $1}')
msg_info "Setting up database"
DB_NAME=firefly
DB_USER=firefly
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
$STD mariadb -u root -e "CREATE DATABASE $DB_NAME;"
$STD mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
{
echo "Firefly-Credentials"
echo "Firefly Database User: $DB_USER"
echo "Firefly Database Password: $DB_PASS"
echo "Firefly Database Name: $DB_NAME"
} >>~/firefly.creds
msg_ok "Set up database"
MARIADB_DB_NAME="firefly" MARIADB_DB_USER="firefly" setup_mariadb_db
import_local_ip
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
fetch_and_deploy_gh_release "dataimporter" "firefly-iii/data-importer" "prebuild" "latest" "/opt/firefly/dataimporter" "DataImporter-v*.tar.gz"
msg_info "Configuring Firefly III (Patience)"
chown -R www-data:www-data /opt/firefly
@@ -41,22 +27,19 @@ chmod -R 775 /opt/firefly/storage
cd /opt/firefly
cp .env.example .env
sed -i "s/DB_HOST=.*/DB_HOST=localhost/" /opt/firefly/.env
sed -i "s/DB_PASSWORD=.*/DB_PASSWORD=$DB_PASS/" /opt/firefly/.env
sed -i "s/DB_PASSWORD=.*/DB_PASSWORD=$MARIADB_DB_PASS/" /opt/firefly/.env
$STD composer install --no-dev --no-plugins --no-interaction
$STD php artisan firefly:upgrade-database
$STD php artisan firefly:correct-database
$STD php artisan firefly:report-integrity
$STD php artisan firefly:laravel-passport-keys
IMPORTER_RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/data-importer/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}')
mkdir -p /opt/firefly/dataimporter
cd /opt
curl -fsSL "https://github.com/firefly-iii/data-importer/releases/download/v${IMPORTER_RELEASE}/DataImporter-v${IMPORTER_RELEASE}.tar.gz" -o "DataImporter-v${IMPORTER_RELEASE}.tar.gz"
tar -xzf "DataImporter-v${IMPORTER_RELEASE}.tar.gz" -C /opt/firefly/dataimporter
msg_ok "Configured Firefly III"
msg_info "Configuring Data Importer"
cp /opt/firefly/dataimporter/.env.example /opt/firefly/dataimporter/.env
sed -i "s#FIREFLY_III_URL=#FIREFLY_III_URL=http://${LOCAL_IP}#g" /opt/firefly/dataimporter/.env
chown -R www-data:www-data /opt/firefly
rm -rf "/opt/DataImporter-v${IMPORTER_RELEASE}.tar.gz"
msg_ok "Configured Firefly III"
msg_ok "Configured Data Importer"
msg_info "Creating Service"
cat <<EOF >/etc/apache2/sites-available/firefly.conf
@@ -69,6 +52,8 @@ cat <<EOF >/etc/apache2/sites-available/firefly.conf
AllowOverride All
Require all granted
</Directory>
RedirectMatch 301 ^/dataimporter$ /dataimporter/
Alias /dataimporter/ /opt/firefly/dataimporter/public/

View File

@@ -1,57 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/pommee/goaway
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y net-tools
msg_ok "Installed Dependencies"
fetch_and_deploy_gh_release "goaway" "pommee/goaway" "prebuild" "latest" "/opt/goaway" "goaway_*_linux_amd64.tar.gz"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/goaway.service
[Unit]
Description=GoAway Service
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/goaway
ExecStart=/opt/goaway/goaway
StandardOutput=file:/var/log/goaway.log
StandardError=inherit
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now goaway
sleep 10
for i in {1..30}; do
ADMIN_PASS=$(awk -F': ' "/Randomly generated admin password:/ {print \$2; exit}" /var/log/goaway.log)
[ -n "$ADMIN_PASS" ] && break
sleep 1
done
{
echo "GoAway Credentials"
echo "Admin User: admin"
echo "Admin Password: $ADMIN_PASS"
} >>~/goaway.creds
msg_ok "Service Created"
motd_ssh
customize
cleanup_lxc

View File

@@ -28,7 +28,7 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
redir /admin /admin/
handle_path /admin* {
handle_path /admin/* {
root * /opt/headscale-admin
encode gzip zstd
@@ -36,14 +36,11 @@ handle_path /admin* {
X-Content-Type-Options nosniff
}
try_files {path} {path}/ /opt/headscale-admin/index.html
try_files {path} /opt/headscale-admin/index.html
file_server
}
handle /api/* {
reverse_proxy localhost:8080
}
reverse_proxy localhost:8080
EOF
caddy fmt --overwrite /etc/caddy/Caddyfile
systemctl start caddy

View File

@@ -86,7 +86,8 @@ EOF
mkdir -p /opt/invoiceninja/bootstrap/cache
mkdir -p /opt/invoiceninja/storage/{app/public,framework/{cache/data,sessions,views},logs}
chown -R www-data:www-data /opt/invoiceninja
chmod -R 775 /opt/invoiceninja/storage /opt/invoiceninja/bootstrap/cache
chown -R www-data:www-data /opt/invoiceninja/storage
chown -R www-data:www-data /opt/invoiceninja/bootstrap/cache
msg_ok "Configured InvoiceNinja"
msg_info "Downloading Chromium for PDF Generation"

View File

@@ -49,7 +49,7 @@ if command -v corepack >/dev/null 2>&1; then
fi
$STD yarn
$STD npx playwright install-deps
$STD yarn playwright install
$STD npx playwright install
IP=$(hostname -I | awk '{print $1}')
cat <<EOF >/opt/linkwarden/.env
NEXTAUTH_SECRET=${SECRET_KEY}

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="22" setup_nodejs
NODE_VERSION="24" setup_nodejs
fetch_and_deploy_gh_release "magicmirror" "MagicMirrorOrg/MagicMirror" "tarball"
msg_info "Configuring MagicMirror"

View File

@@ -36,15 +36,35 @@ msg_info "Setting up Certbot"
$STD python3 -m venv /opt/certbot
$STD /opt/certbot/bin/pip install --upgrade pip setuptools wheel
$STD /opt/certbot/bin/pip install certbot certbot-dns-cloudflare
# Fix for Debian 13 Trixie - certbot-dns-multi needed to prevent "API isn't healthy" error
if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"13"* ]]; then
if ! /opt/certbot/bin/pip list 2>/dev/null | grep -q certbot-dns-multi; then
msg_info "Applying Debian 13 Certbot Fix"
$STD apt-get install -y golang build-essential git
$STD /opt/certbot/bin/pip install --no-cache-dir setuptools-golang==2.9.0
export CGO_ENABLED=1
export GO111MODULE=on
$STD /opt/certbot/bin/pip install --no-build-isolation --no-cache-dir certbot-dns-multi
msg_ok "Applied Debian 13 Certbot Fix"
fi
fi
ln -sf /opt/certbot/bin/certbot /usr/local/bin/certbot
msg_ok "Set up Certbot"
msg_info "Installing Openresty"
curl -fsSL "https://openresty.org/package/pubkey.gpg" | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty.gpg
cat <<'EOF' >/etc/apt/sources.list.d/openresty.sources
DEBIAN_VERSION=$(grep -E '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)
# Openresty only has bookworm, not trixie - map newer versions to bookworm
case "$DEBIAN_VERSION" in
trixie|sid) OPENRESTY_SUITE="bookworm" ;;
*) OPENRESTY_SUITE="$DEBIAN_VERSION" ;;
esac
cat <<EOF >/etc/apt/sources.list.d/openresty.sources
Types: deb
URIs: http://openresty.org/package/debian/
Suites: bookworm
Suites: ${OPENRESTY_SUITE}
Components: openresty
Signed-By: /etc/apt/trusted.gpg.d/openresty.gpg
EOF

View File

@@ -44,7 +44,18 @@ msg_ok "Set up Intel® Repositories"
setup_hwaccel
msg_info "Installing Intel® Level Zero"
$STD apt -y install intel-level-zero-gpu level-zero level-zero-dev 2>/dev/null || true
# Debian 13+ has newer Level Zero packages in system repos that conflict with Intel repo packages
if is_debian && [[ "$(get_os_version_major)" -ge 13 ]]; then
# Use system packages on Debian 13+ (avoid conflicts with libze1)
$STD apt -y install libze1 libze-dev intel-level-zero-gpu 2>/dev/null || {
msg_warn "Failed to install some Level Zero packages, continuing anyway"
}
else
# Use Intel repository packages for older systems
$STD apt -y install intel-level-zero-gpu level-zero level-zero-dev 2>/dev/null || {
msg_warn "Failed to install Intel Level Zero packages, continuing anyway"
}
fi
msg_ok "Installed Intel® Level Zero"
msg_info "Installing Intel® oneAPI Base Toolkit (Patience)"

View File

@@ -50,7 +50,18 @@ EOF
msg_ok "Set up Intel® Repositories"
msg_info "Installing Intel® Level Zero"
$STD apt -y install intel-level-zero-gpu level-zero level-zero-dev 2>/dev/null || true
# Debian 13+ has newer Level Zero packages in system repos that conflict with Intel repo packages
if is_debian && [[ "$(get_os_version_major)" -ge 13 ]]; then
# Use system packages on Debian 13+ (avoid conflicts with libze1)
$STD apt -y install libze1 libze-dev intel-level-zero-gpu 2>/dev/null || {
msg_warn "Failed to install some Level Zero packages, continuing anyway"
}
else
# Use Intel repository packages for older systems
$STD apt -y install intel-level-zero-gpu level-zero level-zero-dev 2>/dev/null || {
msg_warn "Failed to install Intel Level Zero packages, continuing anyway"
}
fi
msg_ok "Installed Intel® Level Zero"
msg_info "Installing Intel® oneAPI Base Toolkit (Patience)"

View File

@@ -13,65 +13,20 @@ setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt install -y \
lsb-release \
apache2 \
composer
msg_ok "Installed Dependencies"
PHP_VERSION="8.4" PHP_MODULE="mysql,sqlite3" PHP_APACHE="YES" PHP_FPM="YES" setup_php
setup_composer
setup_mariadb
msg_info "Adding PHP8.4 Repository"
$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
cat <<EOF >/etc/apt/sources.list.d/php.sources
Types: deb
URIs: https://packages.sury.org/php/
Suites: $(lsb_release -sc)
Components: main
Signed-By: /usr/share/keyrings/deb.sury.org-php.gpg
EOF
$STD apt update
msg_ok "Added PHP8.4 Repository"
msg_info "Installing PHP"
$STD apt remove -y php8.2*
$STD apt install -y \
php8.4 \
php8.4-{gd,mysql,mbstring,bcmath,xml,curl,zip,intl,sqlite3,fpm} \
libapache2-mod-php8.4
msg_info "Installed PHP"
msg_info "Setting up MariaDB"
DB_NAME=panel
DB_USER=pelican
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
$STD mariadb -u root -e "CREATE DATABASE $DB_NAME;"
$STD mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
$STD mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
{
echo "Pelican Panel-Credentials"
echo "Pelican Panel Database User: $DB_USER"
echo "Pelican Panel Database Password: $DB_PASS"
echo "Pelican Panel Database Name: $DB_NAME"
} >>~/pelican-panel.creds
msg_ok "Set up MariaDB"
MARIADB_DB_NAME="panel" MARIADB_DB_USER="pelican" setup_mariadb_db
fetch_and_deploy_gh_release "pelican-panel" "pelican-dev/panel" "prebuild" "latest" "/opt/pelican-panel" "panel.tar.gz"
msg_info "Installing Pelican Panel"
RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/panel/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
mkdir /opt/pelican-panel
cd /opt/pelican-panel
curl -fsSL "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" -o "panel.tar.gz"
tar -xzf "panel.tar.gz"
$STD composer install --no-dev --optimize-autoloader --no-interaction
$STD php artisan p:environment:setup
$STD php artisan p:environment:queue-service --no-interaction
echo "* * * * * php /opt/pelican-panel/artisan schedule:run >> /dev/null 2>&1" | crontab -u www-data -
chown -R www-data:www-data /opt/pelican-panel
chmod -R 755 /opt/pelican-panel/storage /opt/pelican-panel/bootstrap/cache/
rm -rf "/opt/pelican-panel/panel.tar.gz"
echo "${RELEASE}" >/opt/"${APPLICATION}"_version.txt
msg_ok "Installed Pelican Panel"
msg_info "Creating Service"

View File

@@ -15,19 +15,14 @@ update_os
msg_info "Installing Docker"
DOCKER_CONFIG_PATH='/etc/docker/daemon.json'
mkdir -p $(dirname $DOCKER_CONFIG_PATH)
echo -e '{\n "log-driver": "journald"\n}' >/etc/docker/daemon.json
mkdir -p "$(dirname $DOCKER_CONFIG_PATH)"
echo -e '{\n "log-driver": "journald"\n}' >"$DOCKER_CONFIG_PATH"
$STD sh <(curl -fsSL https://get.docker.com)
systemctl enable -q --now docker
msg_ok "Installed Docker"
msg_info "Installing Pelican Wings"
RELEASE=$(curl -fsSL https://api.github.com/repos/pelican-dev/wings/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/pelican-dev/wings/releases/download/v${RELEASE}/wings_linux_amd64" -o "/usr/local/bin/wings"
chmod u+x /usr/local/bin/wings
fetch_and_deploy_gh_release "wings" "pelican-dev/wings" "singlefile" "latest" "/usr/local/bin" "wings_linux_amd64"
mkdir -p /etc/pelican /var/run/wings
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
msg_ok "Installed Pelican Wings"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/wings.service

View File

@@ -17,6 +17,8 @@ read -r -p "${TAB3}What public URL do you want to use (e.g. pocketid.mydomain.co
fetch_and_deploy_gh_release "pocket-id" "pocket-id/pocket-id" "singlefile" "latest" "/opt/pocket-id/" "pocket-id-linux-amd64"
msg_info "Configuring Pocket ID"
ENCRYPTION_KEY=$(openssl rand -base64 32)
cat <<EOF >/opt/pocket-id/.env
APP_ENV=production
APP_URL=https://${public_url}
@@ -24,6 +26,7 @@ TRUST_PROXY=false
# MAXMIND_LICENSE_KEY=
PORT=1411
HOST=0.0.0.0
ENCRYPTION_KEY=${ENCRYPTION_KEY}
EOF
msg_ok "Configured Pocket ID"

View File

@@ -50,6 +50,8 @@ mv /opt/photon/photon-*.jar /opt/photon/photon.jar
msg_info "Installing Nginx Tile Cache"
mkdir -p /var/cache/nginx/tiles
cat <<EOF >/etc/nginx/nginx.conf
user www-data;
events {
worker_connections 1024;
}
@@ -68,7 +70,8 @@ http {
}
}
EOF
chown -R www-data:www-data /var/cache/nginx/tiles
chown -R www-data:www-data /var/cache/nginx
chmod -R 750 /var/cache/nginx
systemctl restart nginx
msg_info "Installed Nginx Tile Cache"

View File

@@ -17,18 +17,13 @@ msg_info "Installing Dependencies"
$STD apt install -y sqlite3
msg_ok "Installed Dependencies"
setup_go
setup_deb822_repo \
"sftpgo" \
"https://ftp.osuosl.org/pub/sftpgo/apt/gpg.key" \
"https://ftp.osuosl.org/pub/sftpgo/apt" \
"trixie"
msg_info "Installing SFTPGo"
curl -fsSL https://ftp.osuosl.org/pub/sftpgo/apt/gpg.key | gpg --dearmor -o /usr/share/keyrings/sftpgo-archive-keyring.gpg
cat <<EOF >/etc/apt/sources.list.d/sftpgo.sources
Types: deb
URIs: https://ftp.osuosl.org/pub/sftpgo/apt
Suites: bookworm
Components: main
Signed-By: /usr/share/keyrings/sftpgo-archive-keyring.gpg
EOF
$STD apt update
$STD apt install -y sftpgo
msg_ok "Installed SFTPGo"

View File

@@ -17,6 +17,7 @@ msg_info "Installing Dependencies"
$STD apt install -y \
nginx \
sqlite3
setcap cap_net_raw+ep /bin/ping
msg_ok "Installed Dependencies"
PHP_VERSION="8.4" PHP_FPM="YES" PHP_MODULE="common,sqlite3,redis" setup_php
@@ -71,6 +72,8 @@ SESSION_LIFETIME=120
SPEEDTEST_SCHEDULE="0 */6 * * *"
SPEEDTEST_SERVERS=
SPEEDTEST_EXTERNAL_IP_URL=https://ip.me
SPEEDTEST_INTERNET_CHECK_HOSTNAME=1.1.1.1
PRUNE_RESULTS_OLDER_THAN=0
DISPLAY_TIMEZONE=${TIMEZONE}

View File

@@ -23,7 +23,7 @@ if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
bash <(curl -sL s5n.sh)
bash <(curl -fsSL https://s5n.sh)
motd_ssh
customize

View File

@@ -39,6 +39,14 @@ rm -f wazuh-*.sh
rm -f ~/wazuh-install.output
msg_ok "Setup Wazuh"
# Fix LXC container false positives in rootcheck
# When running Wazuh in an LXC container, /dev/.lxc/* paths trigger false alerts
if [ -d /dev/.lxc ]; then
msg_info "Adding LXC rootcheck exclusion"
sed -i '/<\/rootcheck>/i \ <ignore>/dev/.lxc</ignore>' /var/ossec/etc/ossec.conf
msg_ok "Added LXC rootcheck exclusion"
fi
motd_ssh
customize
cleanup_lxc

View File

@@ -52,6 +52,7 @@ msg_ok "Installed Zammad"
msg_info "Setup Services"
cp /opt/zammad/contrib/nginx/zammad.conf /etc/nginx/sites-available/zammad.conf
sed -i "s/server_name localhost;/server_name $LOCAL_IP;/g" /etc/nginx/sites-available/zammad.conf
unlink /etc/nginx/sites-available/default
$STD systemctl reload nginx
msg_ok "Created Service"

View File

@@ -2783,6 +2783,7 @@ build_container() {
export PCT_OSTYPE="$var_os"
export PCT_OSVERSION="$var_version"
export PCT_DISK_SIZE="$DISK_SIZE"
export IPV6_METHOD="$IPV6_METHOD"
# DEV_MODE exports (optional, for debugging)
export BUILD_LOG="$BUILD_LOG"

View File

@@ -809,21 +809,15 @@ cleanup_lxc() {
find /tmp /var/tmp -type f -name 'tmp*' -delete 2>/dev/null || true
find /tmp /var/tmp -type f -name 'tempfile*' -delete 2>/dev/null || true
# Truncate writable log files silently (permission errors ignored)
if command -v truncate >/dev/null 2>&1; then
find /var/log -type f -writable -print0 2>/dev/null |
xargs -0 -n1 truncate -s 0 2>/dev/null || true
fi
# Node.js npm - directly remove cache directory
# npm cache clean/verify can fail with ENOTEMPTY errors, so we skip them
if command -v npm &>/dev/null; then
rm -rf /root/.npm/_cacache /root/.npm/_logs 2>/dev/null || true
fi
# Node.js yarn
if command -v yarn &>/dev/null; then $STD yarn cache clean || true; fi
if command -v yarn &>/dev/null; then yarn cache clean &>/dev/null || true; fi
# Node.js pnpm
if command -v pnpm &>/dev/null; then $STD pnpm store prune || true; fi
if command -v pnpm &>/dev/null; then pnpm store prune &>/dev/null || true; fi
# Go
if command -v go &>/dev/null; then $STD go clean -cache -modcache || true; fi
# Rust cargo
@@ -831,11 +825,8 @@ cleanup_lxc() {
# Ruby gem
if command -v gem &>/dev/null; then $STD gem cleanup || true; fi
# Composer (PHP)
if command -v composer &>/dev/null; then COMPOSER_ALLOW_SUPERUSER=1 && $STD composer clear-cache || true; fi
if command -v composer &>/dev/null; then COMPOSER_ALLOW_SUPERUSER=1 $STD composer clear-cache || true; fi
if command -v journalctl &>/dev/null; then
$STD journalctl --vacuum-time=10m || true
fi
msg_ok "Cleaned"
}

View File

@@ -2639,6 +2639,7 @@ function setup_hwaccel() {
ocl-icd-libopencl1 \
intel-opencl-icd \
vainfo \
libmfx-gen1.2 \
intel-gpu-tools || {
msg_error "Failed to install Intel GPU dependencies"
return 1
@@ -2666,6 +2667,7 @@ EOF
ocl-icd-libopencl1 \
intel-opencl-icd \
vainfo \
libmfx-gen1.2 \
intel-gpu-tools || {
msg_warn "Non-free driver install failed, falling back to open drivers"
needs_nonfree=false
@@ -2694,6 +2696,7 @@ EOF
mesa-va-drivers \
libvpl2 \
vainfo \
libmfx-gen1.2 \
intel-gpu-tools 2>/dev/null || {
msg_warn "Non-free driver install failed, falling back to open drivers"
needs_nonfree=false
@@ -3258,6 +3261,31 @@ setup_mariadb() {
}
fi
# Configure tmpfiles.d to ensure /run/mysqld directory is created on boot
# This fixes the issue where MariaDB fails to start after container reboot
msg_info "Configuring MariaDB runtime directory persistence"
# Create tmpfiles.d configuration with error handling
if ! printf '# Ensure /run/mysqld directory exists with correct permissions for MariaDB\nd /run/mysqld 0755 mysql mysql -\n' > /etc/tmpfiles.d/mariadb.conf; then
msg_warn "Failed to create /etc/tmpfiles.d/mariadb.conf - runtime directory may not persist on reboot"
fi
# Create the directory now if it doesn't exist
# Verify mysql user exists before attempting ownership change
if [[ ! -d /run/mysqld ]]; then
mkdir -p /run/mysqld
# Set permissions first (works regardless of user existence)
chmod 755 /run/mysqld
# Set ownership only if mysql user exists
if getent passwd mysql >/dev/null 2>&1; then
chown mysql:mysql /run/mysqld
else
msg_warn "mysql user not found - directory created with correct permissions but ownership not set"
fi
fi
msg_ok "Configured MariaDB runtime directory persistence"
cache_installed_version "mariadb" "$MARIADB_VERSION"
msg_ok "Setup MariaDB $MARIADB_VERSION"
}