Compare commits

...

127 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
06ca6e2087 Update CHANGELOG.md (#7871)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-24 00:13:00 +00:00
community-scripts-pr-app[bot]
8c48ea6718 Update versions.json (#7870)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-24 02:12:36 +02:00
community-scripts-pr-app[bot]
b626e705eb Update CHANGELOG.md (#7869)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 20:39:42 +00:00
community-scripts-pr-app[bot]
f103d09c09 Update CHANGELOG.md (#7867)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 19:35:46 +00:00
Chris
82a7d252ab Bump Immich to v1.143.1 (#7864) 2025-09-23 21:35:27 +02:00
community-scripts-pr-app[bot]
48af77e928 Update CHANGELOG.md (#7866)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 19:21:34 +00:00
Chris
d24308a409 Manage My Damn Life: use NodeJS 22 (#7861) 2025-09-23 21:21:05 +02:00
community-scripts-pr-app[bot]
584365fff1 Update CHANGELOG.md (#7863)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 19:03:42 +00:00
Giovanni Pellerano
95c54dccd7 Improve globaleaks install ensuring install can proceed without user input (#7860) 2025-09-23 21:03:15 +02:00
community-scripts-pr-app[bot]
eb28463d86 Update CHANGELOG.md (#7859)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 18:01:51 +00:00
community-scripts-pr-app[bot]
bddde99252 Update CHANGELOG.md (#7858)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 18:01:39 +00:00
Chris
f1f8c1b279 BookLore: increase RAM (#7855)
- Build was failing due to OOM
2025-09-23 20:01:24 +02:00
community-scripts-pr-app[bot]
37a0a4add9 Update CHANGELOG.md (#7857)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 18:01:15 +00:00
Chris
02cede3f5d tools.func: Check for /usr/local/bin in PATH during yq setup (#7856)
- My Booklore update failed due to yq not being found despite installed
2025-09-23 20:00:48 +02:00
community-scripts-pr-app[bot]
42a7d57a42 Update versions.json (#7851)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 14:05:40 +02:00
community-scripts-pr-app[bot]
53b5f0d1fe Update CHANGELOG.md (#7850)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 11:23:29 +00:00
CanbiZ
4a56d8d9aa Remove not exist admin credentials from output (#7849) 2025-09-23 13:23:03 +02:00
community-scripts-pr-app[bot]
f819188a5e Update CHANGELOG.md (#7847)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 10:11:48 +00:00
Slaviša Arežina
4d6e3e5977 Update openwebui.json (#7843) 2025-09-23 12:11:21 +02:00
community-scripts-pr-app[bot]
d6fc527200 Update CHANGELOG.md (#7846)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 10:07:01 +00:00
community-scripts-pr-app[bot]
c103c3b03d Update CHANGELOG.md (#7845)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 10:06:51 +00:00
CanbiZ
2d290cb27f VM: Increase pv & xz functions (HA OS / Umbrel OS) (#7838) 2025-09-23 12:06:35 +02:00
community-scripts-pr-app[bot]
883efd1cd2 Update CHANGELOG.md (#7844)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 10:06:31 +00:00
CanbiZ
1f40670ea0 cosmos: add info note for configuration file (#7824) 2025-09-23 12:06:07 +02:00
community-scripts-pr-app[bot]
cec4e2d5c1 Update CHANGELOG.md (#7841)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 09:40:12 +00:00
CanbiZ
1fafb3f661 Suppress wrong errors from uv shell integration in setup_uv (#7822) 2025-09-23 11:39:46 +02:00
community-scripts-pr-app[bot]
b56b053e8b Update CHANGELOG.md (#7840)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 09:38:32 +00:00
CanbiZ
21f98835dc Update Tandoor install scripts for newer dependencies (#7826) 2025-09-23 11:38:07 +02:00
community-scripts-pr-app[bot]
ab455d7748 Update CHANGELOG.md (#7839)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 09:36:51 +00:00
CanbiZ
5382fa1dbd Update Monica and Outline to use Node.js 22 (#7833) 2025-09-23 11:36:29 +02:00
community-scripts-pr-app[bot]
6fa1938360 Update CHANGELOG.md (#7837)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:47:49 +00:00
community-scripts-pr-app[bot]
2a2df5b5cc Update CHANGELOG.md (#7836)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:47:27 +00:00
CanbiZ
f99d582eb5 ElementSynapse: add note for Bridge Install Methods (#7820) 2025-09-23 10:47:25 +02:00
community-scripts-pr-app[bot]
d3f24ae5b2 Update CHANGELOG.md (#7835)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:47:05 +00:00
CanbiZ
25e89f7bac Refactor Caddyfile configuration for headscale-admin (#7821) 2025-09-23 10:47:00 +02:00
community-scripts-pr-app[bot]
2686753448 Update CHANGELOG.md (#7834)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:46:56 +00:00
CanbiZ
19678e2534 Update Zabbix install for Debian 13 and agent selection (#7819) 2025-09-23 10:46:32 +02:00
community-scripts-pr-app[bot]
1ac8f90281 Update CHANGELOG.md (#7832)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:46:29 +00:00
Tobias
7cd3e40f9c tracktor: bump to debian 13 | feature bump (#7818) 2025-09-23 10:46:03 +02:00
community-scripts-pr-app[bot]
42191bdb5a Update CHANGELOG.md (#7831)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:45:46 +00:00
CanbiZ
aab1a9bce5 LiteLLM: Bump to Debian 13 & add deps (#7815) 2025-09-23 10:45:20 +02:00
community-scripts-pr-app[bot]
208226065b Update CHANGELOG.md (#7830)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:44:49 +00:00
community-scripts-pr-app[bot]
54e62749be Update CHANGELOG.md (#7829)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:44:40 +00:00
community-scripts-pr-app[bot]
2a8e2e62cd Update date in json (#7827)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-09-23 10:44:24 +02:00
CanbiZ
b15d7be4c3 Improve subscription element removal in post-install script (#7814) 2025-09-23 10:44:14 +02:00
community-scripts-pr-app[bot]
e208bc110b Update CHANGELOG.md (#7828)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 08:43:52 +00:00
push-app-to-main[bot]
b26ad61a33 UpSnap (#7825)
* 'Add new script'

* Remove redundant success message in upsnap.sh

* Update upsnap.json

* Fix JSON formatting in upsnap.json

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-09-23 10:43:29 +02:00
community-scripts-pr-app[bot]
5beaec9514 Update CHANGELOG.md (#7823)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 07:47:32 +00:00
CanbiZ
3a668870b7 gh: remove ai autolabel test (#7817) 2025-09-23 09:47:05 +02:00
community-scripts-pr-app[bot]
3266962630 Update CHANGELOG.md (#7816)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 06:14:21 +00:00
Chris
2a3f5d7b47 Immich: bump to v1.143.0 (#7801) 2025-09-23 08:13:57 +02:00
community-scripts-pr-app[bot]
fb4c3cf9e9 Update CHANGELOG.md (#7813)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 05:00:17 +00:00
Slaviša Arežina
e96ea4eb40 Fix release fetching (#7807) 2025-09-23 06:59:52 +02:00
community-scripts-pr-app[bot]
dfbe5f03ce Update CHANGELOG.md (#7810)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 00:14:05 +00:00
community-scripts-pr-app[bot]
9c53c70f6b Update versions.json (#7809)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-23 02:13:40 +02:00
community-scripts-pr-app[bot]
a3c7f468ef Update versions.json (#7800)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-22 14:05:53 +02:00
community-scripts-pr-app[bot]
605f7a0330 Update CHANGELOG.md (#7797)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-22 07:52:02 +00:00
Slaviša Arežina
306627378e Update shell check (#7796) 2025-09-22 09:51:34 +02:00
community-scripts-pr-app[bot]
0e464cb192 Update CHANGELOG.md (#7795)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-22 06:08:06 +00:00
Slaviša Arežina
277f6ce7d1 Paymenter: Installation and update fixes (#7792) 2025-09-22 08:07:33 +02:00
community-scripts-pr-app[bot]
a6d6f79943 Update CHANGELOG.md (#7794)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-22 00:13:28 +00:00
community-scripts-pr-app[bot]
a7ced850ab Update versions.json (#7793)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-22 02:13:01 +02:00
community-scripts-pr-app[bot]
eadca5f81f Update CHANGELOG.md (#7789)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 16:56:56 +00:00
HeedfulCrayon
5ab375fd89 fix openwebui update and installer (#7788)
* Update curl command to support resuming downloads

* fix: correct curl command for downloading Ollama to support resuming
2025-09-21 18:56:31 +02:00
community-scripts-pr-app[bot]
2dc95b6b22 Update CHANGELOG.md (#7787)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 16:14:33 +00:00
Tobias
57dd3d5a44 tracktor: add: cleanup before upgrade (#7782)
* tracktor: add: cleanup before upgrade

* tracktor: change to new clean_install
2025-09-21 18:14:12 +02:00
community-scripts-pr-app[bot]
25ddf48190 Update CHANGELOG.md (#7786)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 14:20:44 +00:00
CanbiZ
01b6bec1fe Implement clean install option in tools.func (#7785) 2025-09-21 16:20:18 +02:00
community-scripts-pr-app[bot]
d1ff8201b1 Update versions.json (#7784)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 14:05:18 +02:00
community-scripts-pr-app[bot]
c5c5ba1ede Update CHANGELOG.md (#7783)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 09:40:57 +00:00
HeedfulCrayon
e3aabd81a3 Update Ollama Installer in OpenWebUI to resume downloads if interrupted (#7779)
* Fix curl command options for downloading file

* Update curl command for Ollama installation
2025-09-21 11:40:33 +02:00
community-scripts-pr-app[bot]
4713941415 Update CHANGELOG.md (#7781)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 06:29:01 +00:00
CanbiZ
adda76f587 caddy: modify disk size and implement xCaddy update (#7775) 2025-09-21 08:28:39 +02:00
community-scripts-pr-app[bot]
cf597b6a26 Update CHANGELOG.md (#7780)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 06:28:35 +00:00
CanbiZ
20e8730a34 Harmonize and shorten JSON Names for PVE/PBS/PMG (#7773) 2025-09-21 08:28:14 +02:00
CanbiZ
9ce9de8e84 Fix regex to extract MySQL version correctly (#7774) 2025-09-21 08:28:07 +02:00
community-scripts-pr-app[bot]
ac3f969016 Update CHANGELOG.md (#7777)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 00:13:58 +00:00
community-scripts-pr-app[bot]
c0597842f8 Update versions.json (#7776)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-21 02:13:30 +02:00
community-scripts-pr-app[bot]
667d354059 Update CHANGELOG.md (#7767)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-20 16:26:54 +00:00
Michel Roegl-Brunner
d56c1e2f50 checkmk.sh update (#7765) 2025-09-20 18:26:28 +02:00
community-scripts-pr-app[bot]
3dfbc2d6ea Update versions.json (#7764)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-20 14:05:36 +02:00
community-scripts-pr-app[bot]
31b33d370e Update CHANGELOG.md (#7760)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-20 08:01:43 +00:00
Slaviša Arežina
d4d4c0e07a Increase resources (#7759) 2025-09-20 10:01:19 +02:00
community-scripts-pr-app[bot]
aded4d5809 Update CHANGELOG.md (#7758)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-20 07:02:31 +00:00
Michel Roegl-Brunner
c00308524b Replace Ubuntu 20.04 with Debian 13 in bug report template (#7757) 2025-09-20 09:02:08 +02:00
community-scripts-pr-app[bot]
fef7786714 Update CHANGELOG.md (#7756)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-20 00:12:08 +00:00
community-scripts-pr-app[bot]
0dfd337a9a Update versions.json (#7755)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-20 02:11:46 +02:00
community-scripts-pr-app[bot]
d99862fa24 Update CHANGELOG.md (#7747)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-19 18:52:42 +00:00
Slaviša Arežina
ac08d385c0 SigNoz: Fix wrong URL for Zookeeper (#7742)
* Fix install

* Update signoz-install.sh
2025-09-19 20:52:11 +02:00
community-scripts-pr-app[bot]
7a9de76acb Update CHANGELOG.md (#7745)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-19 12:57:29 +00:00
community-scripts-pr-app[bot]
35f3f043a7 Update CHANGELOG.md (#7744)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-19 12:57:13 +00:00
community-scripts-pr-app[bot]
4276df26d7 Update date in json (#7743)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-09-19 12:57:07 +00:00
push-app-to-main[bot]
5fec573533 Tunarr (#7735)
* 'Add new script'

* Refactor Intel Hardware Acceleration installation script

* Refactor hardware acceleration setup in tunarr-install.sh

Updated prompts and adjusted user group permissions for hardware acceleration setup.

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-09-19 14:56:46 +02:00
community-scripts-pr-app[bot]
ebd269a808 Update versions.json (#7740)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-19 14:07:04 +02:00
community-scripts-pr-app[bot]
532c0a95bb Update CHANGELOG.md (#7734)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-19 00:12:32 +00:00
community-scripts-pr-app[bot]
c078b11aa9 Update versions.json (#7733)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-19 02:12:09 +02:00
community-scripts-pr-app[bot]
ab8b025824 Update CHANGELOG.md (#7729)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 19:16:16 +00:00
Chris
e2044a0572 Immich: Debian Trixie (#7728)
* Immich: Debian Trixie

- Use Debian Stable repo for all dependencies
- Remove unneeded dependencies
- Replace `libmimalloc2.0` with `libmimalloc3`
- Remove pre-1.140.x workarounds
- Pin an Intel OpenVINO dependency
- Force use of Python3.11 for machine-learning builds
- Unpin custom photo-library revisions
- Remove old vchord patches
- Remove DB collation version refresh
- Exit on detection of Debian 12 or below with message
- Force hardlink as pnpm import method (fixes #7192)

* Update immich.sh

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-09-18 21:15:54 +02:00
community-scripts-pr-app[bot]
59e65eaba3 Update CHANGELOG.md (#7727)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 18:11:19 +00:00
Tobias
a2306d6b32 Delay chmod after updating beszel (#7725) 2025-09-18 20:10:51 +02:00
community-scripts-pr-app[bot]
3e71af1895 Update CHANGELOG.md (#7724)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 17:04:20 +00:00
Giovanni Pellerano
8a3b41867b Remove redundant globaleaks configuration (#7723) 2025-09-18 19:03:53 +02:00
community-scripts-pr-app[bot]
b4b9efeff2 Update CHANGELOG.md (#7722)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 13:23:20 +00:00
CanbiZ
5e2168b2d1 Cloudflared: Bump to Debian 13 (#7719) 2025-09-18 15:22:51 +02:00
community-scripts-pr-app[bot]
c00c1deb79 Update CHANGELOG.md (#7721)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 13:20:42 +00:00
CanbiZ
37e3739bd2 Update AdGuard Home to Debian 13 and improve install (#7720) 2025-09-18 15:20:15 +02:00
community-scripts-pr-app[bot]
f5eda37397 Update versions.json (#7718)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 14:07:02 +02:00
community-scripts-pr-app[bot]
9e42c801f1 Update .app files (#7717)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-09-18 13:26:53 +02:00
community-scripts-pr-app[bot]
e4d6dfc885 Update CHANGELOG.md (#7716)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 10:57:57 +00:00
Slaviša Arežina
14894f84b6 Alpine-Caddy (#7711) 2025-09-18 12:57:30 +02:00
community-scripts-pr-app[bot]
b5f70e6e77 Update CHANGELOG.md (#7715)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 10:56:31 +00:00
CanbiZ
2919ce16f1 pve-tool: execute.sh by @jeroenzwart (#7708) 2025-09-18 12:56:01 +02:00
community-scripts-pr-app[bot]
38cf6b2f46 Update CHANGELOG.md (#7714)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 10:20:34 +00:00
community-scripts-pr-app[bot]
c390fb925d Update CHANGELOG.md (#7713)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 10:20:15 +00:00
community-scripts-pr-app[bot]
a28fdac3f0 Update date in json (#7712)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-09-18 10:20:12 +00:00
push-app-to-main[bot]
41b27b31dc GlobaLeaks (#7707)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
2025-09-18 12:19:52 +02:00
CanbiZ
7ef8afe4d2 Refactor autolabeler workflow to simplify steps 2025-09-18 12:06:04 +02:00
CanbiZ
694d9c203e Refactor AI label review workflow and improve config 2025-09-18 12:03:52 +02:00
CanbiZ
76dcc45e9f Update autolabeler to use environment variable for config 2025-09-18 12:01:42 +02:00
CanbiZ
a0952e9f69 Use jq to load priority config from JSON 2025-09-18 11:58:39 +02:00
community-scripts-pr-app[bot]
3bd6b6e540 Update CHANGELOG.md (#7710)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 09:53:42 +00:00
community-scripts-pr-app[bot]
61be53cc26 Update CHANGELOG.md (#7709)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 09:53:28 +00:00
CanbiZ
02eda516df Add label priority configuration for GitHub 2025-09-18 11:53:20 +02:00
CanbiZ
25213fabaa Add AI label review step to autolabeler workflow 2025-09-18 11:53:02 +02:00
Zachary Laughlin
ad8a4f63c4 Add warning note about containerized version limitations (#7704) 2025-09-18 09:30:09 +02:00
community-scripts-pr-app[bot]
bcce0e20c1 Update CHANGELOG.md (#7706)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-18 06:55:10 +00:00
Chris
515c4073c4 Gatus: check for GO path before update (#7705) 2025-09-18 08:54:47 +02:00
94 changed files with 1877 additions and 748 deletions

View File

@@ -60,7 +60,7 @@ body:
- Alpine
- Debian 11
- Debian 12
- Ubuntu 20.04
- Debian 13
- Ubuntu 22.04
- Ubuntu 24.04
- Ubuntu 24.10

View File

@@ -10,8 +10,143 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-09-24
## 2025-09-23
### 🆕 New Scripts
- UpSnap ([#7825](https://github.com/community-scripts/ProxmoxVE/pull/7825))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- tools.func: Check for /usr/local/bin in PATH during yq setup [@vhsdream](https://github.com/vhsdream) ([#7856](https://github.com/community-scripts/ProxmoxVE/pull/7856))
- BookLore: increase RAM [@vhsdream](https://github.com/vhsdream) ([#7855](https://github.com/community-scripts/ProxmoxVE/pull/7855))
- Bump Immich to v1.143.1 [@vhsdream](https://github.com/vhsdream) ([#7864](https://github.com/community-scripts/ProxmoxVE/pull/7864))
- zabbix: Remove not exist admin credentials from output [@MickLesk](https://github.com/MickLesk) ([#7849](https://github.com/community-scripts/ProxmoxVE/pull/7849))
- Suppress wrong errors from uv shell integration in setup_uv [@MickLesk](https://github.com/MickLesk) ([#7822](https://github.com/community-scripts/ProxmoxVE/pull/7822))
- Refactor Caddyfile configuration for headscale-admin [@MickLesk](https://github.com/MickLesk) ([#7821](https://github.com/community-scripts/ProxmoxVE/pull/7821))
- Improve subscription element removal (mobile) in post-pve script [@MickLesk](https://github.com/MickLesk) ([#7814](https://github.com/community-scripts/ProxmoxVE/pull/7814))
- Blocky: Fix release fetching [@tremor021](https://github.com/tremor021) ([#7807](https://github.com/community-scripts/ProxmoxVE/pull/7807))
- #### ✨ New Features
- Improve globaleaks install ensuring install can proceed without user … [@evilaliv3](https://github.com/evilaliv3) ([#7860](https://github.com/community-scripts/ProxmoxVE/pull/7860))
- Manage My Damn Life: use NodeJS 22 [@vhsdream](https://github.com/vhsdream) ([#7861](https://github.com/community-scripts/ProxmoxVE/pull/7861))
- VM: Increase pv & xz functions (HA OS / Umbrel OS) [@MickLesk](https://github.com/MickLesk) ([#7838](https://github.com/community-scripts/ProxmoxVE/pull/7838))
- Tandoor: update for newer dependencies (psql) + bump nodejs to 22 [@MickLesk](https://github.com/MickLesk) ([#7826](https://github.com/community-scripts/ProxmoxVE/pull/7826))
- Update Monica and Outline to use Node.js 22 [@MickLesk](https://github.com/MickLesk) ([#7833](https://github.com/community-scripts/ProxmoxVE/pull/7833))
- Update Zabbix install for Debian 13 and agent selection [@MickLesk](https://github.com/MickLesk) ([#7819](https://github.com/community-scripts/ProxmoxVE/pull/7819))
- tracktor: bump to debian 13 | feature bump [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7818](https://github.com/community-scripts/ProxmoxVE/pull/7818))
- LiteLLM: Bump to Debian 13 & add deps [@MickLesk](https://github.com/MickLesk) ([#7815](https://github.com/community-scripts/ProxmoxVE/pull/7815))
- Immich: bump to v1.143.0 [@vhsdream](https://github.com/vhsdream) ([#7801](https://github.com/community-scripts/ProxmoxVE/pull/7801))
### 🧰 Maintenance
- #### 📂 Github
- gh: remove ai autolabel test [@MickLesk](https://github.com/MickLesk) ([#7817](https://github.com/community-scripts/ProxmoxVE/pull/7817))
### 🌐 Website
- #### 📝 Script Information
- OpenWebUI: Add information about Ollama [@tremor021](https://github.com/tremor021) ([#7843](https://github.com/community-scripts/ProxmoxVE/pull/7843))
- cosmos: add info note for configuration file [@MickLesk](https://github.com/MickLesk) ([#7824](https://github.com/community-scripts/ProxmoxVE/pull/7824))
- ElementSynapse: add note for Bridge Install Methods [@MickLesk](https://github.com/MickLesk) ([#7820](https://github.com/community-scripts/ProxmoxVE/pull/7820))
## 2025-09-22
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- [core]: Update detection of current running subshell [@tremor021](https://github.com/tremor021) ([#7796](https://github.com/community-scripts/ProxmoxVE/pull/7796))
- Paymenter: Installation and update fixes [@tremor021](https://github.com/tremor021) ([#7792](https://github.com/community-scripts/ProxmoxVE/pull/7792))
## 2025-09-21
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- fix openwebui update and installer [@HeedfulCrayon](https://github.com/HeedfulCrayon) ([#7788](https://github.com/community-scripts/ProxmoxVE/pull/7788))
- tracktor: add: cleanup before upgrade [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7782](https://github.com/community-scripts/ProxmoxVE/pull/7782))
- Fix regex to extract MySQL version correctly [@MickLesk](https://github.com/MickLesk) ([#7774](https://github.com/community-scripts/ProxmoxVE/pull/7774))
- Update Ollama Installer in OpenWebUI to resume downloads if interrupted [@HeedfulCrayon](https://github.com/HeedfulCrayon) ([#7779](https://github.com/community-scripts/ProxmoxVE/pull/7779))
- #### ✨ New Features
- Implement clean install option in tools.func (fetch_and_deploy_gh_release) [@MickLesk](https://github.com/MickLesk) ([#7785](https://github.com/community-scripts/ProxmoxVE/pull/7785))
- caddy: modify disk size and implement xCaddy update [@MickLesk](https://github.com/MickLesk) ([#7775](https://github.com/community-scripts/ProxmoxVE/pull/7775))
### 🌐 Website
- #### 📝 Script Information
- Harmonize and shorten JSON Names for PVE/PBS/PMG [@MickLesk](https://github.com/MickLesk) ([#7773](https://github.com/community-scripts/ProxmoxVE/pull/7773))
## 2025-09-20
### 🚀 Updated Scripts
- checkmk.sh Update: Revert old Pr [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#7765](https://github.com/community-scripts/ProxmoxVE/pull/7765))
- #### 🐞 Bug Fixes
- Wazuh: Increase HDD size [@tremor021](https://github.com/tremor021) ([#7759](https://github.com/community-scripts/ProxmoxVE/pull/7759))
### 🧰 Maintenance
- #### 📂 Github
- Add Debian 13 in bug report template [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#7757](https://github.com/community-scripts/ProxmoxVE/pull/7757))
## 2025-09-19
### 🆕 New Scripts
- Tunarr ([#7735](https://github.com/community-scripts/ProxmoxVE/pull/7735))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- SigNoz: Fix wrong URL for Zookeeper [@tremor021](https://github.com/tremor021) ([#7742](https://github.com/community-scripts/ProxmoxVE/pull/7742))
## 2025-09-18
### 🆕 New Scripts
- Alpine-Caddy [@tremor021](https://github.com/tremor021) ([#7711](https://github.com/community-scripts/ProxmoxVE/pull/7711))
- pve-tool: execute.sh by @jeroenzwart [@MickLesk](https://github.com/MickLesk) ([#7708](https://github.com/community-scripts/ProxmoxVE/pull/7708))
- GlobaLeaks ([#7707](https://github.com/community-scripts/ProxmoxVE/pull/7707))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Delay chmod after updating beszel [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7725](https://github.com/community-scripts/ProxmoxVE/pull/7725))
- Remove redundant globaleaks configuration [@evilaliv3](https://github.com/evilaliv3) ([#7723](https://github.com/community-scripts/ProxmoxVE/pull/7723))
- Gatus: check for GO path before update [@vhsdream](https://github.com/vhsdream) ([#7705](https://github.com/community-scripts/ProxmoxVE/pull/7705))
- #### ✨ New Features
- Cloudflared: Bump to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#7719](https://github.com/community-scripts/ProxmoxVE/pull/7719))
- AdGuard Home: Bump to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#7720](https://github.com/community-scripts/ProxmoxVE/pull/7720))
- #### 🔧 Refactor
- Immich: Debian Trixie [@vhsdream](https://github.com/vhsdream) ([#7728](https://github.com/community-scripts/ProxmoxVE/pull/7728))
### 🌐 Website
- #### 📝 Script Information
- Add Warning for Containerized Home Assistant [@ZaxLofful](https://github.com/ZaxLofful) ([#7704](https://github.com/community-scripts/ProxmoxVE/pull/7704))
## 2025-09-17
### 🚀 Updated Scripts

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -27,7 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "Adguard Home should be updated via the user interface."
msg_error "Adguard Home can only be updated via the user interface."
exit
}

47
ct/alpine-caddy.sh Normal file
View File

@@ -0,0 +1,47 @@
#!/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: cobalt (cobaltgit)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://caddyserver.com/
APP="Alpine-Caddy"
var_tags="${var_tags:-webserver}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-256}"
var_disk="${var_disk:-3}"
var_os="${var_os:-alpine}"
var_version="${var_version:-3.22}"
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 /etc/caddy ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP LXC"
$STD apk -U upgrade
msg_ok "Updated $APP LXC"
msg_info "Restarting Caddy"
rc-service caddy restart
msg_ok "Restarted Caddy"
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}:80${CL}"

View File

@@ -33,7 +33,7 @@ function update_script() {
msg_info "Updating $APP"
$STD /opt/beszel/beszel update
chmod +x /opt/beszel/beszel
sleep 2 && chmod +x /opt/beszel/beszel
msg_ok "Updated $APP"
msg_info "Starting $APP"

View File

@@ -40,7 +40,7 @@ function update_script() {
rm -rf /opt/blocky
msg_ok "Removed Old Version"
fetch_and_deploy_gh_release "blocky" "0xERR0R/blocky" "prebuild" "latest" "/opt/blocky" "blocky_*_linux_x86_64.tar.gz"
fetch_and_deploy_gh_release "blocky" "0xERR0R/blocky" "prebuild" "latest" "/opt/blocky" "blocky_*_Linux_x86_64.tar.gz"
msg_info "Restore Config"
mv /opt/config.yml /opt/blocky/config.yml

View File

@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="BookLore"
var_tags="${var_tags:-books;library}"
var_cpu="${var_cpu:-3}"
var_ram="${var_ram:-2048}"
var_ram="${var_ram:-3072}"
var_disk="${var_disk:-7}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"

View File

@@ -9,7 +9,7 @@ APP="Caddy"
var_tags="${var_tags:-webserver}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
@@ -31,6 +31,19 @@ function update_script() {
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated $APP LXC"
if command -v xcaddy >/dev/null 2>&1; then
install_go
msg_info "Updating xCaddy"
cd /opt
RELEASE=$(curl -fsSL https://api.github.com/repos/caddyserver/xcaddy/releases/latest | grep "tag_name" | awk -F '"' '{print $4}')
VERSION="${RELEASE#v}"
curl -fsSL "https://github.com/caddyserver/xcaddy/releases/download/${RELEASE}/xcaddy_${VERSION}_linux_amd64.deb" -o "xcaddy_${VERSION}_linux_amd64.deb"
$STD dpkg -i "xcaddy_${VERSION}_linux_amd64.deb"
rm -f "xcaddy_${VERSION}_linux_amd64.deb"
$STD xcaddy build
msg_ok "Updated xCaddy"
fi
exit
}

View File

@@ -27,7 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "checkmk" "checkmk/checkmk"; then
RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -Ev 'rc|b' | sort -V | tail -n 1)
msg_info "Updating ${APP} to v${RELEASE}"
$STD omd stop monitoring
@@ -41,7 +41,7 @@ function update_script() {
rm -rf /opt/checkmk.deb
msg_ok "Updated ${APP}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -23,13 +23,13 @@ function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /var ]]; then
if [[ ! -f /etc/systemd/system/cloudflared.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP LXC"
$STD apt-get update
$STD apt-get -y upgrade
$STD apt update
$STD apt -y upgrade
msg_ok "Updated $APP LXC"
exit
}

View File

@@ -33,6 +33,11 @@ function update_script() {
systemctl stop gatus
msg_ok "Stopped $APP"
if [[ :$PATH: != *":/usr/local/bin:"* ]]; then
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc
source ~/.bashrc
fi
mv /opt/gatus/config/config.yaml /opt
rm -rf /opt/gatus
fetch_and_deploy_gh_release "gatus" "TwiN/gatus"

43
ct/globaleaks.sh Normal file
View File

@@ -0,0 +1,43 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 communtiy-scripts ORG
# Author: Giovanni Pellerano (evilaliv3)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/globaleaks/globaleaks-whistleblowing-software
APP="GlobaLeaks"
var_tags="${var_tags:-whistleblowing-software}"
var_disk="${var_disk:-4}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /usr/sbin/globaleaks ]]; then
msg_error "No ${APP} installation found!"
exit
fi
msg_info "Updating $APP LXC"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated $APP LXC"
}
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}https://${IP}${CL}"

6
ct/headers/alpine-caddy Normal file
View File

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

6
ct/headers/globaleaks Normal file
View File

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

6
ct/headers/tunarr Normal file
View File

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

6
ct/headers/upsnap Normal file
View File

@@ -0,0 +1,6 @@
__ __ _____
/ / / /___ / ___/____ ____ _____
/ / / / __ \\__ \/ __ \/ __ `/ __ \
/ /_/ / /_/ /__/ / / / / /_/ / /_/ /
\____/ .___/____/_/ /_/\__,_/ .___/
/_/ /_/

View File

@@ -53,3 +53,5 @@ 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}Headscale API: ${IP}/api (no Frontend) | headscale-admin: http://${IP}/admin/${CL}"

View File

@@ -11,7 +11,7 @@ var_disk="${var_disk:-20}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-4096}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -27,11 +27,22 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if [[ -f /etc/apt/sources.list.d/immich.list ]]; then
msg_error "Wrong Debian version detected!"
msg_error "You must upgrade your LXC to Debian Trixie before updating."
msg_error "Please visit https://github.com/community-scripts/ProxmoxVE/discussions/7726 for details."
echo "${TAB3} If you have upgraded your LXC to Trixie and you still see this message, please open an Issue in the Community-Scripts repo."
exit
fi
setup_uv
PNPM_VERSION="$(curl -fsSL "https://raw.githubusercontent.com/immich-app/immich/refs/heads/main/package.json" | jq -r '.packageManager | split("@")[1]')"
NODE_VERSION="22" NODE_MODULE="pnpm@${PNPM_VERSION}" setup_nodejs
if dpkg -l | grep -q "libmimalloc2.0"; then
$STD apt-get update && $STD apt-get install -y libmimalloc3
fi
STAGING_DIR=/opt/staging
BASE_DIR=${STAGING_DIR}/base-images
SOURCE_DIR=${STAGING_DIR}/image-source
@@ -45,8 +56,10 @@ function update_script() {
for url in "${INTEL_URLS[@]}"; do
curl -fsSLO "$url"
done
$STD apt-mark unhold libigdgmm12
$STD apt install -y ./*.deb
rm ./*.deb
$STD apt-mark hold libigdgmm12
msg_ok "Intel iGPU dependencies updated"
fi
rm ~/Dockerfile
@@ -61,7 +74,7 @@ function update_script() {
done
msg_ok "Image-processing libraries up to date"
fi
RELEASE="1.142.1"
RELEASE="1.143.1"
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
msg_info "Stopping Services"
systemctl stop immich-web
@@ -78,22 +91,10 @@ function update_script() {
if [[ ! -f ~/.vchord_version ]] || [[ "$VCHORD_RELEASE" != "$(cat ~/.vchord_version)" ]]; then
msg_info "Updating VectorChord"
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres pg_dumpall --clean --if-exists --username=postgres | gzip >/etc/postgresql/immich-db-vchord0.3.0.sql.gz
chown postgres /etc/postgresql/immich-db-vchord0.3.0.sql.gz
$STD sudo -u postgres gunzip --stdout /etc/postgresql/immich-db-vchord0.3.0.sql.gz |
sed -e "s/SELECT pg_catalog.set_config('search_path', '', false);/SELECT pg_catalog.set_config('search_path', 'public, pg_catalog', true);/g" \
-e "/vchordrq.prewarm_dim/d" |
sudo -u postgres psql
fi
curl -fsSL "https://github.com/tensorchord/vectorchord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
$STD apt install -y ./vchord.deb
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
systemctl restart postgresql
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres psql -d immich -c "REINDEX INDEX face_index;"
$STD sudo -u postgres psql -d immich -c "REINDEX INDEX clip_index;"
fi
echo "$VCHORD_RELEASE" >~/.vchord_version
rm ./vchord.deb
msg_ok "Updated VectorChord to v${VCHORD_RELEASE}"
@@ -126,9 +127,6 @@ EOF
msg_info "Updating ${APP} web and microservices"
cd "$SRC_DIR"/server
if [[ "$RELEASE" == "1.135.1" ]]; then
rm ./src/schema/migrations/1750323941566-UnsetPrewarmDimParameter.ts
fi
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
export CI=1
corepack enable
@@ -144,6 +142,7 @@ EOF
# openapi & web build
cd "$SRC_DIR"
echo "packageImportMethod: hardlink" >>./pnpm-workspace.yaml
$STD pnpm --filter @immich/sdk --filter immich-web --frozen-lockfile --force install
$STD pnpm --filter @immich/sdk --filter immich-web build
cp -a web/build "$APP_DIR"/www
@@ -158,16 +157,16 @@ EOF
msg_ok "Updated ${APP} web and microservices"
cd "$SRC_DIR"/machine-learning
mkdir -p "$ML_DIR"
mkdir -p "$ML_DIR" && chown -R immich:immich "$ML_DIR"
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
if [[ -f ~/.openvino ]]; then
msg_info "Updating HW-accelerated machine-learning"
$STD /usr/local/bin/uv sync --extra openvino --no-cache --active
$STD sudo --preserve-env=VIRTUAL_ENV -nu immich uv sync --extra openvino --active -n -p python3.11 --managed-python
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
msg_ok "Updated HW-accelerated machine-learning"
else
msg_info "Updating machine-learning"
$STD /usr/local/bin/uv sync --extra cpu --no-cache --active
$STD sudo --preserve-env=VIRTUAL_ENV -nu immich uv sync --extra cpu --active -n -p python3.11 --managed-python
msg_ok "Updated machine-learning"
fi
cd "$SRC_DIR"
@@ -186,10 +185,6 @@ EOF
ln -s "$GEO_DIR" "$APP_DIR"
chown -R immich:immich "$INSTALL_DIR"
if [[ ! -f ~/.debian_version.bak ]]; then
cp /etc/debian_version ~/.debian_version.bak
sed -i 's/.*/13.0/' /etc/debian_version
fi
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Cleaning up"
@@ -205,8 +200,7 @@ function compile_libjxl() {
SOURCE=${SOURCE_DIR}/libjxl
JPEGLI_LIBJPEG_LIBRARY_SOVERSION="62"
JPEGLI_LIBJPEG_LIBRARY_VERSION="62.3.0"
# : "${LIBJXL_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libjxl.json)}"
: "${LIBJXL_REVISION:=794a5dcf0d54f9f0b20d288a12e87afb91d20dfc}"
: "${LIBJXL_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libjxl.json)}"
if [[ "$LIBJXL_REVISION" != "$(grep 'libjxl' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libjxl"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -253,8 +247,7 @@ function compile_libheif() {
$STD apt-get install -y libaom-dev
local update="required"
fi
# : "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}"
: "${LIBHEIF_REVISION:=35dad50a9145332a7bfdf1ff6aef6801fb613d68}"
: "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}"
if [[ "${update:-}" ]] || [[ "$LIBHEIF_REVISION" != "$(grep 'libheif' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libheif"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -285,9 +278,7 @@ function compile_libheif() {
function compile_libraw() {
SOURCE=${SOURCE_DIR}/libraw
local update
# : "${LIBRAW_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libraw.json)}"
: "${LIBRAW_REVISION:=09bea31181b43e97959ee5452d91e5bc66365f1f}"
: "${LIBRAW_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libraw.json)}"
if [[ "$LIBRAW_REVISION" != "$(grep 'libraw' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libraw"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -308,15 +299,15 @@ function compile_libraw() {
function compile_imagemagick() {
SOURCE=$SOURCE_DIR/imagemagick
# : "${IMAGEMAGICK_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/imagemagick.json)}"
: "${IMAGEMAGICK_REVISION:=8289a3388a085ad5ae81aa6812f21554bdfd54f2}"
if [[ "$IMAGEMAGICK_REVISION" != "$(grep 'imagemagick' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
: "${IMAGEMAGICK_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/imagemagick.json)}"
if [[ "$IMAGEMAGICK_REVISION" != "$(grep 'imagemagick' ~/.immich_library_revisions | awk '{print $2}')" ]] ||
! grep -q 'DMAGICK_LIBRAW' /usr/local/lib/ImageMagick-7*/config-Q16HDRI/configure.xml; then
msg_info "Recompiling ImageMagick"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
$STD git clone https://github.com/ImageMagick/ImageMagick.git "$SOURCE"
cd "$SOURCE"
$STD git reset --hard "$IMAGEMAGICK_REVISION"
$STD ./configure --with-modules
$STD ./configure --with-modules CPPFLAGS="-DMAGICK_LIBRAW_VERSION_TAIL=202502"
$STD make -j"$(nproc)"
$STD make install
ldconfig /usr/local/lib
@@ -329,8 +320,7 @@ function compile_imagemagick() {
function compile_libvips() {
SOURCE=$SOURCE_DIR/libvips
# : "${LIBVIPS_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libvips.json)}"
: "${LIBVIPS_REVISION:=8fa37a64547e392d3808eed8d72adab7e02b3d00}"
: "${LIBVIPS_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libvips.json)}"
if [[ "$LIBVIPS_REVISION" != "$(grep 'libvips' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libvips"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
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"
@@ -29,23 +29,24 @@ function update_script() {
exit
fi
msg_info "Stopping ${APP}"
msg_info "Stopping Service"
systemctl stop litellm
msg_ok "Stopped ${APP}"
msg_ok "Stopped Service"
VENV_PATH="/opt/litellm/.venv"
PYTHON_VERSION="3.13" setup_uv
msg_info "Updating $APP"
msg_info "Updating LiteLLM"
$STD "$VENV_PATH/bin/python" -m pip install --upgrade litellm[proxy] prisma
msg_ok "LiteLLM updated"
msg_info "Updating DB Schema"
$STD uv --directory=/opt/litellm run litellm --config /opt/litellm/litellm.yaml --use_prisma_db_push --skip_server_startup
msg_ok "DB Schema Updated"
msg_info "Starting ${APP}"
msg_info "Starting Service"
systemctl start litellm
msg_ok "Started ${APP}"
msg_ok "Started Service"
msg_ok "Updated Successfully"
exit
}

View File

@@ -35,12 +35,15 @@ function update_script() {
msg_info "Creating Backup"
cp /opt/mmdl/.env /opt/mmdl.env
rm -rf /opt/mmdl
msg_ok "Backup Created"
fetch_and_deploy_gh_release "mmdl" "intri-in/manage-my-damn-life-nextjs" "tarball"
NODE_VERSION="22" setup_nodejs
msg_info "Configuring ${APP}"
cd /opt/mmdl
export NEXT_TELEMETRY_DISABLED=1
$STD npm install
$STD npm run migrate
$STD npm run build

View File

@@ -27,6 +27,9 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
if check_for_gh_release "monica" "monicahq/monica"; then
msg_info "Stopping Service"
systemctl stop apache2

View File

@@ -36,7 +36,7 @@ function update_script() {
msg_info "Stopping Service"
systemctl stop ollama
msg_ok "Stopped Service"
curl -fsSLO https://ollama.com/download/ollama-linux-amd64.tgz
curl -fsSLO -C - https://ollama.com/download/ollama-linux-amd64.tgz
rm -rf /usr/lib/ollama
rm -rf /usr/bin/ollama
tar -C /usr -xzf ollama-linux-amd64.tgz

View File

@@ -28,6 +28,8 @@ function update_script() {
exit
fi
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
if check_for_gh_release "outline" "outline/outline"; then
msg_info "Stopping Services"
systemctl stop outline
@@ -37,7 +39,7 @@ function update_script() {
cp /opt/outline/.env /opt
msg_ok "Backup created"
fetch_and_deploy_gh_release "outline" "outline/outline" "tarball"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "outline" "outline/outline" "tarball"
msg_info "Updating ${APP}"
cd /opt/outline

View File

@@ -39,7 +39,7 @@ function update_script() {
if check_for_gh_release "paymenter" "paymenter/paymenter"; then
msg_info "Updating ${APP}"
cd /opt/paymenter
$STD php artisan p:upgrade --no-interaction
$STD php artisan app:upgrade --no-interaction
echo "${CHECK_UPDATE_RELEASE}" >~/.paymenter
msg_ok "Updated Successfully"
fi

View File

@@ -42,7 +42,7 @@ function update_script() {
mv /opt/tandoor /opt/tandoor.bak
msg_ok "Backup Created"
NODE_VERSION="20" NODE_MODULE="yarn" setup_nodejs
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -33,22 +33,23 @@ function update_script() {
systemctl stop tracktor
msg_ok "Stopped Service"
msg_info "Creating Backup"
cp /opt/tracktor/app/backend/.env /opt/tracktor.env
msg_ok "Created Backup"
msg_info "Correcting Services"
if [ -f /opt/tracktor/app/backend/.env ]; then
mv /opt/tracktor/app/backend/.env /opt/tracktor.env
echo 'AUTH_PIN=123456' >> /opt/tracktor.env
sed -i 's|^EnvironmentFile=.*|EnvironmentFile=/opt/tracktor.env|' /etc/systemd/system/tracktor.service
systemctl daemon-reload
fi
msg_ok "Corrected Services"
setup_nodejs
fetch_and_deploy_gh_release "tracktor" "javedh-dev/tracktor" "tarball" "latest" "/opt/tracktor"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "tracktor" "javedh-dev/tracktor" "tarball" "latest" "/opt/tracktor"
msg_info "Updating ${APP}"
msg_info "Updating tracktor"
cd /opt/tracktor
$STD npm install
$STD npm run build
msg_ok "Updated $APP"
msg_info "Restoring Backup"
cp /opt/tracktor.env /opt/tracktor/app/backend/.env
msg_ok "Restored Backup"
msg_ok "Updated tracktor"
msg_info "Starting Service"
systemctl start tracktor

79
ct/tunarr.sh Normal file
View File

@@ -0,0 +1,79 @@
#!/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: chrisbenincasa
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://tunarr.com/
APP="Tunarr"
var_tags="${var_tags:-iptv}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-5}"
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/tunarr ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "tunarr" "chrisbenincasa/tunarr"; then
msg_info "Stopping Service"
systemctl stop tunarr
msg_ok "Stopped Service"
msg_info "Creating Backup"
if [ -d "/usr/local/share/tunarr" ]; then
tar -czf "/opt/${APP}_backup_$(date +%F).tar.gz" /usr/local/share/tunarr $STD
msg_ok "Backup Created"
else
msg_error "Backup failed: /usr/local/share/tunarr does not exist"
fi
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "tunarr" "chrisbenincasa/tunarr" "singlefile" "latest" "/opt/tunarr" "*linux-x64"
msg_info "Starting Service"
systemctl start tunarr
msg_ok "Started Service"
msg_ok "Update Successfully"
fi
if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then
msg_info "Stopping Service"
systemctl stop tunarr
msg_ok "Stopped Service"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz"
msg_info "Set ErsatzTV-ffmpeg links"
chmod +x /opt/ErsatzTV-ffmpeg/bin/*
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffmpeg /usr/local/bin/ffmpeg
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffplay /usr/local/bin/ffplay
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/local/bin/ffprobe
msg_ok "ffmpeg links set"
msg_info "Starting Service"
systemctl start tunarr
msg_ok "Started Service"
msg_ok "Update 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}:8000${CL}"

53
ct/upsnap.sh Normal file
View File

@@ -0,0 +1,53 @@
#!/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/seriousm4x/UpSnap
APP="UpSnap"
var_tags="${var_tags:-network}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}"
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/upsnap ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "upsnap" "seriousm4x/UpSnap"; then
msg_info "Stopping Services"
systemctl stop upsnap
msg_ok "Stopped Services"
fetch_and_deploy_gh_release "upsnap" "seriousm4x/UpSnap" "prebuild" "latest" "/opt/upsnap" "UpSnap_*_linux_amd64.zip"
msg_info "Starting Services"
systemctl start upsnap
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}:8090${CL}"

View File

@@ -9,7 +9,7 @@ APP="Wazuh"
var_tags="${var_tags:-security;monitoring}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-18}"
var_disk="${var_disk:-25}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -23,37 +23,72 @@ function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/zabbix/zabbix_server.conf ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Stopping ${APP} Services"
systemctl stop zabbix-server zabbix-agent2
msg_ok "Stopped ${APP} Services"
msg_info "Updating $APP LXC"
. /etc/os-release
if [ "$VERSION_CODENAME" != "trixie" ]; then
msg_error "Unsupported Debian version: $VERSION_CODENAME please upgrade to Debian 13 (Trixie) before updating Zabbix."
exit 1
fi
if systemctl list-unit-files | grep -q zabbix-agent2.service; then
AGENT_SERVICE="zabbix-agent2"
else
AGENT_SERVICE="zabbix-agent"
fi
msg_info "Stopping Services"
systemctl stop zabbix-server $AGENT_SERVICE
msg_ok "Stopped Services"
msg_info "Updating Zabbix"
mkdir -p /opt/zabbix-backup/
cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/
cp -R /usr/share/zabbix/ /opt/zabbix-backup/
#cp -R /usr/share/zabbix-* /opt/zabbix-backup/ Remove temporary
rm -Rf /etc/apt/sources.list.d/zabbix.list
cd /tmp
curl -fsSL "$(curl -fsSL https://repo.zabbix.com/zabbix/ |
grep -oP '(?<=href=")[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1 |
xargs -I{} echo "https://repo.zabbix.com/zabbix/{}/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb")" \
-o /tmp/zabbix-release_latest+debian12_all.deb
$STD dpkg -i zabbix-release_latest+debian12_all.deb
$STD apt-get update
$STD apt-get install --only-upgrade zabbix-server-pgsql zabbix-frontend-php zabbix-agent2 zabbix-agent2-plugin-*
xargs -I{} echo "https://repo.zabbix.com/zabbix/{}/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian13_all.deb")" \
-o /tmp/zabbix-release_latest+debian13_all.deb
$STD dpkg -i zabbix-release_latest+debian13_all.deb
$STD apt update
msg_info "Starting ${APP} Services"
systemctl start zabbix-server zabbix-agent2
$STD apt install --only-upgrade zabbix-server-pgsql zabbix-frontend-php php8.4-pgsql
if [ "$AGENT_SERVICE" = "zabbix-agent2" ]; then
$STD apt install --only-upgrade zabbix-agent2 zabbix-agent2-plugin-postgresql
if [ -f /etc/zabbix/zabbix_agent2.d/plugins.d/nvidia.conf ]; then
sed -i 's|^Plugins.NVIDIA.System.Path=.*|# Plugins.NVIDIA.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-nvidia-gpu|' \
/etc/zabbix/zabbix_agent2.d/plugins.d/nvidia.conf
fi
else
$STD apt install --only-upgrade zabbix-agent
fi
if command -v fping >/dev/null 2>&1; then
FPING_PATH=$(command -v fping)
sed -i "s|^#\?FpingLocation=.*|FpingLocation=$FPING_PATH|" /etc/zabbix/zabbix_server.conf
fi
if command -v fping6 >/dev/null 2>&1; then
FPING6_PATH=$(command -v fping6)
sed -i "s|^#\?Fping6Location=.*|Fping6Location=$FPING6_PATH|" /etc/zabbix/zabbix_server.conf
fi
msg_ok "Updated Zabbix"
msg_info "Starting Services"
systemctl start zabbix-server $AGENT_SERVICE
systemctl restart apache2
msg_ok "Started ${APP} Services"
msg_ok "Started Services"
msg_info "Cleaning Up"
rm -rf /tmp/zabbix-release_latest+debian12_all.deb
rm -rf /tmp/zabbix-release_latest+debian13_all.deb
msg_ok "Cleaned"
msg_ok "Updated Successfully"
exit

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE LXC Tag",
"name": "PVE LXC Tag",
"slug": "add-iptag",
"categories": [
1

View File

@@ -23,7 +23,7 @@
"ram": 512,
"hdd": 2,
"os": "debian",
"version": "12"
"version": "13"
}
},
{
@@ -44,7 +44,7 @@
},
"notes": [
{
"text": "Adguard Home can be updated via the user interface.",
"text": "AdGuard Home can only be updated via the user interface.",
"type": "info"
}
]

View File

@@ -20,7 +20,7 @@
"script": "ct/booklore.sh",
"resources": {
"cpu": 3,
"ram": 2048,
"ram": 3072,
"hdd": 7,
"os": "debian",
"version": "12"

View File

@@ -4,7 +4,7 @@
"categories": [
21
],
"date_created": "2024-05-11",
"date_created": "2025-09-17",
"type": "ct",
"updateable": true,
"privileged": false,
@@ -21,10 +21,21 @@
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 4,
"hdd": 6,
"os": "debian",
"version": "12"
}
},
{
"type": "alpine",
"script": "ct/alpine-caddy.sh",
"resources": {
"cpu": 1,
"ram": 256,
"hdd": 3,
"os": "alpine",
"version": "3.22"
}
}
],
"default_credentials": {

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE LXC Cleaner",
"name": "PVE LXC Cleaner",
"slug": "clean-lxcs",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Clean Orphaned LVM",
"name": "PVE Clean Orphaned LVM",
"slug": "clean-orphaned-lvm",
"categories": [
1

View File

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

View File

@@ -32,5 +32,10 @@
"username": null,
"password": null
},
"notes": []
"notes": [
{
"type": "info",
"text": "The file `/etc/sysconfig/CosmosCloud` is optional. If you need custom settings, you can create it yourself."
}
]
}

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Cron LXC Updater",
"name": "PVE Cron LXC Updater",
"slug": "cron-update-lxcs",
"categories": [
1

View File

@@ -39,6 +39,10 @@
{
"type": "info",
"text": "Synapse-Admin is running on port 5173"
},
{
"type": "info",
"text": "For bridges Installation methods (WhatsApp, Signal, Discord, etc.), see: ´https://docs.mau.fi/bridges/go/setup.html´"
}
]
}

View File

@@ -0,0 +1,48 @@
{
"name": "PVE LXC Execute Command",
"slug": "lxc-execute",
"categories": [
1
],
"date_created": "2025-09-18",
"type": "pve",
"updateable": false,
"privileged": false,
"interface_port": null,
"documentation": null,
"website": null,
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
"config_path": "",
"description": "This script allows administrators to execute a custom command inside one or multiple LXC containers on a Proxmox VE node. Containers can be selectively excluded via an interactive checklist. If a container is stopped, the script will automatically start it, run the command, and then shut it down again. Only Debian and Ubuntu based containers are supported.",
"install_methods": [
{
"type": "default",
"script": "tools/pve/execute.sh",
"resources": {
"cpu": null,
"ram": null,
"hdd": null,
"os": null,
"version": null
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Execute within the Proxmox shell.",
"type": "info"
},
{
"text": "Non-Debian/Ubuntu containers will be skipped automatically.",
"type": "info"
},
{
"text": "Stopped containers will be started temporarily to run the command, then shut down again.",
"type": "warning"
}
]
}

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE LXC Filesystem Trim",
"name": "PVE LXC Filesystem Trim",
"slug": "fstrim",
"categories": [
1

View File

@@ -0,0 +1,35 @@
{
"name": "GlobaLeaks",
"slug": "globaleaks",
"categories": [
0
],
"date_created": "2025-09-18",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 443,
"documentation": "https://docs.globaleaks.org",
"website": "https://www.globaleaks.org/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/globaleaks.webp",
"config_path": "",
"description": "GlobaLeaks is a free and open-source whistleblowing software enabling anyone to easily set up and maintain a secure reporting platform.",
"install_methods": [
{
"type": "default",
"script": "ct/globaleaks.sh",
"resources": {
"cpu": 2,
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@@ -32,6 +32,10 @@
"password": null
},
"notes": [
{
"text": "Containerized version doesn't allow Home Assistant add-ons.",
"type": "warning"
},
{
"text": "If the LXC is created Privileged, the script will automatically set up USB passthrough.",
"type": "warning"

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Host Backup",
"name": "PVE Host Backup",
"slug": "host-backup",
"categories": [
1

View File

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

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Kernel Clean",
"name": "PVE Kernel Clean",
"slug": "kernel-clean",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Kernel Pin",
"name": "PVE Kernel Pin",
"slug": "kernel-pin",
"categories": [
1

View File

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

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Processor Microcode",
"name": "PVE Processor Microcode",
"slug": "microcode",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Monitor-All",
"name": "PVE Monitor-All",
"slug": "monitor-all",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Netdata",
"name": "PVE Netdata",
"slug": "netdata",
"categories": [
1

View File

@@ -31,5 +31,10 @@
"username": null,
"password": null
},
"notes": []
"notes": [
{
"text": "Script contains optional installation of Ollama.",
"type": "info"
}
]
}

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Backup Server Processor Microcode",
"name": "PBS Processor Microcode",
"slug": "pbs-microcode",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Backup Server Post Install",
"name": "PBS Post Install",
"slug": "post-pbs-install",
"categories": [
1
@@ -13,7 +13,7 @@
"website": null,
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
"config_path": "",
"description": "The script will give options to Disable the Enterprise Repo, Add/Correct PBS Sources, Enable the No-Subscription Repo, Add Test Repo, Disable Subscription Nag, Update Proxmox Backup Server and Reboot PBS.",
"description": "The script is designed for Proxmox Backup Server (PBS) and will give options to Disable the Enterprise Repo, Add/Correct PBS Sources, Enable the No-Subscription Repo, Add Test Repo, Disable Subscription Nag, Update Proxmox Backup Server and Reboot PBS.",
"install_methods": [
{
"type": "default",

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Mail Gateway Post Install",
"name": "PMG Post Install",
"slug": "post-pmg-install",
"categories": [
1
@@ -13,7 +13,7 @@
"website": null,
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
"config_path": "",
"description": "The script will give options to Disable the Enterprise Repo, Add/Correct PMG Sources, Enable the No-Subscription Repo, Add Test Repo, Disable Subscription Nag, Update Proxmox Mail Gateway and Reboot PMG.",
"description": "The script is designed for Proxmox Mail Gateway and will give options to Disable the Enterprise Repo, Add/Correct PMG Sources, Enable the No-Subscription Repo, Add Test Repo, Disable Subscription Nag, Update Proxmox Mail Gateway and Reboot PMG.",
"install_methods": [
{
"type": "default",

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE Post Install",
"name": "PVE Post Install",
"slug": "post-pve-install",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Backup Server",
"name": "Proxmox Backup Server (PBS)",
"slug": "proxmox-backup-server",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Datacenter Manager",
"name": "Proxmox Datacenter Manager (PDM)",
"slug": "proxmox-datacenter-manager",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Mail Gateway",
"name": "Proxmox Mail Gateway (PMG)",
"slug": "proxmox-mail-gateway",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE CPU Scaling Governor",
"name": "PVE CPU Scaling Governor",
"slug": "scaling-governor",
"categories": [
1

View File

@@ -10,7 +10,7 @@
"privileged": false,
"interface_port": 3000,
"documentation": "https://tracktor.bytedge.in/introduction.html",
"config_path": "/opt/tracktor/app/server/.env",
"config_path": "/opt/tracktor.env",
"website": "https://tracktor.bytedge.in/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tracktor.webp",
"description": "Tracktor is an open-source web application for comprehensive vehicle management.\nEasily track fuel consumption, maintenance, insurance, and regulatory documents for all your vehicles in one place.",
@@ -23,17 +23,17 @@
"ram": 1024,
"hdd": 6,
"os": "Debian",
"version": "12"
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
"password": "123456"
},
"notes": [
{
"text": "Please check and update the '/opt/tracktor/app/backend/.env' file if using behind reverse proxy.",
"text": "Please check and update the '/opt/tracktor.env' file if using behind reverse proxy.",
"type": "info"
}
]

View File

@@ -0,0 +1,35 @@
{
"name": "Tunarr",
"slug": "tunarr",
"categories": [
13
],
"date_created": "2025-09-19",
"type": "ct",
"updateable": true,
"privileged": false,
"config_path": "/opt/tunarr/.env",
"interface_port": 8000,
"documentation": "https://tunarr.com/",
"website": "https://tunarr.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tunarr.webp",
"description": "Create a classic TV experience using your own media - IPTV backed by Plex/Jellyfin/Emby.",
"install_methods": [
{
"type": "default",
"script": "ct/tunarr.sh",
"resources": {
"cpu": 2,
"ram": 1024,
"hdd": 5,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE LXC Updater",
"name": "PVE LXC Updater",
"slug": "update-lxcs",
"categories": [
1

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox Update Repositories",
"name": "PVE Update Repositories",
"slug": "update-repo",
"categories": [
1

View File

@@ -0,0 +1,40 @@
{
"name": "UpSnap",
"slug": "upsnap",
"categories": [
4
],
"date_created": "2025-09-23",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8090,
"documentation": "https://github.com/seriousm4x/UpSnap/wiki",
"config_path": "",
"website": "https://github.com/seriousm4x/UpSnap",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/upsnap.webp",
"description": "UpSnap is a self-hosted web app that lets you wake up, manage and monitor devices on your network with ease. Built with SvelteKit, Go and PocketBase, it offers a clean dashboard, scheduled wake-ups, device discovery and secure user management.",
"install_methods": [
{
"type": "default",
"script": "ct/upsnap.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 2,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "The first user you register will be the admin user.",
"type": "info"
}
]
}

View File

@@ -1,19 +1,394 @@
[
{
"name": "9001/copyparty",
"version": "v1.19.14",
"date": "2025-09-23T22:57:50Z"
},
{
"name": "grafana/grafana",
"version": "v12.2.0",
"date": "2025-09-23T23:47:02Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.41.3",
"date": "2025-09-23T22:21:04Z"
},
{
"name": "Part-DB/Part-DB-server",
"version": "v2.2.0",
"date": "2025-09-23T21:46:21Z"
},
{
"name": "mongodb/mongo",
"version": "r8.2.1-rc0",
"date": "2025-09-23T21:09:30Z"
},
{
"name": "immich-app/immich",
"version": "v1.143.1",
"date": "2025-09-23T19:00:49Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.4.0",
"date": "2025-09-13T16:38:21Z"
},
{
"name": "Threadfin/Threadfin",
"version": "1.2.38",
"date": "2025-09-23T17:49:33Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.26.2",
"date": "2025-09-23T17:32:47Z"
},
{
"name": "getumbrel/umbrel",
"version": "1.4.2",
"date": "2025-05-09T08:54:49Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "v1.6.4",
"date": "2025-08-18T20:22:07Z"
},
{
"name": "element-hq/synapse",
"version": "v1.139.0rc1",
"date": "2025-09-23T13:28:58Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.529",
"date": "2025-09-23T14:40:20Z"
},
{
"name": "wazuh/wazuh",
"version": "v4.13.0",
"date": "2025-09-19T16:35:02Z"
},
{
"name": "zabbix/zabbix",
"version": "7.4.3rc1",
"date": "2025-09-23T13:54:56Z"
},
{
"name": "duplicati/duplicati",
"version": "v2.1.1.102-2.1.1.102_canary_2025-09-23",
"date": "2025-09-23T13:32:25Z"
},
{
"name": "syncthing/syncthing",
"version": "v2.0.9",
"date": "2025-09-13T09:37:24Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.112.4",
"date": "2025-09-23T11:10:21Z"
},
{
"name": "documenso/documenso",
"version": "v1.12.5",
"date": "2025-09-23T11:00:48Z"
},
{
"name": "meilisearch/meilisearch",
"version": "prototype-speedup-post-processing-1",
"date": "2025-09-23T09:02:57Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.82-rc5",
"date": "2025-09-23T07:31:12Z"
},
{
"name": "ollama/ollama",
"version": "v0.12.1-rc2",
"date": "2025-09-23T06:20:20Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.23.56",
"date": "2025-09-23T05:54:39Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.3.3",
"date": "2025-09-23T00:41:08Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-09-23T00:27:09Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v3.6.2",
"date": "2025-07-17T12:08:03Z"
},
{
"name": "henrygd/beszel",
"version": "v0.12.9",
"date": "2025-09-17T20:13:59Z"
"version": "v0.12.10",
"date": "2025-09-22T22:40:43Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.9",
"date": "2025-09-17T15:11:25Z"
},
{
"name": "postgres/postgres",
"version": "REL_18_0",
"date": "2025-09-22T20:11:33Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v0.8.7-beta",
"date": "2025-09-22T18:24:54Z"
},
{
"name": "gethomepage/homepage",
"version": "v1.5.0",
"date": "2025-09-22T15:28:49Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.9.1",
"date": "2025-09-22T13:32:14Z"
},
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.3",
"date": "2025-08-25T13:59:56Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.3",
"date": "2025-09-01T09:47:06Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "7.0.0-beta.1",
"date": "2025-09-22T11:53:27Z"
},
{
"name": "itsmng/itsm-ng",
"version": "v2.1.0",
"date": "2025-09-22T09:23:37Z"
},
{
"name": "prometheus/prometheus",
"version": "v3.6.0",
"date": "2025-09-22T08:24:59Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2",
"date": "2025-06-26T22:08:00Z"
},
{
"name": "Athou/commafeed",
"version": "5.11.1",
"date": "2025-09-22T02:21:27Z"
},
{
"name": "TwiN/gatus",
"version": "v5.24.3",
"date": "2025-09-22T00:04:38Z"
},
{
"name": "Radarr/Radarr",
"version": "v5.27.5.10198",
"date": "2025-09-03T12:08:43Z"
},
{
"name": "Prowlarr/Prowlarr",
"version": "v2.0.5.5160",
"date": "2025-08-23T21:23:11Z"
},
{
"name": "Lidarr/Lidarr",
"version": "v2.13.3.4711",
"date": "2025-08-28T20:06:24Z"
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-09-21T18:15:06Z"
},
{
"name": "Ombi-app/Ombi",
"version": "v4.47.1",
"date": "2025-01-05T21:14:23Z"
},
{
"name": "wizarrrr/wizarr",
"version": "v2025.9.5",
"date": "2025-09-21T13:26:53Z"
},
{
"name": "openhab/openhab-core",
"version": "5.1.0.M1",
"date": "2025-09-21T13:17:32Z"
},
{
"name": "gotify/server",
"version": "v2.7.3",
"date": "2025-09-21T12:07:19Z"
},
{
"name": "thomiceli/opengist",
"version": "v1.11.0",
"date": "2025-09-21T02:53:18Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.2.8",
"date": "2025-09-20T22:08:35Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-fix-watchlist-error",
"date": "2025-09-20T21:07:50Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.11.2",
"date": "2025-09-20T20:15:40Z"
},
{
"name": "cross-seed/cross-seed",
"version": "v6.13.4",
"date": "2025-09-20T20:03:29Z"
},
{
"name": "traccar/traccar",
"version": "v6.10.0",
"date": "2025-09-20T15:40:36Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-openapi@9.3.11",
"date": "2025-09-20T09:52:40Z"
},
{
"name": "forgejo/forgejo",
"version": "v12.0.4",
"date": "2025-09-20T07:16:15Z"
},
{
"name": "theonedev/onedev",
"version": "v13.0.1",
"date": "2025-09-20T00:15:38Z"
},
{
"name": "inventree/InvenTree",
"version": "1.0.1",
"date": "2025-09-19T22:28:31Z"
},
{
"name": "ipfs/kubo",
"version": "v0.37.0",
"date": "2025-08-27T20:03:52Z"
},
{
"name": "home-assistant/core",
"version": "2025.9.4",
"date": "2025-09-19T21:09:39Z"
},
{
"name": "coder/code-server",
"version": "v4.104.1",
"date": "2025-09-19T19:36:44Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.38.0",
"date": "2025-09-19T19:14:55Z"
},
{
"name": "TandoorRecipes/recipes",
"version": "2.2.3",
"date": "2025-09-19T15:02:57Z"
},
{
"name": "hargata/lubelog",
"version": "v1.5.2",
"date": "2025-09-19T14:18:53Z"
},
{
"name": "mattermost/mattermost",
"version": "mattermost-redux@10.12.0",
"date": "2025-09-18T20:15:19Z"
},
{
"name": "docker/compose",
"version": "v2.39.4",
"date": "2025-09-19T08:49:23Z"
},
{
"name": "esphome/esphome",
"version": "2025.9.1",
"date": "2025-09-19T08:47:03Z"
},
{
"name": "saltstack/salt",
"version": "v3007.8",
"date": "2025-09-18T18:19:04Z"
},
{
"name": "docmost/docmost",
"version": "v0.23.2",
"date": "2025-09-18T17:18:59Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.15.0",
"date": "2025-09-18T17:14:15Z"
},
{
"name": "emqx/emqx",
"version": "e5.10.1",
"date": "2025-09-18T16:43:47Z"
},
{
"name": "YunoHost/yunohost",
"version": "debian/12.1.25",
"date": "2025-09-18T15:40:25Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.3.2",
"date": "2025-09-18T13:55:58Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.2.2",
"date": "2025-09-18T10:45:22Z"
},
{
"name": "NLnetLabs/unbound",
"version": "release-1.24.0",
"date": "2025-09-18T08:36:55Z"
},
{
"name": "outline/outline",
"version": "v0.87.4",
"date": "2025-09-18T00:47:08Z"
},
{
"name": "TasmoAdmin/TasmoAdmin",
"version": "v4.3.1",
"date": "2025-07-22T20:10:08Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.25.14",
"date": "2025-09-17T19:00:05Z"
},
{
"name": "eclipse-mosquitto/mosquitto",
"version": "2.1.0-test1",
@@ -29,11 +404,6 @@
"version": "v1.88.2",
"date": "2025-09-17T17:25:12Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.9",
"date": "2025-09-17T15:11:25Z"
},
{
"name": "heiher/hev-socks5-server",
"version": "2.10.0",
@@ -49,16 +419,6 @@
"version": "2.0.0",
"date": "2025-08-29T13:38:35Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.109.2",
"date": "2025-09-03T07:50:21Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.528",
"date": "2025-09-17T13:09:51Z"
},
{
"name": "cockpit-project/cockpit",
"version": "347",
@@ -79,61 +439,11 @@
"version": "v2.16.31",
"date": "2025-09-17T09:57:55Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.3",
"date": "2025-09-01T09:47:06Z"
},
{
"name": "WGDashboard/WGDashboard",
"version": "v4.3.0.1",
"date": "2025-09-17T08:50:39Z"
},
{
"name": "esphome/esphome",
"version": "2025.9.0",
"date": "2025-09-17T06:51:31Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2",
"date": "2025-06-26T22:08:00Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3-beta.10",
"date": "2025-07-15T06:07:03Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.23.32",
"date": "2025-09-17T06:01:29Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.41.1",
"date": "2025-09-17T03:15:01Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v0.8.6-beta",
"date": "2025-09-17T00:57:54Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-09-17T00:27:05Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v3.6.2",
"date": "2025-07-17T12:08:03Z"
},
{
"name": "Ombi-app/Ombi",
"version": "v4.47.1",
"date": "2025-01-05T21:14:23Z"
},
{
"name": "Cleanuparr/Cleanuparr",
"version": "v2.3.1",
@@ -144,36 +454,11 @@
"version": "2.510",
"date": "2025-09-16T20:28:37Z"
},
{
"name": "YunoHost/yunohost",
"version": "debian/12.1.24",
"date": "2025-09-16T19:55:04Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.4.0",
"date": "2025-09-13T16:38:21Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "v1.6.4",
"date": "2025-08-18T20:22:07Z"
},
{
"name": "AdguardTeam/AdGuardHome",
"version": "v0.107.66",
"date": "2025-09-15T13:39:52Z"
},
{
"name": "wazuh/wazuh",
"version": "v4.13.0-rc5",
"date": "2025-09-16T16:12:20Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.3.2",
"date": "2025-09-16T16:04:50Z"
},
{
"name": "netbox-community/netbox",
"version": "v4.4.1",
@@ -184,26 +469,11 @@
"version": "version/2025.8.3",
"date": "2025-09-16T15:19:06Z"
},
{
"name": "immich-app/immich",
"version": "v1.142.1",
"date": "2025-09-16T14:51:53Z"
},
{
"name": "wizarrrr/wizarr",
"version": "v2025.9.4",
"date": "2025-09-16T14:12:49Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v11.3.0",
"date": "2025-09-16T13:53:44Z"
},
{
"name": "emqx/emqx",
"version": "e5.10.1-rc.2",
"date": "2025-09-16T13:41:59Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.2.5r2",
@@ -214,21 +484,6 @@
"version": "v2.4.0p12",
"date": "2025-09-16T12:53:03Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.2.0",
"date": "2025-09-15T09:29:55Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-debug-plex-watchlist",
"date": "2025-09-16T09:20:58Z"
},
{
"name": "mattermost/mattermost",
"version": "v10.11.3",
"date": "2025-09-16T07:39:13Z"
},
{
"name": "readeck/readeck",
"version": "0.20.3",
@@ -239,11 +494,6 @@
"version": "2.1.1",
"date": "2025-09-16T06:21:32Z"
},
{
"name": "coder/code-server",
"version": "v4.104.0",
"date": "2025-09-15T22:24:49Z"
},
{
"name": "Paymenter/Paymenter",
"version": "v1.3.4",
@@ -299,31 +549,16 @@
"version": "v2.7.6",
"date": "2025-09-15T15:50:44Z"
},
{
"name": "mongodb/mongo",
"version": "r8.0.14",
"date": "2025-09-15T15:39:18Z"
},
{
"name": "usememos/memos",
"version": "v0.25.1",
"date": "2025-09-15T14:57:30Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-core@15.7.12",
"date": "2025-09-15T12:37:01Z"
},
{
"name": "VictoriaMetrics/VictoriaMetrics",
"version": "pmm-6401-v1.126.0",
"date": "2025-09-15T11:32:31Z"
},
{
"name": "meilisearch/meilisearch",
"version": "latest",
"date": "2025-09-15T11:12:14Z"
},
{
"name": "authelia/authelia",
"version": "v4.39.10",
@@ -334,31 +569,11 @@
"version": "v3.2.1",
"date": "2025-09-15T03:45:31Z"
},
{
"name": "Prowlarr/Prowlarr",
"version": "v2.0.5.5160",
"date": "2025-08-23T21:23:11Z"
},
{
"name": "cross-seed/cross-seed",
"version": "v6.13.3",
"date": "2025-09-08T21:45:15Z"
},
{
"name": "9001/copyparty",
"version": "v1.19.9",
"date": "2025-09-15T00:54:27Z"
},
{
"name": "crafty-controller/crafty-4",
"version": "v4.5.4",
"date": "2025-09-15T00:49:53Z"
},
{
"name": "inventree/InvenTree",
"version": "1.0.0",
"date": "2025-09-14T23:37:56Z"
},
{
"name": "moghtech/komodo",
"version": "v1.19.4",
@@ -369,66 +584,16 @@
"version": "v25.6.0",
"date": "2025-09-14T17:55:21Z"
},
{
"name": "Lidarr/Lidarr",
"version": "v2.13.3.4711",
"date": "2025-08-28T20:06:24Z"
},
{
"name": "karakeep-app/karakeep",
"version": "cli/v0.27.1",
"date": "2025-09-14T14:48:48Z"
},
{
"name": "docmost/docmost",
"version": "v0.23.1",
"date": "2025-09-14T14:31:45Z"
},
{
"name": "intri-in/manage-my-damn-life-nextjs",
"version": "v0.8.1",
"date": "2025-09-14T06:45:23Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.2.7",
"date": "2025-09-14T06:35:13Z"
},
{
"name": "home-assistant/core",
"version": "2025.9.3",
"date": "2025-09-13T12:44:37Z"
},
{
"name": "gotify/server",
"version": "v2.7.2",
"date": "2025-09-13T12:11:38Z"
},
{
"name": "syncthing/syncthing",
"version": "v2.0.9",
"date": "2025-09-13T09:37:24Z"
},
{
"name": "documenso/documenso",
"version": "v1.12.4",
"date": "2025-09-13T08:08:55Z"
},
{
"name": "ollama/ollama",
"version": "v0.11.11-rc3",
"date": "2025-09-12T23:40:14Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.82-rc2",
"date": "2025-09-12T09:59:30Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.37.0",
"date": "2025-09-12T19:19:14Z"
},
{
"name": "cloudreve/cloudreve",
"version": "4.8.0",
@@ -449,36 +614,16 @@
"version": "1.16.0",
"date": "2025-09-11T18:01:57Z"
},
{
"name": "Threadfin/Threadfin",
"version": "1.2.37",
"date": "2025-09-11T16:13:41Z"
},
{
"name": "prometheus/prometheus",
"version": "v0.306.0-rc.1",
"date": "2025-09-11T13:37:41Z"
},
{
"name": "rcourtman/Pulse",
"version": "v4.14.0",
"date": "2025-09-05T18:28:28Z"
},
{
"name": "NLnetLabs/unbound",
"version": "release-1.24.0rc1",
"date": "2025-09-11T07:05:16Z"
},
{
"name": "go-gitea/gitea",
"version": "v1.24.6",
"date": "2025-09-11T04:20:27Z"
},
{
"name": "TandoorRecipes/recipes",
"version": "2.2.0",
"date": "2025-09-10T18:36:56Z"
},
{
"name": "aceberg/WatchYourLAN",
"version": "2.1.4",
@@ -489,31 +634,11 @@
"version": "v3.2.1-beta",
"date": "2025-09-09T19:47:13Z"
},
{
"name": "Part-DB/Part-DB-server",
"version": "v2.1.2",
"date": "2025-09-09T19:34:11Z"
},
{
"name": "hargata/lubelog",
"version": "v1.5.1",
"date": "2025-09-09T16:56:49Z"
},
{
"name": "element-hq/synapse",
"version": "v1.138.0",
"date": "2025-09-09T11:25:50Z"
},
{
"name": "traefik/traefik",
"version": "v3.5.2",
"date": "2025-09-09T10:28:12Z"
},
{
"name": "docker/compose",
"version": "v2.39.3",
"date": "2025-09-09T08:27:27Z"
},
{
"name": "OctoPrint/OctoPrint",
"version": "1.11.3",
@@ -544,11 +669,6 @@
"version": "16.2",
"date": "2025-09-08T14:03:25Z"
},
{
"name": "theonedev/onedev",
"version": "v12.0.10",
"date": "2025-09-08T13:20:16Z"
},
{
"name": "evcc-io/evcc",
"version": "0.207.6",
@@ -569,26 +689,11 @@
"version": "RELEASE.2025-09-07T16-13-09Z",
"date": "2025-09-07T18:53:04Z"
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-09-07T12:25:06Z"
},
{
"name": "Radarr/Radarr",
"version": "v5.27.5.10198",
"date": "2025-09-03T12:08:43Z"
},
{
"name": "pocketbase/pocketbase",
"version": "v0.30.0",
"date": "2025-09-07T05:25:44Z"
},
{
"name": "forgejo/forgejo",
"version": "v12.0.3",
"date": "2025-09-06T07:01:44Z"
},
{
"name": "Stirling-Tools/Stirling-PDF",
"version": "v1.3.2",
@@ -649,11 +754,6 @@
"version": "2.1.1",
"date": "2025-06-14T17:45:06Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "6.1.15",
"date": "2025-09-03T14:51:37Z"
},
{
"name": "neo4j/neo4j",
"version": "5.26.12",
@@ -664,11 +764,6 @@
"version": "cassandra-4.1.10",
"date": "2025-09-03T08:46:02Z"
},
{
"name": "postgres/postgres",
"version": "REL_18_RC1",
"date": "2025-09-01T20:03:08Z"
},
{
"name": "project-zot/zot",
"version": "v2.1.8",
@@ -679,26 +774,11 @@
"version": "2.6.1",
"date": "2025-09-01T19:05:18Z"
},
{
"name": "outline/outline",
"version": "v0.87.3",
"date": "2025-09-01T16:25:43Z"
},
{
"name": "seanmorley15/AdventureLog",
"version": "v0.11.0",
"date": "2025-09-01T16:19:38Z"
},
{
"name": "grafana/grafana",
"version": "rrc_steady_12.2.0-17245430286.patch1",
"date": "2025-09-01T14:19:14Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.3.1",
"date": "2025-09-01T11:00:07Z"
},
{
"name": "crowdsecurity/crowdsec",
"version": "v1.7.0",
@@ -714,11 +794,6 @@
"version": "v2.1.0",
"date": "2025-08-29T12:56:13Z"
},
{
"name": "saltstack/salt",
"version": "v3007.7",
"date": "2025-08-29T01:19:08Z"
},
{
"name": "linkwarden/linkwarden",
"version": "v2.12.2",
@@ -744,31 +819,11 @@
"version": "v1.9.2",
"date": "2025-08-28T07:06:14Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.10.0",
"date": "2025-08-27T20:35:47Z"
},
{
"name": "ipfs/kubo",
"version": "v0.37.0",
"date": "2025-08-27T20:03:52Z"
},
{
"name": "advplyr/audiobookshelf",
"version": "v2.29.0",
"date": "2025-08-25T22:43:20Z"
},
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.3",
"date": "2025-08-25T13:59:56Z"
},
{
"name": "zabbix/zabbix",
"version": "7.4.2",
"date": "2025-08-25T12:38:14Z"
},
{
"name": "plexguide/Huntarr.io",
"version": "8.2.10",
@@ -799,36 +854,6 @@
"version": "v1.2.4",
"date": "2025-08-22T07:40:01Z"
},
{
"name": "traccar/traccar",
"version": "v6.9.1",
"date": "2025-08-22T04:04:12Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.8.1",
"date": "2025-08-21T15:39:34Z"
},
{
"name": "gethomepage/homepage",
"version": "v1.4.6",
"date": "2025-08-21T14:05:58Z"
},
{
"name": "openhab/openhab-core",
"version": "4.3.7",
"date": "2025-08-20T10:26:21Z"
},
{
"name": "duplicati/duplicati",
"version": "v2.1.2.0-2.1.2.0_beta_2025-08-20",
"date": "2025-08-20T08:15:46Z"
},
{
"name": "TwiN/gatus",
"version": "v5.23.2",
"date": "2025-08-19T21:24:45Z"
},
{
"name": "karlomikus/bar-assistant",
"version": "v5.8.0",
@@ -894,11 +919,6 @@
"version": "v2.5.308",
"date": "2025-08-13T07:09:29Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.14.0",
"date": "2025-08-12T13:58:46Z"
},
{
"name": "slskd/slskd",
"version": "0.23.2",
@@ -919,11 +939,6 @@
"version": "mariadb-12.0.2",
"date": "2025-08-07T21:23:15Z"
},
{
"name": "Athou/commafeed",
"version": "5.11.0",
"date": "2025-08-06T21:14:18Z"
},
{
"name": "bastienwirtz/homer",
"version": "v25.08.1",
@@ -1089,11 +1104,6 @@
"version": "v2.18.0",
"date": "2025-06-24T08:29:55Z"
},
{
"name": "itsmng/itsm-ng",
"version": "v2.0.7",
"date": "2025-06-23T14:35:40Z"
},
{
"name": "clusterzx/paperless-ai",
"version": "v3.0.7",
@@ -1194,11 +1204,6 @@
"version": "v0.2.3",
"date": "2025-05-10T21:14:45Z"
},
{
"name": "getumbrel/umbrel",
"version": "1.4.2",
"date": "2025-05-09T08:54:49Z"
},
{
"name": "ZoeyVid/NPMplus",
"version": "2025-05-07-r1",
@@ -1239,11 +1244,6 @@
"version": "v0.2.11",
"date": "2025-04-12T21:13:08Z"
},
{
"name": "thomiceli/opengist",
"version": "v1.10.0",
"date": "2025-04-07T14:32:15Z"
},
{
"name": "azukaar/Cosmos-Server",
"version": "v0.18.4",

View File

@@ -21,7 +21,7 @@
"resources": {
"cpu": 4,
"ram": 4096,
"hdd": 18,
"hdd": 25,
"os": "debian",
"version": "12"
}

View File

@@ -23,7 +23,7 @@
"ram": 4096,
"hdd": 6,
"os": "debian",
"version": "12"
"version": "13"
}
}
],
@@ -33,11 +33,19 @@
},
"notes": [
{
"text": "Database credentials: `cat zabbix.creds`",
"text": "Database credentials: `cat ~/zabbix.creds`",
"type": "info"
},
{
"text": "Zabbix agent 2 is used by default",
"text": "You can choose between Zabbix agent (classic) and agent2 (modern) during installation",
"type": "info"
},
{
"text": "For agent2 the PostgreSQL plugin is installed by default; all plugins are optional",
"type": "info"
},
{
"text": "If agent2 with NVIDIA plugin is installed in an environment without GPU, the installer disables it automatically",
"type": "info"
}
]

View File

@@ -13,9 +13,7 @@ setting_up_container
network_check
update_os
msg_info "Installing AdGuard Home"
$STD tar zxvf <(curl -fsSL https://static.adtidy.org/adguardhome/release/AdGuardHome_linux_amd64.tar.gz) -C /opt
msg_ok "Installed AdGuard Home"
fetch_and_deploy_gh_release "AdGuardHome" "AdguardTeam/AdGuardHome" "prebuild" "latest" "/opt/AdGuardHome" "AdGuardHome_linux_amd64.tar.gz"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/AdGuardHome.service
@@ -45,6 +43,7 @@ motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -0,0 +1,70 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: cobalt (cobaltgit)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://caddyserver.com/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Caddy"
$STD apk add --no-cache caddy caddy-openrc
cat <<EOF >/etc/caddy/Caddyfile
:80 {
# Set this path to your site's directory.
root * /var/www/html
# Enable the static file server.
file_server
# Another common task is to set up a reverse proxy:
# reverse_proxy localhost:8080
# Or serve a PHP site through php-fpm:
# php_fastcgi localhost:9000
}
EOF
mkdir -p /var/www/html
cat <<EOF >/var/www/html/index.html
<!DOCTYPE html>
<html>
<head>
<title>Caddy works!</title>
</head>
<body>
<h1>Hello Caddy!</h1>
<p>For more information, refer to the Caddy <a href="https://caddyserver.com/docs/">documentation</a><p>
</body>
</html>
EOF
msg_ok "Installed Caddy"
read -r -p "${TAB3}Would you like to install xCaddy Addon? <y/N> " prompt
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
GO_VERSION="$(curl -fsSL https://go.dev/VERSION?m=text | head -1 | cut -c3-)" setup_go
msg_info "Setup xCaddy"
cd /opt
RELEASE=$(curl -fsSL https://api.github.com/repos/caddyserver/xcaddy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
curl -fsSL "https://github.com/caddyserver/xcaddy/releases/download/${RELEASE}/xcaddy_${RELEASE:1}_linux_amd64.tar.gz" -o "xcaddy_${RELEASE:1}_linux_amd64.tar.gz"
$STD tar xzf xcaddy_"${RELEASE:1}"_linux_amd64.tar.gz -C /usr/local/bin xcaddy
rm -rf /opt/xcaddy*
$STD xcaddy build
msg_ok "Setup xCaddy"
fi
msg_info "Enabling Caddy Service"
$STD rc-update add caddy default
msg_ok "Enabled Caddy Service"
msg_info "Starting Caddy"
$STD service caddy start
msg_ok "Started Caddy"
motd_ssh
customize

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
fetch_and_deploy_gh_release "blocky" "0xERR0R/blocky" "prebuild" "latest" "/opt/blocky" "blocky_*_linux_x86_64.tar.gz"
fetch_and_deploy_gh_release "blocky" "0xERR0R/blocky" "prebuild" "latest" "/opt/blocky" "blocky_*_Linux_x86_64.tar.gz"
msg_info "Configuring Blocky"
if systemctl is-active systemd-resolved >/dev/null 2>&1; then

View File

@@ -15,11 +15,16 @@ update_os
msg_info "Installing Cloudflared"
mkdir -p --mode=0755 /usr/share/keyrings
VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)"
curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg >/usr/share/keyrings/cloudflare-main.gpg
echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared $VERSION main" >/etc/apt/sources.list.d/cloudflared.list
$STD apt-get update
$STD apt-get install -y cloudflared
cat <<EOF >/etc/apt/sources.list.d/cloudflared.sources
Types: deb
URIs: https://pkg.cloudflare.com/cloudflared/
Suites: any
Components: main
Signed-By: /usr/share/keyrings/cloudflare-main.gpg
EOF
$STD apt update
$STD apt install -y cloudflared
msg_ok "Installed Cloudflared"
read -r -p "${TAB3}Would you like to configure cloudflared as a DNS-over-HTTPS (DoH) proxy? <y/N> " prompt
@@ -61,6 +66,7 @@ motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -0,0 +1,30 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Giovanni Pellerano (evilaliv3)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/globaleaks/globaleaks-whistleblowing-software
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Setup GlobaLeaks"
DISTRO_CODENAME="$(awk -F= '/^VERSION_CODENAME=/{print $2}' /etc/os-release)"
curl -fsSL https://deb.globaleaks.org/globaleaks.asc | gpg --dearmor -o /etc/apt/trusted.gpg.d/globaleaks.gpg
echo "deb [signed-by=/etc/apt/trusted.gpg.d/globaleaks.gpg] http://deb.globaleaks.org $DISTRO_CODENAME/" >/etc/apt/sources.list.d/globaleaks.list
echo 'APPARMOR_SANDBOXING=0' >/etc/default/globaleaks
$STD apt update
$STD apt -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold install globaleaks
msg_ok "Setup GlobaLeaks"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -24,28 +24,26 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
$STD caddy stop
rm /etc/caddy/Caddyfile
cat <<'EOF' >/etc/caddy/Caddyfile
:{$PORT:80}
:80
redir /admin /admin/
handle_path /admin* {
root * /opt/headscale-admin
encode gzip zstd
# Correct MIME types for JS/WASM
header {
@js_files path *.js
@wasm_files path *.wasm
Content-Type @js_files application/javascript
Content-Type @wasm_files application/wasm
X-Content-Type-Options nosniff
}
# Fallback for SPA routing
try_files {path} {path}/ index.html
try_files {path} {path}/ /opt/headscale-admin/index.html
file_server
}
handle /api/* {
reverse_proxy localhost:8080
}
EOF
caddy fmt --overwrite /etc/caddy/Caddyfile
systemctl start caddy

View File

@@ -15,14 +15,7 @@ update_os
setup_uv
msg_info "Configuring apt and installing dependencies"
echo "deb http://deb.debian.org/debian testing main contrib" >/etc/apt/sources.list.d/immich.list
cat <<EOF >/etc/apt/preferences.d/immich
Package: *
Pin: release a=testing
Pin-Priority: -10
EOF
msg_info "Installing dependencies"
$STD apt-get update
$STD apt-get install --no-install-recommends -y \
git \
@@ -53,25 +46,33 @@ $STD apt-get install --no-install-recommends -y \
libgomp1 \
liblqr-1-0 \
libltdl7 \
libmimalloc2.0 \
libmimalloc3 \
libopenjp2-7 \
meson \
ninja-build \
pkg-config \
cpanminus \
mesa-utils \
mesa-va-drivers \
mesa-vulkan-drivers \
ocl-icd-libopencl1 \
tini \
zlib1g
zlib1g \
libio-compress-brotli-perl \
libwebp7 \
libwebpdemux2 \
libwebpmux3 \
libhwy1t64 \
libdav1d-dev \
libhwy-dev \
libwebp-dev \
libaom-dev
curl -fsSL https://repo.jellyfin.org/jellyfin_team.gpg.key | gpg --dearmor -o /etc/apt/keyrings/jellyfin.gpg
DPKG_ARCHITECTURE="$(dpkg --print-architecture)"
export DPKG_ARCHITECTURE
cat <<EOF >/etc/apt/sources.list.d/jellyfin.sources
Types: deb
URIs: https://repo.jellyfin.org/debian
Suites: bookworm
Suites: trixie
Components: main
Architectures: ${DPKG_ARCHITECTURE}
Signed-By: /etc/apt/keyrings/jellyfin.gpg
@@ -93,6 +94,7 @@ read -r -p "${TAB3}Install OpenVINO dependencies for Intel HW-accelerated machin
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing OpenVINO dependencies"
touch ~/.openvino
$STD apt-get install -y --no-install-recommends patchelf
tmp_dir=$(mktemp -d)
$STD pushd "$tmp_dir"
curl -fsSLO https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-core_1.0.17384.11_amd64.deb
@@ -100,6 +102,7 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
curl -fsSLO https://github.com/intel/compute-runtime/releases/download/24.31.30508.7/intel-opencl-icd_24.31.30508.7_amd64.deb
curl -fsSLO https://github.com/intel/compute-runtime/releases/download/24.31.30508.7/libigdgmm12_22.4.1_amd64.deb
$STD apt install -y ./*.deb
$STD apt-mark hold libigdgmm12
$STD popd
rm -rf "$tmp_dir"
dpkg -l | grep "intel-opencl-icd" | awk '{print $3}' >~/.intel_version
@@ -134,27 +137,7 @@ $STD sudo -u postgres psql -c "ALTER USER $DB_USER WITH SUPERUSER;"
} >>~/"$APPLICATION".creds
msg_ok "Set up Postgresql Database"
msg_info "Installing Packages from Testing Repo"
export APT_LISTCHANGES_FRONTEND=none
export DEBIAN_FRONTEND=noninteractive
$STD apt-get install -t testing --no-install-recommends -y \
libio-compress-brotli-perl \
libwebp7 \
libwebpdemux2 \
libwebpmux3 \
libhwy1t64 \
libdav1d-dev \
libhwy-dev \
libwebp-dev \
libaom-dev
if [[ -f ~/.openvino ]]; then
$STD apt-get install -t testing -y patchelf
fi
msg_ok "Packages from Testing Repo Installed"
$STD sudo -u postgres psql -c "ALTER DATABASE postgres REFRESH COLLATION VERSION;"
$STD sudo -u postgres psql -c "ALTER DATABASE $DB_NAME REFRESH COLLATION VERSION;"
msg_info "Compiling Custom Photo-processing Library (extreme patience)"
LD_LIBRARY_PATH=/usr/local/lib
export LD_RUN_PATH=/usr/local/lib
STAGING_DIR=/opt/staging
@@ -169,8 +152,7 @@ cd "$STAGING_DIR"
SOURCE=${SOURCE_DIR}/libjxl
JPEGLI_LIBJPEG_LIBRARY_SOVERSION="62"
JPEGLI_LIBJPEG_LIBRARY_VERSION="62.3.0"
# : "${LIBJXL_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libjxl.json)}"
: "${LIBJXL_REVISION:=794a5dcf0d54f9f0b20d288a12e87afb91d20dfc}"
: "${LIBJXL_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libjxl.json)}"
$STD git clone https://github.com/libjxl/libjxl.git "$SOURCE"
cd "$SOURCE"
$STD git reset --hard "$LIBJXL_REVISION"
@@ -207,8 +189,7 @@ msg_ok "(1/5) Compiled libjxl"
msg_info "(2/5) Compiling libheif"
SOURCE=${SOURCE_DIR}/libheif
# : "${LIBHEIF_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libheif.json)}"
: "${LIBHEIF_REVISION:=35dad50a9145332a7bfdf1ff6aef6801fb613d68}"
: "${LIBHEIF_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libheif.json)}"
$STD git clone https://github.com/strukturag/libheif.git "$SOURCE"
cd "$SOURCE"
$STD git reset --hard "$LIBHEIF_REVISION"
@@ -233,8 +214,7 @@ msg_ok "(2/5) Compiled libheif"
msg_info "(3/5) Compiling libraw"
SOURCE=${SOURCE_DIR}/libraw
# : "${LIBRAW_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libraw.json)}"
: "${LIBRAW_REVISION:=09bea31181b43e97959ee5452d91e5bc66365f1f}"
: "${LIBRAW_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libraw.json)}"
$STD git clone https://github.com/libraw/libraw.git "$SOURCE"
cd "$SOURCE"
$STD git reset --hard "$LIBRAW_REVISION"
@@ -249,12 +229,11 @@ msg_ok "(3/5) Compiled libraw"
msg_info "(4/5) Compiling imagemagick"
SOURCE=$SOURCE_DIR/imagemagick
# : "${IMAGEMAGICK_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/imagemagick.json)}"
: "${IMAGEMAGICK_REVISION:=8289a3388a085ad5ae81aa6812f21554bdfd54f2}"
: "${IMAGEMAGICK_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/imagemagick.json)}"
$STD git clone https://github.com/ImageMagick/ImageMagick.git "$SOURCE"
cd "$SOURCE"
$STD git reset --hard "$IMAGEMAGICK_REVISION"
$STD ./configure --with-modules
$STD ./configure --with-modules CPPFLAGS="-DMAGICK_LIBRAW_VERSION_TAIL=202502"
$STD make -j"$(nproc)"
$STD make install
ldconfig /usr/local/lib
@@ -264,8 +243,7 @@ msg_ok "(4/5) Compiled imagemagick"
msg_info "(5/5) Compiling libvips"
SOURCE=$SOURCE_DIR/libvips
# : "${LIBVIPS_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libvips.json)}"
: "${LIBVIPS_REVISION:=8fa37a64547e392d3808eed8d72adab7e02b3d00}"
: "${LIBVIPS_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libvips.json)}"
$STD git clone https://github.com/libvips/libvips.git "$SOURCE"
cd "$SOURCE"
$STD git reset --hard "$LIBVIPS_REVISION"
@@ -294,7 +272,7 @@ GEO_DIR="${INSTALL_DIR}/geodata"
mkdir -p "$INSTALL_DIR"
mkdir -p {"${APP_DIR}","${UPLOAD_DIR}","${GEO_DIR}","${INSTALL_DIR}"/cache}
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v1.142.1" "$SRC_DIR"
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v1.143.1" "$SRC_DIR"
msg_info "Installing ${APPLICATION} (patience)"
@@ -314,6 +292,7 @@ sed -i 's|^start|./start|' "$APP_DIR"/bin/immich-admin
# openapi & web build
cd "$SRC_DIR"
echo "packageImportMethod: hardlink" >>./pnpm-workspace.yaml
$STD pnpm --filter @immich/sdk --filter immich-web --frozen-lockfile --force install
$STD pnpm --filter @immich/sdk --filter immich-web build
cp -a web/build "$APP_DIR"/www
@@ -326,16 +305,17 @@ $STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
msg_ok "Installed Immich Server and Web Components"
cd "$SRC_DIR"/machine-learning
mkdir -p "$ML_DIR"
$STD useradd -U -s /usr/sbin/nologin -r -M -d "$INSTALL_DIR" immich
mkdir -p "$ML_DIR" && chown -R immich:immich "$INSTALL_DIR"
export VIRTUAL_ENV="${ML_DIR}/ml-venv"
if [[ -f ~/.openvino ]]; then
msg_info "Installing HW-accelerated machine-learning"
$STD uv sync --extra openvino --no-cache --active
$STD sudo --preserve-env=VIRTUAL_ENV -nu immich uv sync --extra openvino --active -n -p python3.11 --managed-python
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
msg_ok "Installed HW-accelerated machine-learning"
else
msg_info "Installing machine-learning"
$STD uv sync --extra cpu --no-cache --active
$STD sudo --preserve-env=VIRTUAL_ENV -nu immich uv sync --extra cpu --active -n -p python3.11 --managed-python
msg_ok "Installed machine-learning"
fi
cd "$SRC_DIR"
@@ -374,8 +354,7 @@ mkdir -p /var/log/immich
touch /var/log/immich/{web.log,ml.log}
msg_ok "Installed ${APPLICATION}"
msg_info "Creating user, env file, scripts & services"
$STD useradd -U -s /usr/sbin/nologin -r -M -d "$INSTALL_DIR" immich
msg_info "Modifying user, creating env file, scripts & services"
usermod -aG video,render immich
cat <<EOF >"${INSTALL_DIR}"/.env
@@ -464,11 +443,8 @@ WantedBy=multi-user.target
EOF
chown -R immich:immich "$INSTALL_DIR" /var/log/immich
systemctl enable -q --now "$APPLICATION"-ml.service "$APPLICATION"-web.service
msg_ok "Created user, env file, scripts and services"
msg_ok "Modified user, created env file, scripts and services"
sed -i "$ a VERSION_ID=12" /etc/os-release # otherwise the motd_ssh function will fail
cp /etc/debian_version ~/.debian_version.bak
sed -i 's/.*/13.0/' /etc/debian_version
motd_ssh
customize

View File

@@ -13,6 +13,12 @@ setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt install -y \
build-essential \
python3-dev
msg_ok "Installed Dependencies"
PG_VERSION="17" setup_postgresql
PYTHON_VERSION="3.13" setup_uv
@@ -75,6 +81,7 @@ motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -17,7 +17,7 @@ msg_info "Installing dependencies"
$STD apt-get install --no-install-recommends -y build-essential
msg_ok "Installed dependencies"
NODE_VERSION="20" setup_nodejs
NODE_VERSION="22" setup_nodejs
MYSQL_VERSION="8.0" setup_mysql
msg_info "Setting up Database"
@@ -48,7 +48,7 @@ sed -i -e 's|db|localhost|' \
-e "s|=PASSWORD|=$(openssl rand -base64 40 | tr -dc 'a-zA-Z0-9' | head -c40)|" \
/opt/mmdl/.env
cd /opt/mmdl
export NEXT_TELEMETRY_DISABLE=1
export NEXT_TELEMETRY_DISABLED=1
export CI="true"
$STD npm install
$STD npm run migrate

View File

@@ -16,7 +16,7 @@ update_os
PHP_VERSION="8.2" PHP_APACHE="YES" PHP_MODULE="dom,gmp,iconv,mysqli,pdo-mysql,redis,tokenizer" setup_php
setup_composer
setup_mariadb
NODE_VERSION="20" NODE_MODULE="yarn@latest" setup_nodejs
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
msg_info "Setting up MariaDB"
DB_NAME=monica

View File

@@ -48,7 +48,7 @@ msg_ok "Installed Open WebUI"
read -r -p "${TAB3}Would you like to add Ollama? <y/N> " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing Ollama"
curl -fsSLO https://ollama.com/download/ollama-linux-amd64.tgz
curl -fsSLO -C - https://ollama.com/download/ollama-linux-amd64.tgz
tar -C /usr -xzf ollama-linux-amd64.tgz
rm -rf ollama-linux-amd64.tgz
cat <<EOF >/etc/systemd/system/ollama.service

View File

@@ -20,7 +20,7 @@ $STD apt-get install -y \
redis
msg_ok "Installed Dependencies"
NODE_VERSION="20" NODE_MODULE="yarn@latest" setup_nodejs
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
PG_VERSION="16" setup_postgresql
msg_info "Set up PostgreSQL Database"

View File

@@ -21,7 +21,7 @@ $STD apt-get install -y \
msg_ok "Installed Dependencies"
setup_mariadb
PHP_VERSION="8.3" PHP_FPM="YES" PHP_MODULE="common,mysql,fpm,redis" setup_php
PHP_VERSION="8.3" PHP_FPM="YES" PHP_MODULE="common,mysql,redis" setup_php
setup_composer
fetch_and_deploy_gh_release "paymenter" "paymenter/paymenter" "prebuild" "latest" "/opt/paymenter" "paymenter.tar.gz"
chmod -R 755 /opt/paymenter/storage/* /opt/paymenter/bootstrap/cache/
@@ -30,7 +30,7 @@ msg_info "Setting up database"
DB_NAME=paymenter
DB_USER=paymenter
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql mysql
mariadb-tzinfo-to-sql /usr/share/zoneinfo | mariadb mysql
$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 PRIVILEGES ON $DB_NAME.* TO '$DB_USER'@'localhost' WITH GRANT OPTION;"
@@ -108,8 +108,8 @@ RestartSec=5s
[Install]
WantedBy=multi-user.target
EOF
systemctl enable --now paymenter
systemctl enable --now redis-server
systemctl enable -q --now paymenter
systemctl enable -q --now redis-server
msg_ok "Setup Service"
motd_ssh

View File

@@ -30,12 +30,13 @@ $STD apt-get install -y clickhouse-server clickhouse-client
msg_ok "Setup ClickHouse"
msg_info "Setting up Zookeeper"
curl -fsSL "https://dlcdn.apache.org/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz" -o "$HOME/zookeeper.tar.gz"
ZOOURL=$(curl -fsSL https://dlcdn.apache.org/zookeeper/current/ | grep -o 'apache-zookeeper-[0-9.]\+-bin\.tar\.gz' | head -n1)
curl -fsSL "https://dlcdn.apache.org/zookeeper/current/$ZOOURL" -o ~/zookeeper.tar.gz
tar -xzf "$HOME/zookeeper.tar.gz" -C "$HOME"
mkdir -p /opt/zookeeper
mkdir -p /var/lib/zookeeper
mkdir -p /var/log/zookeeper
cp -r ~/apache-zookeeper-3.8.4-bin/* /opt/zookeeper
cp -r ~/apache-zookeeper-*-bin/* /opt/zookeeper
cat <<EOF >/opt/zookeeper/conf/zoo.cfg
tickTime=2000
@@ -256,7 +257,7 @@ customize
msg_info "Cleaning up"
rm -rf ~/zookeeper.tar.gz
rm -rf ~/apache-zookeeper-3.8.4-bin
rm -rf ~/apache-zookeeper-*-bin
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -30,9 +30,9 @@ $STD apt-get install -y --no-install-recommends \
libxmlsec1-openssl
msg_ok "Installed Dependencies"
NODE_VERSION="20" NODE_MODULE="yarn" setup_nodejs
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor"
PG_VERSION="16" setup_postgresql
PG_VERSION="17" PG_MODULES="contrib" setup_postgresql
PYTHON_VERSION="3.13" setup_uv
msg_info "Set up PostgreSQL Database"
@@ -45,6 +45,8 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMP
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC'"
$STD sudo -u postgres psql -d "$DB_NAME" -c "CREATE EXTENSION IF NOT EXISTS unaccent;"
$STD sudo -u postgres psql -d "$DB_NAME" -c "CREATE EXTENSION IF NOT EXISTS pg_trgm;"
{
echo "Tandoor-Credentials"
echo "Tandoor Database Name: $DB_NAME"

View File

@@ -22,7 +22,7 @@ $STD npm install
$STD npm run build
mkdir /opt/tracktor-data
HOST_IP=$(hostname -I | awk '{print $1}')
cat <<EOF >/opt/tracktor/app/backend/.env
cat <<EOF >/opt/tracktor.env
NODE_ENV=production
PUBLIC_DEMO_MODE=false
DB_PATH=/opt/tracktor-data/tracktor.db
@@ -31,6 +31,7 @@ PUBLIC_API_BASE_URL=http://$HOST_IP:3000
# Here add the reverse proxy url as well to avoid cross errors from the app.
CORS_ORIGINS=http://$HOST_IP:3000
PORT=3000
AUTH_PIN=123456
EOF
msg_ok "Configured Tracktor"
@@ -43,7 +44,7 @@ After=network.target
[Service]
Type=simple
WorkingDirectory=/opt/tracktor
EnvironmentFile=/opt/tracktor/app/backend/.env
EnvironmentFile=/opt/tracktor.env
ExecStart=/usr/bin/npm start
[Install]
@@ -56,6 +57,7 @@ motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

101
install/tunarr-install.sh Normal file
View File

@@ -0,0 +1,101 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 tteck
# Author: chrisbenincasa
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://tunarr.com/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Setting Up Hardware Acceleration"
if [[ "$CTTYPE" == "0" ]]; then
$STD adduser "$(id -un)" video
$STD adduser "$(id -un)" render
fi
msg_ok "Base Hardware Acceleration Set Up"
read -r -p "${TAB3}Do you need the intel-media-va-driver-non-free driver for HW encoding (Debian 13 only)? <y/N> " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing Intel Hardware Acceleration (non-free)"
cat <<'EOF' >/etc/apt/sources.list.d/non-free.sources
Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: trixie
Components: non-free non-free-firmware
Types: deb deb-src
URIs: http://deb.debian.org/debian-security
Suites: trixie-security
Components: non-free non-free-firmware
Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: trixie-updates
Components: non-free non-free-firmware
EOF
$STD apt update
$STD apt -y install \
intel-media-va-driver-non-free \
ocl-icd-libopencl1 \
mesa-opencl-icd \
mesa-va-drivers \
libvpl2 \
vainfo \
intel-gpu-tools
else
msg_info "Installing Intel Hardware Acceleration (open packages)"
$STD apt -y install \
va-driver-all \
ocl-icd-libopencl1 \
mesa-opencl-icd \
mesa-va-drivers \
vainfo \
intel-gpu-tools
fi
msg_ok "Installed and Set Up Intel Hardware Acceleration"
fetch_and_deploy_gh_release "tunarr" "chrisbenincasa/tunarr" "singlefile" "latest" "/opt/tunarr" "*linux-x64"
fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz"
msg_info "Set ErsatzTV-ffmpeg links"
chmod +x /opt/ErsatzTV-ffmpeg/bin/*
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffmpeg /usr/bin/ffmpeg
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffplay /usr/bin/ffplay
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/bin/ffprobe
msg_ok "ffmpeg links set"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/tunarr.service
[Unit]
Description=Tunarr Service
After=multi-user.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/tunarr
ExecStart=/opt/tunarr/tunarr
Restart=always
RestartSec=30
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now tunarr
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

56
install/upsnap-install.sh Normal file
View File

@@ -0,0 +1,56 @@
#!/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/seriousm4x/UpSnap
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt install -y \
nmap \
samba \
samba-common-bin \
openssh-client \
openssh-server \
sshpass
msg_ok "Installed Dependencies"
fetch_and_deploy_gh_release "upsnap" "seriousm4x/UpSnap" "prebuild" "latest" "/opt/upsnap" "UpSnap_*_linux_amd64.zip"
setcap 'cap_net_raw=+ep' /opt/upsnap/upsnap
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/upsnap.service
[Unit]
Description=UpSnap Service
Documentation=https://github.com/seriousm4x/UpSnap/wiki
After=network.target
[Service]
Type=simple
User=root
Restart=on-failure
WorkingDirectory=/opt/upsnap
ExecStart=/opt/upsnap/upsnap serve --http=0.0.0.0:8090
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now upsnap
msg_ok "Service Created"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -13,20 +13,61 @@ setting_up_container
network_check
update_os
PG_VERSION="17" setup_postgresql
msg_info "Installing Zabbix"
cd /tmp
curl -fsSL "$(curl -fsSL https://repo.zabbix.com/zabbix/ |
grep -oP '(?<=href=")[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1 |
xargs -I{} echo "https://repo.zabbix.com/zabbix/{}/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb")" \
-o /tmp/zabbix-release_latest+debian12_all.deb
$STD dpkg -i /tmp/zabbix-release_latest+debian12_all.deb
$STD apt-get update
$STD apt-get install -y zabbix-server-pgsql zabbix-frontend-php php8.2-pgsql zabbix-apache-conf zabbix-sql-scripts
$STD apt-get install -y zabbix-agent2 zabbix-agent2-plugin-*
xargs -I{} echo "https://repo.zabbix.com/zabbix/{}/release/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian13_all.deb")" \
-o /tmp/zabbix-release_latest+debian13_all.deb
$STD dpkg -i /tmp/zabbix-release_latest+debian13_all.deb
$STD apt update
$STD apt install -y zabbix-server-pgsql zabbix-frontend-php php8.4-pgsql zabbix-apache-conf zabbix-sql-scripts
msg_ok "Installed Zabbix"
while true; do
read -rp "Which agent do you want to install? [1=agent (classic), 2=agent2 (modern), default=1]: " AGENT_CHOICE
case "$AGENT_CHOICE" in
2)
AGENT_PKG="zabbix-agent2"
break
;;
"" | 1)
AGENT_PKG="zabbix-agent"
break
;;
*)
echo "Invalid choice. Please enter 1 or 2."
;;
esac
done
msg_ok "Selected $AGENT_PKG"
if [ "$AGENT_PKG" = "zabbix-agent2" ]; then
echo "Choose plugins for Zabbix Agent2:"
echo "1) PostgreSQL only (default, recommended)"
echo "2) All plugins (may cause issues)"
read -rp "Choose option [1-2]: " PLUGIN_CHOICE
case "$PLUGIN_CHOICE" in
2)
$STD apt install -y zabbix-agent2 zabbix-agent2-plugin-*
;;
*)
$STD apt install -y zabbix-agent2 zabbix-agent2-plugin-postgresql
;;
esac
if [ -f /etc/zabbix/zabbix_agent2.d/plugins.d/nvidia.conf ]; then
sed -i 's|^Plugins.NVIDIA.System.Path=.*|# Plugins.NVIDIA.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-nvidia-gpu|' \
/etc/zabbix/zabbix_agent2.d/plugins.d/nvidia.conf
fi
else
$STD apt install -y zabbix-agent
fi
msg_info "Setting up PostgreSQL"
$STD apt-get install -y postgresql
DB_NAME=zabbixdb
DB_USER=zabbix
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)
@@ -35,18 +76,31 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCO
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC'"
{
echo "Zabbix-Credentials"
echo "Zabbix Database User: $DB_USER"
echo "Zabbix Database Password: $DB_PASS"
echo "Zabbix Database Name: $DB_NAME"
} >>~/zabbix.creds
zcat /usr/share/zabbix/sql-scripts/postgresql/server.sql.gz | sudo -u $DB_USER psql $DB_NAME &>/dev/null
sed -i "s/^DBName=.*/DBName=$DB_NAME/" /etc/zabbix/zabbix_server.conf
sed -i "s/^DBUser=.*/DBUser=$DB_USER/" /etc/zabbix/zabbix_server.conf
sed -i "s/^# DBPassword=.*/DBPassword=$DB_PASS/" /etc/zabbix/zabbix_server.conf
echo "" >~/zabbix.creds
echo "zabbix Database Credentials" >>~/zabbix.creds
echo "" >>~/zabbix.creds
echo -e "zabbix Database User: \e[32m$DB_USER\e[0m" >>~/zabbix.creds
echo -e "zabbix Database Password: \e[32m$DB_PASS\e[0m" >>~/zabbix.creds
echo -e "zabbix Database Name: \e[32m$DB_NAME\e[0m" >>~/zabbix.creds
msg_ok "Set up PostgreSQL"
msg_info "Configuring Fping"
if command -v fping >/dev/null 2>&1; then
FPING_PATH=$(command -v fping)
sed -i "s|^#\?FpingLocation=.*|FpingLocation=$FPING_PATH|" /etc/zabbix/zabbix_server.conf
fi
if command -v fping6 >/dev/null 2>&1; then
FPING6_PATH=$(command -v fping6)
sed -i "s|^#\?Fping6Location=.*|Fping6Location=$FPING6_PATH|" /etc/zabbix/zabbix_server.conf
fi
msg_ok "Configured Fping"
msg_info "Starting Services"
systemctl restart zabbix-server zabbix-agent2 apache2
systemctl enable -q --now zabbix-server zabbix-agent2 apache2
@@ -56,7 +110,8 @@ motd_ssh
customize
msg_info "Cleaning up"
rm -rf /tmp/zabbix-release_latest+debian12_all.deb
$STD apt-get -y autoremove
$STD apt-get -y autoclean
rm -rf /tmp/zabbix-release_latest+debian13_all.deb
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -42,11 +42,11 @@ error_handler() {
echo -e "\n$error_message\n"
}
# Check if the shell is using bash
# Check if the current shell is using bash
shell_check() {
if [[ "$(basename "$SHELL")" != "bash" ]]; then
if [[ "$(ps -p $$ -o comm=)" != "bash" ]]; then
clear
msg_error "Your default shell is currently not set to Bash. To use these scripts, please switch to the Bash shell."
msg_error "Your default shell is not bash. Please report this to our github issues or discord."
echo -e "\nExiting..."
sleep 2
exit

View File

@@ -306,6 +306,9 @@ function fetch_and_deploy_gh_release() {
msg_info "Fetching GitHub release: $app ($version)"
local clean_install=false
[[ -n "${CLEAN_INSTALL:-}" && "$CLEAN_INSTALL" == "1" ]] && clean_install=true
### Tarball Mode ###
if [[ "$mode" == "tarball" || "$mode" == "source" ]]; then
url=$(echo "$json" | jq -r '.tarball_url // empty')
@@ -319,6 +322,10 @@ function fetch_and_deploy_gh_release() {
}
mkdir -p "$target"
if [[ "${CLEAN_INSTALL:-0}" == "1" ]]; then
rm -rf "${target:?}/"*
fi
tar -xzf "$tmpdir/$filename" -C "$tmpdir"
local unpack_dir
unpack_dir=$(find "$tmpdir" -mindepth 1 -maxdepth 1 -type d | head -n1)
@@ -425,6 +432,9 @@ function fetch_and_deploy_gh_release() {
local unpack_tmp
unpack_tmp=$(mktemp -d)
mkdir -p "$target"
if [[ "${CLEAN_INSTALL:-0}" == "1" ]]; then
rm -rf "${target:?}/"*
fi
if [[ "$filename" == *.zip ]]; then
if ! command -v unzip &>/dev/null; then
@@ -1322,7 +1332,7 @@ function setup_mysql() {
CURRENT_OS="$(awk -F= '/^ID=/{print $2}' /etc/os-release)"
if command -v mysql >/dev/null; then
CURRENT_VERSION="$(mysql --version | grep -oP 'Distrib\s+\K[0-9]+\.[0-9]+')"
CURRENT_VERSION="$(mysql --version | grep -oP '[0-9]+\.[0-9]+' | head -n1)"
if [[ "$CURRENT_VERSION" != "$MYSQL_VERSION" ]]; then
$STD msg_info "MySQL $CURRENT_VERSION will be upgraded to $MYSQL_VERSION"
NEED_INSTALL=true
@@ -1960,9 +1970,8 @@ function setup_uv() {
export PATH="/usr/local/bin:$PATH"
fi
ensure_usr_local_bin_persist
if ! $STD uv python update-shell; then
msg_error "uv shell integration failed continuing anyway"
fi
$STD uv python update-shell >/dev/null 2>&1 || true
msg_ok "Setup uv $LATEST_VERSION"
# Optional: install specific Python version
@@ -2012,6 +2021,8 @@ function setup_yq() {
}
fi
[[ ":$PATH:" != *":/usr/local/bin:"* ]] && echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc && source ~/.bashrc
if command -v yq &>/dev/null; then
if ! yq --version 2>&1 | grep -q 'mikefarah'; then
rm -f "$(command -v yq)"

84
tools/pve/execute.sh Normal file
View File

@@ -0,0 +1,84 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: jeroenzwart
# License: MIT
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
function header_info() {
clear
cat <<"EOF"
______ __ __ _ ________
/ ____/ _____ _______ __/ /____ / / | |/ / ____/
/ __/ | |/_/ _ \/ ___/ / / / __/ _ \ / / | / /
/ /____> </ __/ /__/ /_/ / /_/ __/ / /___/ / /___
/_____/_/|_|\___/\___/\__,_/\__/\___/ /_____/_/|_\____/
EOF
}
set -eEuo pipefail
BL=$(echo "\033[36m")
RD=$(echo "\033[01;31m")
CM='\xE2\x9C\x94\033'
GN=$(echo "\033[1;92m")
CL=$(echo "\033[m")
header_info
echo "Loading..."
whiptail --backtitle "Proxmox VE Helper Scripts" --title "Proxmox VE LXC Execute" --yesno "This will execute a command inside selected LXC Containers. Proceed?" 10 58
NODE=$(hostname)
EXCLUDE_MENU=()
MSG_MAX_LENGTH=0
while read -r TAG ITEM; do
OFFSET=2
((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=${#ITEM}+OFFSET
EXCLUDE_MENU+=("$TAG" "$ITEM " "OFF")
done < <(pct list | awk 'NR>1')
excluded_containers=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Containers on $NODE" --checklist "\nSelect containers to skip from executing:\n" \
16 $((MSG_MAX_LENGTH + 23)) 6 "${EXCLUDE_MENU[@]}" 3>&1 1>&2 2>&3 | tr -d '"')
if [ $? -ne 0 ]; then
exit
fi
read -r -p "Enter here command for inside the containers: " custom_command
header_info
echo "One moment please...\n"
function execute_in() {
container=$1
name=$(pct exec "$container" hostname)
echo -e "${BL}[Info]${GN} Execute inside${BL} ${name}${GN} with output: ${CL}"
pct exec "$container" -- bash -c "${custom_command}" | tee
}
for container in $(pct list | awk '{if(NR>1) print $1}'); do
if [[ " ${excluded_containers[@]} " =~ " $container " ]]; then
echo -e "${BL}[Info]${GN} Skipping ${BL}$container${CL}"
else
os=$(pct config "$container" | awk '/^ostype/ {print $2}')
if [ "$os" != "debian" ] && [ "$os" != "ubuntu" ]; then
echo -e "${BL}[Info]${GN} Skipping ${name} ${RD}$container is not Debian or Ubuntu ${CL}"
continue
fi
status=$(pct status "$container")
template=$(pct config "$container" | grep -q "template:" && echo "true" || echo "false")
if [ "$template" == "false" ] && [ "$status" == "status: stopped" ]; then
echo -e "${BL}[Info]${GN} Starting${BL} $container ${CL}"
pct start "$container"
echo -e "${BL}[Info]${GN} Waiting For${BL} $container${CL}${GN} To Start ${CL}"
sleep 5
execute_in "$container"
echo -e "${BL}[Info]${GN} Shutting down${BL} $container ${CL}"
pct shutdown "$container" &
elif [ "$status" == "status: running" ]; then
execute_in "$container"
fi
fi
done
wait
echo -e "${GN} Finished, execute command inside selected containers. ${CL} \n"

View File

@@ -532,20 +532,28 @@ if [ -f "$MOBILE_TPL" ] && ! grep -q "$MARKER" "$MOBILE_TPL"; then
"$MARKER" \
"<script>" \
" function removeSubscriptionElements() {" \
" // --- Remove subscription dialogs ---" \
" const dialogs = document.querySelectorAll('dialog.pwt-outer-dialog');" \
" dialogs.forEach(dialog => {" \
" const closeButton = dialog.querySelector('.fa-close');" \
" const exclamationIcon = dialog.querySelector('.fa-exclamation-triangle');" \
" const continueButton = dialog.querySelector('button');" \
" if (closeButton && exclamationIcon && continueButton) { dialog.remove(); console.log('Removed subscription dialog'); }" \
" const text = (dialog.textContent || '').toLowerCase();" \
" if (text.includes('subscription')) {" \
" dialog.remove();" \
" console.log('Removed subscription dialog');" \
" }" \
" });" \
"" \
" // --- Remove subscription cards, but keep Reboot/Shutdown/Console ---" \
" const cards = document.querySelectorAll('.pwt-card.pwt-p-2.pwt-d-flex.pwt-interactive.pwt-justify-content-center');" \
" cards.forEach(card => {" \
" const hasInteractiveElements = card.querySelector('button, input, a');" \
" const hasComplexStructure = card.querySelector('.pwt-grid, .pwt-flex, .pwt-button');" \
" if (!hasInteractiveElements && !hasComplexStructure) { card.remove(); console.log('Removed subscription card'); }" \
" const text = (card.textContent || '').toLowerCase();" \
" const hasButton = card.querySelector('button');" \
" if (!hasButton && text.includes('subscription')) {" \
" card.remove();" \
" console.log('Removed subscription card');" \
" }" \
" });" \
" }" \
"" \
" const observer = new MutationObserver(removeSubscriptionElements);" \
" observer.observe(document.body, { childList: true, subtree: true });" \
" removeSubscriptionElements();" \
@@ -555,7 +563,6 @@ if [ -f "$MOBILE_TPL" ] && ! grep -q "$MARKER" "$MOBILE_TPL"; then
"" >> "$MOBILE_TPL"
fi
EOF
chmod 755 /usr/local/bin/pve-remove-nag.sh
cat >/etc/apt/apt.conf.d/no-nag-script <<'EOF'

View File

@@ -205,15 +205,69 @@ function exit-script() {
exit
}
# Ensure pv is installed or abort with instructions
function ensure_pv() {
if ! command -v pv &>/dev/null; then
msg_info "Installing required package: pv"
apt-get update -qq &>/dev/null
apt-get install -y pv &>/dev/null
if ! apt-get update -qq &>/dev/null || ! apt-get install -y pv &>/dev/null; then
msg_error "Failed to install pv automatically."
echo -e "\nPlease run manually on the Proxmox host:\n apt install pv\n"
exit 1
fi
msg_ok "Installed pv"
fi
}
# Download an .xz file and validate it
# Args: $1=url $2=cache_file
function download_and_validate_xz() {
local url="$1"
local file="$2"
# If file exists, check validity
if [[ -s "$file" ]]; then
if xz -t "$file" &>/dev/null; then
msg_ok "Using cached image $(basename "$file")"
return 0
else
msg_error "Cached file $(basename "$file") is corrupted. Deleting and retrying download..."
rm -f "$file"
fi
fi
# Download fresh file
msg_info "Downloading image: $(basename "$file")"
if ! curl -fSL -o "$file" "$url"; then
msg_error "Download failed: $url"
rm -f "$file"
exit 1
fi
# Validate again
if ! xz -t "$file" &>/dev/null; then
msg_error "Downloaded file $(basename "$file") is corrupted. Please try again later."
rm -f "$file"
exit 1
fi
msg_ok "Downloaded and validated $(basename "$file")"
}
# Extract .xz with pv
# Args: $1=cache_file $2=target_img
function extract_xz_with_pv() {
set -o pipefail
local file="$1"
local target="$2"
msg_info "Decompressing $(basename "$file") to $target"
if ! xz -dc "$file" | pv -N "Extracting" >"$target"; then
msg_error "Failed to extract $file"
rm -f "$target"
exit 1
fi
msg_ok "Decompressed to $target"
}
function default_settings() {
BRANCH="$stable"
VMID=$(get_valid_nextid)
@@ -507,23 +561,15 @@ FILE_IMG="/var/lib/vz/template/tmp/${CACHE_FILE##*/%.xz}" # .qcow2
mkdir -p "$CACHE_DIR" "$(dirname "$FILE_IMG")"
msg_ok "${CL}${BL}${URL}${CL}"
if [[ ! -s "$CACHE_FILE" ]]; then
curl -f#SL -o "$CACHE_FILE" "$URL"
msg_ok "Downloaded ${CL}${BL}$(basename "$CACHE_FILE")${CL}"
else
msg_ok "Using cached image ${CL}${BL}$(basename "$CACHE_FILE")${CL}"
fi
download_and_validate_xz "$URL" "$CACHE_FILE"
set -o pipefail
msg_info "Creating Home Assistant OS VM shell"
qm create "$VMID" -machine q35 -bios ovmf -agent 1 -tablet 0 -localtime 1 ${CPU_TYPE} \
-cores "$CORE_COUNT" -memory "$RAM_SIZE" -name "$HN" -tags community-script \
-net0 "virtio,bridge=$BRG,macaddr=$MAC$VLAN$MTU" -onboot 1 -ostype l26 -scsihw virtio-scsi-pci >/dev/null
msg_ok "Created VM shell"
msg_info "Decompressing $(basename "$CACHE_FILE") to $FILE_IMG"
xz -dc "$CACHE_FILE" | pv -N "Extracting" >"$FILE_IMG"
msg_ok "Decompressed to $FILE_IMG"
extract_xz_with_pv "$CACHE_FILE" "$FILE_IMG"
msg_info "Importing disk into storage ($STORAGE)"
if qm disk import --help >/dev/null 2>&1; then

View File

@@ -35,7 +35,6 @@ GN=$(echo "\033[1;92m")
DGN=$(echo "\033[32m")
CL=$(echo "\033[m")
CL=$(echo "\033[m")
BOLD=$(echo "\033[1m")
BFR="\\r\\033[K"
HOLD=" "
@@ -201,15 +200,69 @@ function exit-script() {
exit
}
# Ensure pv is installed or abort with instructions
function ensure_pv() {
if ! command -v pv &>/dev/null; then
msg_info "Installing required package: pv"
apt-get update -qq &>/dev/null
apt-get install -y pv &>/dev/null
if ! apt-get update -qq &>/dev/null || ! apt-get install -y pv &>/dev/null; then
msg_error "Failed to install pv automatically."
echo -e "\nPlease run manually on the Proxmox host:\n apt install pv\n"
exit 1
fi
msg_ok "Installed pv"
fi
}
# Download an .xz file and validate it
# Args: $1=url $2=cache_file
function download_and_validate_xz() {
local url="$1"
local file="$2"
# If file exists, check validity
if [[ -s "$file" ]]; then
if xz -t "$file" &>/dev/null; then
msg_ok "Using cached image $(basename "$file")"
return 0
else
msg_error "Cached file $(basename "$file") is corrupted. Deleting and retrying download..."
rm -f "$file"
fi
fi
# Download fresh file
msg_info "Downloading image: $(basename "$file")"
if ! curl -fSL -o "$file" "$url"; then
msg_error "Download failed: $url"
rm -f "$file"
exit 1
fi
# Validate again
if ! xz -t "$file" &>/dev/null; then
msg_error "Downloaded file $(basename "$file") is corrupted. Please try again later."
rm -f "$file"
exit 1
fi
msg_ok "Downloaded and validated $(basename "$file")"
}
# Extract .xz with pv
# Args: $1=cache_file $2=target_img
function extract_xz_with_pv() {
set -o pipefail
local file="$1"
local target="$2"
msg_info "Decompressing $(basename "$file") to $target"
if ! xz -dc "$file" | pv -N "Extracting" >"$target"; then
msg_error "Failed to extract $file"
rm -f "$target"
exit 1
fi
msg_ok "Decompressed to $target"
}
function default_settings() {
VMID=$(get_valid_nextid)
MACHINE="q35"
@@ -475,19 +528,13 @@ FILE_IMG="/var/lib/vz/template/tmp/${CACHE_FILE##*/%.xz}"
mkdir -p "$CACHE_DIR" "$(dirname "$FILE_IMG")"
if [[ ! -s "$CACHE_FILE" ]]; then
msg_ok "Downloading Umbrel OS image"
curl -f#SL -o "$CACHE_FILE" "$URL"
else
msg_ok "Using cached Umbrel OS image"
fi
download_and_validate_xz "$URL" "$CACHE_FILE"
set -o pipefail
qm create "$VMID" -machine q35 -bios ovmf -agent 1 -tablet 0 -localtime 1 ${CPU_TYPE} \
-cores "$CORE_COUNT" -memory "$RAM_SIZE" -name "$HN" -tags community-script \
-net0 "virtio,bridge=$BRG,macaddr=$MAC$VLAN$MTU" -onboot 1 -ostype l26 -scsihw virtio-scsi-pci >/dev/null
xz -dc "$CACHE_FILE" | pv -N "Extracting" >"$FILE_IMG"
extract_xz_with_pv "$CACHE_FILE" "$FILE_IMG"
if qm disk import --help >/dev/null 2>&1; then
IMPORT_CMD=(qm disk import)