Compare commits

..

306 Commits

Author SHA1 Message Date
Michel Roegl-Brunner
59152d7a48 Merge branch 'main' into deb13_c_to_a 2025-11-12 11:43:52 +01:00
community-scripts-pr-app[bot]
a3269c88d4 Update CHANGELOG.md (#9082)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:56 +01:00
CanbiZ
f4d94ff6ba Bump K to H-Scripts to Debian 13 (Trixie) (#8597)
* Update scripts to use Debian 13 and improve update logic

Bump default container OS version from Debian 12 to 13 across multiple LXC setup scripts. Refactor update_script functions for consistency, improve messaging, and standardize apt usage. Update Kimai install and update scripts to use setup_php, setup_composer, and fetch_and_deploy_gh_release helpers, and switch from MySQL to MariaDB. Update Kometa to use Python 3.13. Minor improvements to backup, cleanup, and service management steps in several scripts.

* Refactor install scripts: unify cleanup and apt usage

Replaces repeated apt-get commands with apt for installing dependencies, and consolidates cleanup steps into a single cleanup_lxc function across all install scripts. Also updates repository setup to use setup_deb822_repo where applicable, and makes minor improvements to dependency installation and service setup.

* Update default Debian version to 13 and refactor updates

Set the default Debian version to 13 across all container scripts. Standardize apt command usage by replacing 'apt-get' with 'apt' where appropriate. Remove redundant cleanup steps from update scripts and streamline update logic for consistency. Also, call 'cleanup_lxc' after 'update_script' in the build function.

* Update default OS version to Debian 13 in JSON configs

Updated the 'version' field from '12' to '13' for Debian-based install methods across multiple application JSON files. Also set default OS and version for inspircd. This ensures new containers use the latest supported Debian release.

* fix kimai Update Check

* grammar

* Correct typo in success message

* Fix typo in success message for update

* refactor

* fixed jenkins / improve komodo

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 11:18:56 +01:00
community-scripts-pr-app[bot]
bc9553733d Update CHANGELOG.md (#9081)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:56 +01:00
Tobias
2557f0e289 Refactor: web-check (#9055) 2025-11-12 11:18:56 +01:00
community-scripts-pr-app[bot]
4cb7a6b637 Update CHANGELOG.md (#9080)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:56 +01:00
CanbiZ
2ed76caf15 openwebui: Python version usage | core: zsh completion install (#9079) 2025-11-12 11:18:56 +01:00
Karel Wintersky
7d10f60d23 Update livebook.json (#9070)
Fixed incorrect path to livebook.creds file
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
d6782e40b4 Update CHANGELOG.md (#9078)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
Tobias
398352f3e8 chore: evcc: refactor (#9057)
* chore: evcc: refactor

* chore: evcc: update to deb822

* fix

* update

* fix

* fix

* Fix version codename retrieval in evcc.sh

* Fix version codename retrieval in install script

* Remove installation of lsb-release dependency

Removed dependency installation for lsb-release.

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
b6f09e2318 Update CHANGELOG.md (#9077)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
Bram
217867beb8 Refactor analytics to use Rybbit instead of Umami (#9072) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
d841950abe Update CHANGELOG.md (#9074)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
7449a15401 Update versions.json (#9073)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
059c4e728a Update CHANGELOG.md (#9066)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
32434b4247 Update CHANGELOG.md (#9065)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
2d66f327c9 Update date in json (#9064)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
push-app-to-main[bot]
7baddb92da 'Add new script' (#9029) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
2eca1e4c2b Update CHANGELOG.md (#9062)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
28310dec5e Refactor: openHAB (#9060) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
297af6bdd8 Update CHANGELOG.md (#9059)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
12a5b9b9c2 Fix JDK count variable initialization in setup_java (#9058) 2025-11-12 11:18:55 +01:00
CanbiZ
f4530715d0 qf: phpipham php8.3 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
0dd74f392a Update versions.json (#9052)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
1ef5019b65 Update CHANGELOG.md (#9051)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
30c9f79051 [docs / gh]: modernize README | Change Version Support in SECURITY.md | Shoutout to selfhst\icons (#9049) 2025-11-12 11:18:55 +01:00
Michel Roegl-Brunner
66175fbe58 Remove Dashy (#9050) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
e440f366fc Update CHANGELOG.md (#9048)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
Tobias
94318dfd7e flaresolverr: unpin - use latest version (#9046)
* revert: flaresolverr: latest update again

* Update FlareSolverr installation to use latest version

* fix
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
6b80eecba6 Update CHANGELOG.md (#9045)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
Slaviša Arežina
3eeed0fc2d Upgrade RAM (#9039) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
3df2f8e8f9 Update CHANGELOG.md (#9043)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
9655a62c72 Update versions.json (#9042)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
db0bb3e8d9 Update CHANGELOG.md (#9037)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
Matt17000
8d83c30b59 Update plex.sh (#9036) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
132cb607e9 Update CHANGELOG.md (#9032)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
9fb1b692d1 Refactor: phpIPAM (#9027) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
dd71e2fadd Update CHANGELOG.md (#9031)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
c33969aafc Add helper functions for MariaDB and PostgreSQL setup (#9026) 2025-11-12 11:18:55 +01:00
CanbiZ
ec5a0b80ea Improve service stopping logic in stop_all_services
Refactored stop_all_services to handle empty service lists and avoid pipeline failures. Now checks for found services before attempting to stop and disable them, improving robustness and error handling.
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
36a746d05f Update CHANGELOG.md (#9024)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
46354ba47b core: update message for no available updates scenario (if pinned) (#9021) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
10fa148dfb Update versions.json (#9023)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
63864cfe7a Update CHANGELOG.md (#9022)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
094695dc93 Migrate Open WebUI to uv-based installation (#9019)
* Migrate Open WebUI to uv-based installation

Added migration logic to detect and upgrade legacy Open WebUI installations to a uv-based setup, including data backup and service recreation. Updated install and update scripts to use uv for installing Open WebUI and adjusted service configuration and cleanup steps accordingly.

* english

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
CanbiZ
8bb9f18f94 Fix consumption directory retrieval in script 2025-11-12 11:18:55 +01:00
Slaviša Arežina
2b33ba975f Update website (#8971) 2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
0eeb8bb8a8 Update CHANGELOG.md (#9016)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
b962ad66c6 Update versions.json (#9015)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
56d283e534 Update CHANGELOG.md (#9011)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:55 +01:00
akileos
018afd6f94 Add wkhtmltopdf to Odoo installation dependencies (#9010)
Required for invoice/ticket generation
2025-11-12 11:18:55 +01:00
community-scripts-pr-app[bot]
38b20a642d Update CHANGELOG.md (#9009)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
chrikodo
e8a16e129e fix(n8n): Add python3-setuptools dependency for Debian 13 (#9007)
Fixes ModuleNotFoundError: No module named 'distutils'
during sqlite3 compile on Python 3.12+ (Debian 13)
by adding the required setuptools package.
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
c34e4b4a38 Update CHANGELOG.md (#9008)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Sven Schneider
efc75bdc00 fix(jotty): Comments removed from variables, as they are interpreted. (#9002)
The following comments have been removed because they cause the comments to become part of the variable's value and therefore cannot be interpreted by the application.
 
SSO_FALLBACK_LOCAL=yes # Allow both SSO and normal login
OIDC_CLIENT_SECRET=your_client_secret  # Enable confidential client mode with client authentication
OIDC_ADMIN_GROUPS=admins # Map provider groups to admin role

https://github.com/fccview/jotty/issues/200#issuecomment-3508394682
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
f542b75f54 Update CHANGELOG.md (#9005)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Chris
ae801bf961 Paperless-ngx: hotfix config path (#9003) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
fe379c4ea9 Update CHANGELOG.md (#9001)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
CanbiZ
0506d711f5 core: improve log cleaning (#8999)
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
efa5d93a77 Update versions.json (#9000)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
4e47e8a762 Update CHANGELOG.md (#8997)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Chris
c6c3e99a7c Paperless-NGX: Move config backup outside of app folder (#8996) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
5386309f01 Update CHANGELOG.md (#8994)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
e837a6e941 Update versions.json (#8993)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
45ff93ac66 Update CHANGELOG.md (#8992)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
CanbiZ
98980e1d2b paperless: refactor - remove backup after update and enable clean install (#8988) 2025-11-12 11:18:54 +01:00
CanbiZ
78bbf1aa32 fix unbound $6 in deb822 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
92ede6e5b7 Update CHANGELOG.md (#8989)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
CanbiZ
673a60a464 Refactor setup_deb822_repo for optional architectures (#8983)
* Refactor setup_deb822_repo for optional architectures

Refactor setup_deb822_repo function to make architectures optional and improve GPG key download logic.

* Refactor setup_deb822_repo for clarity and efficiency

Refactor setup_deb822_repo function to improve parameter handling and error messages.
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
5189777898 Update CHANGELOG.md (#8985)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Slaviša Arežina
33d7d91789 Technitium DNS: Fix update (#8980)
* Fix update

* Update technitiumdns-install.sh
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
f212a7525b Update CHANGELOG.md (#8982)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Chris
4c6596666b MediaManager: add LOG_FILE to start.sh script; fix BASE_PATH and PUBLIC_API_URL (#8981) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
d200b3e216 Update versions.json (#8979)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
68a2a3b79e Update CHANGELOG.md (#8974)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Slaviša Arežina
7bfbda8204 Fix update (#8972) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
726be4c58e Update CHANGELOG.md (#8973)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Slaviša Arežina
1ede1afb32 Fix (#8969) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
450501a3f3 Update CHANGELOG.md (#8966)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Lulo Dev
c122b14a9d Set TZ=Etc/UTC in Ghostfolio installation script when configuring environment variables (#8961) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
dfe310809a Update CHANGELOG.md (#8963)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
84a3e848bd Update versions.json (#8962)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
32879d531a Update CHANGELOG.md (#8953)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Slaviša Arežina
13d1f11c25 Pangolin: Add Traefik proxy (#8952)
* Add Traefik

* Update

* Update
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
8d88214ff4 Update versions.json (#8950)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
5774d8a281 Update CHANGELOG.md (#8947)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
CanbiZ
7b4da08dba Update script URLs to ProxmoxVE repository (#8946)
Corrected references from 'ProxmoxVED' to 'ProxmoxVE' in sourced URLs across livebook.sh, glances.sh, and pve-privilege-converter.sh to ensure scripts use the correct repository.
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
666e0efa8d Update CHANGELOG.md (#8944)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
CanbiZ
be5a0ad346 tools.func: fix amd64 arm64 missmatch (#8943) 2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
e57ce97847 Update CHANGELOG.md (#8940)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
push-app-to-main[bot]
abe7dc631d infisical (#8926)
* 'Add new script'

* Update infisical.sh

* Update Infisical installation script with dynamic keys

* Remove cleanup commands from install script

Removed cleanup commands from the Infisical installation script.

* Refactor Infisical repository setup process

* Update date_created to 2025-11-07

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
4990162ed5 Update CHANGELOG.md (#8939)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
CanbiZ
ae470a95f5 ghostfolio: refactor CoinGecko key prompts in installer (#8935)
Updated CoinGecko API configuration messages for clarity.
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
51f33f3309 Update CHANGELOG.md (#8938)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Tobias
90fdc2a2f4 flaresolverr: pin release to 3.4.3 (#8937)
* fix: flaresolverr: pin release to 3.4.3

* fix: flaresolverr: pin release to 3.4.3

* Specify version for FlareSolverr release check

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
ced7276338 Update CHANGELOG.md (#8930)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
fe52ef2c8e Update versions.json (#8929)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
community-scripts-pr-app[bot]
7e16803465 Update CHANGELOG.md (#8923)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:54 +01:00
Slaviša Arežina
616d71e067 Refactor: Graylog (#8912)
* Refactor

* Update graylog.sh

* Update graylog-install.sh
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
d361fc91f1 Update CHANGELOG.md (#8921)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Slaviša Arežina
08897cbaae Remove duplicate server_path_prefix configuration (#8919) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
a28a3813c2 Update CHANGELOG.md (#8920)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Slaviša Arežina
23f6b759e8 Change directory to /opt/grist before build steps (#8913) 2025-11-12 11:18:53 +01:00
CanbiZ
b38201574c Create temp file for SonarQube download
Added temporary file creation for SonarQube installation.
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
782b3561a3 Update CHANGELOG.md (#8909)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Chris
895c0b8e4e Jotty hotfix: SSO_FALLBACK_LOCAL value (#8907) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
8b57855c6c Update versions.json (#8905)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
47a6078e55 Update CHANGELOG.md (#8904)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
a2ac2ef86a npm: add Debian version check to update script (#8901) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
67f63315fc Update CHANGELOG.md (#8902)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
08b0304d2e Refactor MongoDB install script to use setup_mongodb (#8897)
Replaces inline MongoDB installation logic with a call to setup_mongodb, passing the selected version via MONGO_VERSION. Updates messaging to use the new variable and removes redundant code.
2025-11-12 11:18:53 +01:00
CanbiZ
1512fa0f57 Add explicit suite mapping for Debian and Ubuntu
Introduces explicit mapping of distro codenames to repository suites for Debian and Ubuntu, with fallbacks for newer or unknown releases. This ensures proper repository setup even when upstream does not yet support the latest distributions.
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
78fe6fa4c5 Update CHANGELOG.md (#8894)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
b7238d89d0 Update versions.json (#8893)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
4d657532f0 Update CHANGELOG.md (#8889)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Chris
59129aace0 Immich: Pin version to 2.2.3 (#8861) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
0f2e17067b Update CHANGELOG.md (#8888)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Chris
62a5361e97 Jotty: increase RAM to 4GB (#8887) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
9711509588 Update CHANGELOG.md (#8884)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
c1a0188864 Refactor agent service control in zabbix.sh (#8881)
Replaces conditional logic for stopping and starting Zabbix agent services with a variable ($AGENT_SERVICE), simplifying service management.
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
9a6de58210 Update CHANGELOG.md (#8883)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
79119715d2 npm: Increase RAM and HDD, update Certbot notes (#8882) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
0f5c510aa9 Update CHANGELOG.md (#8879)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Tobias
1c6f71e349 fix: npm: refactor for v2.13.x (#8870) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
f7475827fe Update CHANGELOG.md (#8878)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Slaviša Arežina
01e2ad02d1 Refactor (#8874) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
75b5831ccb Update CHANGELOG.md (#8877)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
2e9babf040 Refactor(tools.func): Add Retry Logic, OS-Upgrade Safety, Smart Version Detection + 10 Critical Bugfixes (#8871)
* Add robust package and repository management helpers

Introduces unified helper functions for package installation, repository management, and legacy cleanup across Debian/Ubuntu upgrades. Adds retry logic for APT operations, keyring cleanup, service management, version checks, and tool-specific repository setup. Refactors setup functions for Composer, FFmpeg, Go, Ghostscript, ImageMagick, Java, hardware acceleration, and MariaDB to use new helpers, improving reliability and upgrade safety.

* english comment
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
dd0af7ad39 Update versions.json (#8875)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
67c311808b Update CHANGELOG.md (#8873)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Quinten van Buul
54b8e82bb4 Update config_path in donetick.json (#8872)
Edited config path to proper location
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
f8c01defee Update CHANGELOG.md (#8866)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
a61af3209f Update versions.json (#8865)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
c49187fd4d Update versions.json (#8860)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
bf7734cba2 Update CHANGELOG.md (#8859)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
6a6601822a stirling-pdf: add native jbig2 dep to installation script (#8858) 2025-11-12 11:18:53 +01:00
CanbiZ
5df596b60e unifi: json update version 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
1f7b85af5b Update CHANGELOG.md (#8854)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
7ea93e6a7c Update versions.json (#8853)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
81d5c1839b Update CHANGELOG.md (#8849)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Chris
65869ed717 Pin version to 2.2.2 (#8848) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
79fcd16b4a Update CHANGELOG.md (#8847)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
CanbiZ
3a044d5597 Asterisk: handle errors in version retrieval commands (#8844) 2025-11-12 11:18:53 +01:00
community-scripts-pr-app[bot]
fd17a83e01 Update CHANGELOG.md (#8846)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:53 +01:00
Ömer Taha Öztop
0c62b68b39 linkstack: fix wrong directory installation (#8814) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
38f538a210 Update CHANGELOG.md (#8843)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
8a869da3af Update versions.json (#8842)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
b56147e44f Update .app files (#8838)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
565c59a460 Update CHANGELOG.md (#8839)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
396cdc174a Update CHANGELOG.md (#8837)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
e00ff7effa Update date in json (#8836)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
push-app-to-main[bot]
5bf7725e5c Donetick (#8835) 2025-11-12 11:18:52 +01:00
CanbiZ
aace204655 Removed: MeTube (#8830) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
58f3b62e8e Update CHANGELOG.md (#8834)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
CanbiZ
dd1a55ef4d Remove BOM from shebang lines in ct scripts (#8833) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
98f4ffcaac Update CHANGELOG.md (#8832)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
51fd179ce1 Update versions.json (#8831)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
8e05b80410 Update CHANGELOG.md (#8829)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Slaviša Arežina
06a734e8e1 Refactor (#8828) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
882acba706 Update CHANGELOG.md (#8826)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Fabian Kröger
5efe629317 Zigbee2MQTT: fix: pnpm workspace in update (#8825) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
2c8eb71a95 Update CHANGELOG.md (#8822)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Chris
a882d95377 MediaManager: fix BASE_PATH error preventing main page load (#8821) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
759aed901d Update versions.json (#8820)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
51957aa0c9 Update CHANGELOG.md (#8816)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
ccc1917ef9 Update versions.json (#8815)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
57736ffdb2 Update CHANGELOG.md (#8812)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Slaviša Arežina
4764caf151 Fix release fetching (#8807) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
1f9a19e9e7 Update CHANGELOG.md (#8811)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
push-app-to-main[bot]
53535d48e4 Pangolin (#8809)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
637d28368b Update CHANGELOG.md (#8806)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Tobias
e148445ee5 frontend: chore: bump debian OS (#8798)
Removed Debian version 11 from the operating systems list.
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
c8ac257f8a Update CHANGELOG.md (#8803)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Chris
69e20b10f4 Immich: Pin version to 2.2.1 (#8800) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
21fce154e6 Update versions.json (#8801)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
8d13add11e Update CHANGELOG.md (#8797)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
Tobias
303413ea7e jellyfin: fix: initial update (#8784) 2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
f488dcc8e3 Update CHANGELOG.md (#8795)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
35f4554065 Update versions.json (#8794)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:52 +01:00
community-scripts-pr-app[bot]
826c2bf463 Update CHANGELOG.md (#8792)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Andrew Still
f62293fdab Removed errant ` from wireguard.json (#8791) 2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
c707c33841 Update CHANGELOG.md (#8790)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Slaviša Arežina
17044ac6f0 Reitti: Fix missing data directory (#8787)
* Reitti fix

* Update photon.service configuration in install script

* Update
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
a0addd2235 Update versions.json (#8788)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
f1c662e621 Update CHANGELOG.md (#8782)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
CanbiZ
74766832a9 omada: fix update script with mongodb 8 (#8724)
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
22100b17f4 Update CHANGELOG.md (#8781)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Slaviša Arežina
4fe79e701c Update Nginx configuration to use port 6060 (#8780) 2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
a4e338c699 Update CHANGELOG.md (#8778)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Marcio Rinaldi
4a6cf8c695 Fix paths in grist.sh (#8777) 2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
2219c75cb2 Update CHANGELOG.md (#8774)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
9fded22ba2 Update versions.json (#8773)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
27accdb021 Update CHANGELOG.md (#8771)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Chris
3f3beb02ad Immich: Updates for v2.2.0 (#8770)
* replace for-loop with curl native for multiple downloads

* add ccache dependency for OCR feature

* Update NodeJS to 24

* bump pinned version to 2.2.0
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
98e926b79f Update CHANGELOG.md (#8769)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Slaviša Arežina
3d1af467c3 Update ExecStart in openarchiver.service (#8768) 2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
035a7d6b49 Update CHANGELOG.md (#8766)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
Slaviša Arežina
a6a46b9e92 Open Archiver: Fix missing command in update procedure (#8765)
* Fix update

* Update

* Update

* Update service file
2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
badbc55221 Update CHANGELOG.md (#8760)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:51 +01:00
CanbiZ
0e1346af5f Standardize update success messages in scripts (#8757) 2025-11-12 11:18:51 +01:00
community-scripts-pr-app[bot]
7abf03f388 Update CHANGELOG.md (#8759)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
Slaviša Arežina
1af47b93a6 Update DATABASE_URL to use mariadb in installation script (#8758) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
dc96d94334 Update versions.json (#8756)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
8d7e290db5 Update CHANGELOG.md (#8755)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
96c1bc74bd Add explicit exit calls to update_script functions (#8752) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
14e5aea1b0 Update CHANGELOG.md (#8754)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
851f117b6b core: add function cleanup_lxc (#8749) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
348037acf9 Update CHANGELOG.md (#8753)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
5eb2a7ee01 kimai: Set global SQL mode to empty in install script (#8747) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
45dc4c903a Update CHANGELOG.md (#8750)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
Slaviša Arežina
98ce24d9ae Update default credentials in cronicle.json (#8720) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
19109e2efc Update CHANGELOG.md (#8748)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
742b8eef6e Asterisk: add interactive version selection to installer (#8726) 2025-11-12 11:18:50 +01:00
Bram Suurd
4852fdb257 Fix markdown formatting in JSON notes (#8744) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
12eca691c9 Update CHANGELOG.md (#8742)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
push-app-to-main[bot]
2daaef1a62 Livebook (#8739)
* 'Add new script'

* chore refactor

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
e6c3149364 Update CHANGELOG.md (#8740)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
push-app-to-main[bot]
afa7366a3e Reitti (#8736)
* 'Add new script'

* Update reitti.json

* Update documentation URL in reitti.json

* Apply suggestion from @tremor021

---------

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-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
4ed46c1367 Update CHANGELOG.md (#8738)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
push-app-to-main[bot]
138354c31d BentoPDF (#8735)
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-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
764c49b964 Update CHANGELOG.md (#8733)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
d640af3a7c Update versions.json (#8732)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
78036d1ce9 Fix typo for already updated 2025-11-12 11:18:50 +01:00
CanbiZ
541c308c77 typo 2025-11-12 11:18:50 +01:00
CanbiZ
367fac8ec1 typo 2025-11-12 11:18:50 +01:00
CanbiZ
6c119d439f kimai switch to tarball 2025-11-12 11:18:50 +01:00
CanbiZ
992e1c80cf kimai Switch to tarball 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
5b3a31f5ea Update CHANGELOG.md (#8728)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
03d496ed0c Add Chromium and Node modules to ArchiveBox scripts (#8725) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
820a8a984c Update CHANGELOG.md (#8727)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
d785881367 Add workaround for libguestfs issue on Proxmox VE 9.0 (#8722) 2025-11-12 11:18:50 +01:00
CanbiZ
559e7fa584 fix alpine gitea exit 2025-11-12 11:18:50 +01:00
CanbiZ
bd30b9d444 Add protobuf dependencies to installation script 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
0cd972ca54 Update CHANGELOG.md (#8723)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
Tobias
d2d55e58f6 tracktor: refactor envfile (#8711)
* tracktor: refactor enfile

* tracktor: fix: update links

* tracktor: add: mechanic to update envfile
2025-11-12 11:18:50 +01:00
CanbiZ
00cd15e754 Add missing dependencies to libretranslate-install.sh
Added missing dependencies for LibreTranslate installation.
2025-11-12 11:18:50 +01:00
CanbiZ
910f9c9990 typo 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
6001fc0ad7 Update CHANGELOG.md (#8719)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
023ac07b77 Dispatcharr: add folders in installer / add more build ressources (#8708) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
2bd408a1d9 Update versions.json (#8718)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
5b26794ae2 Update CHANGELOG.md (#8717)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
97acb617e1 LibreTranslate: bump torch version (#8710) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
df556b4402 Update CHANGELOG.md (#8716)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
abb9040093 Kimai / Ghost / ManageMyDamnLife: Switch to MariaDB (#8712)
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 11:18:50 +01:00
CanbiZ
eb23d67f03 Remove: MySQL (#8709) 2025-11-12 11:18:50 +01:00
community-scripts-pr-app[bot]
73fff7af83 Update CHANGELOG.md (#8704)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
144837210d Update versions.json (#8703)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
3612fcf31e Update CHANGELOG.md (#8695)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
Gerhard Burger
9a1d967ff0 Update SABnzbd. Include par2cmdline-turbo (#8648)
* Fix non-free sources

- Don't delete after use
- Use trixie instead of bookworm
- deb822 style

* Add par2cmdline-turbo to sabnzbd

* Remove duplicate setup_uv

* Remove duplicated msg around setup_uv

* Update sabnzbd to use fetch_and_deploy

* switch fetch_deploy outside of msg

Added virtual environment setup and package installation for SABnzbd.

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
c666e584cf Update CHANGELOG.md (#8694)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
glopes
13ba192fe3 Update alpine-komodo.sh fixing missing pull images command (#8689) 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
22c593278e Update CHANGELOG.md (#8693)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
Chris
4523f1f07d jotty: Add more ENV VARS - commented out (#8688) 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
76a1e35c20 Update CHANGELOG.md (#8687)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
Gerhard Burger
31365d8219 Bump bazarr to Debian 13 (#8677)
* Bump bazarr to Debian 13

- Removes unnecessary python3 install
- Use uv to create proper 3.12 venv (bazarr will give warnings about 3.13)

* Improve bazarr update

- setup_uv now versioned
- graceful update from pre-venv install

* chore: cosmetic

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
0271cbe5dc Update CHANGELOG.md (#8685)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
76c72a8f66 Update versions.json (#8684)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
1aa7883dd6 Update CHANGELOG.md (#8681)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
Gerhard Burger
23900c9c36 Update flaresolverr to Debian 13 (#8672)
* Update flaresolverr to Debian 13

* Check Debian version before updating FlareSolverr
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
d146d7a72d Update CHANGELOG.md (#8676)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
ece3d74fd4 Update versions.json (#8675)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
261da103f8 Update CHANGELOG.md (#8671)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
CanbiZ
39e8659658 Add typescript and esbuild to browserless setup (#8666)
Updated both the update and install scripts to include installation of typescript and esbuild for browserless. This ensures required build dependencies are present before running build commands.
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
c463c794f0 Update date in json (#8670)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
d0259594b3 Update CHANGELOG.md (#8669)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
push-app-to-main[bot]
bc7da8082a Dispatcharr (#8658)
* 'Add new script'

* Update dispatcharr.sh

* Apply suggestion from @tremor021

* Update install/dispatcharr-install.sh

Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>

* Update install/dispatcharr-install.sh

Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>

* Update install/dispatcharr-install.sh

Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>

* Update author information in dispatcharr.sh

* Update RAM and version in dispatcharr.json

* Remove gcc from dependency installation

* Update website and logo URLs in dispatcharr.json

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
CanbiZ
02956f2e27 Garage: fix Service 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
be226d273e Update .app files (#8664)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
340aa608ab Update CHANGELOG.md (#8665)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
push-app-to-main[bot]
5381eb00f0 Garage | Alpine-Garage (#8656)
* 'Add new script'

* add alpine-garage-install.sh

* add alpine-garage.sh

* Update alpine-garage.sh

* Update garage-install.sh

* Increase default RAM and disk for Garage containers

Updated ct/garage.sh and ct/alpine-garage.sh to set higher default RAM (1024MB for Garage, 512MB for Alpine-Garage) and disk (5GB for both). Synced these resource changes in frontend/public/json/garage.json to ensure consistency in container setup defaults.

* Apply suggestion from @tremor021

---------

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-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
17c0785f90 Update CHANGELOG.md (#8663)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
Tobias
85747a63d7 jellyfin: fix: intel deps (#8657) 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
bab133de2a Update versions.json (#8661)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
1cbebe6d3a Update CHANGELOG.md (#8653)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
6dc690ab31 Update versions.json (#8652)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
c78b2ea8b8 Update CHANGELOG.md (#8650)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
CanbiZ
0e44fc0914 PiHole: Bump to Debian 12 (#8649) 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
94d7935011 Update date in json (#8646) 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
8c552011c2 Update CHANGELOG.md (#8647)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
push-app-to-main[bot]
a80bda8cd0 'Add new script' (#8633) 2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
7454318287 Update versions.json (#8645)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
2c2bdb81db Update CHANGELOG.md (#8644)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
Slaviša Arežina
75b191f0d8 Refactor: Mylar3 (#8642)
* Refactor

* Update mylar3.sh
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
1d1fa6862b Update CHANGELOG.md (#8641)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
5d4f935e73 Update versions.json (#8640)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
12de81afa4 Update CHANGELOG.md (#8636)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
dea27e50ed Update CHANGELOG.md (#8635)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:49 +01:00
community-scripts-pr-app[bot]
722f64244d Update date in json (#8634)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
push-app-to-main[bot]
87b6dbaa10 PatchMon (#8632)
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-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
8b63464298 Update versions.json (#8629)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
1822030836 Update CHANGELOG.md (#8626)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
Slaviša Arežina
369d32dde8 Fix interactive (#8622) 2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
9d17ec06cf Update CHANGELOG.md (#8624)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
e66ea278b3 Update versions.json (#8623)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
ec4be0222d Update CHANGELOG.md (#8619)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
Nolhan
19a19dcf09 Change config_path to /etc/bunkerweb/variables.env (#8618) 2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
f7c62a9525 Update CHANGELOG.md (#8617)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
Vincent
80932008bb Update logo URL in guardian.json (#8615) 2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
ae4d05771b Update versions.json (#8613)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
d2f13efee6 Update CHANGELOG.md (#8608)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
df7e517ea7 Update versions.json (#8607)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
c8a409064e Update CHANGELOG.md (#8604)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
Filippo Stella
9064e5a2f4 Update dependency installation for Radicale (#8603) 2025-11-12 11:18:48 +01:00
community-scripts-pr-app[bot]
398d042a3d Update CHANGELOG.md (#8601)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 11:18:48 +01:00
CanbiZ
c7c5947a11 Various Downgrades to Debian 12 (MySQL / OMW / Technitium) (#8595)
* downgrades deb12

* fixes

* Update inventree.sh

* fix format

* Update Debian version to 12 in omv and technitiumdns configs

Changed the Debian version from 13 to 12 in both omv.json and technitiumdns.json to reflect the correct OS version for these configurations.
2025-11-12 11:18:48 +01:00
CanbiZ
dca1c3b02c Update cryptpad.sh 2025-10-23 16:29:44 +02:00
71 changed files with 962 additions and 2191 deletions

View File

@@ -22,18 +22,6 @@ body:
validations:
required: true
- type: dropdown
id: verbose_run
attributes:
label: 🔎 Did you run the script with verbose mode enabled?
description: "Required for debugging any script issue. A verbose log is mandatory."
options:
- ""
- "Yes, verbose mode was enabled and the output is included below"
- "No (this issue will likely be closed automatically)"
validations:
required: true
- type: input
id: script_name
attributes:

View File

@@ -10,125 +10,14 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-11-17
### 🆕 New Scripts
- Passbolt ([#9226](https://github.com/community-scripts/ProxmoxVE/pull/9226))
- Domain-Locker ([#9214](https://github.com/community-scripts/ProxmoxVE/pull/9214))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Domain Monitor: Fix encryption key length in install script [@tremor021](https://github.com/tremor021) ([#9239](https://github.com/community-scripts/ProxmoxVE/pull/9239))
- NetVisor: add build deps, increase RAM [@vhsdream](https://github.com/vhsdream) ([#9205](https://github.com/community-scripts/ProxmoxVE/pull/9205))
- fix: restart apache2 after installing zabbix config [@AlphaLawless](https://github.com/AlphaLawless) ([#9206](https://github.com/community-scripts/ProxmoxVE/pull/9206))
- #### ✨ New Features
- [core]: harmonize app_name for creds [@MickLesk](https://github.com/MickLesk) ([#9224](https://github.com/community-scripts/ProxmoxVE/pull/9224))
- #### 💥 Breaking Changes
- Refactor: paperless-ngx (Breaking Change Inside) [@MickLesk](https://github.com/MickLesk) ([#9223](https://github.com/community-scripts/ProxmoxVE/pull/9223))
### 🧰 Maintenance
- #### 📂 Github
- github: add verbose mode check to bug report template [@MickLesk](https://github.com/MickLesk) ([#9234](https://github.com/community-scripts/ProxmoxVE/pull/9234))
## 2025-11-16
### 🆕 New Scripts
- Metabase ([#9190](https://github.com/community-scripts/ProxmoxVE/pull/9190))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Change backup directory to /opt for paperless-ngx [@ProfDrYoMan](https://github.com/ProfDrYoMan) ([#9195](https://github.com/community-scripts/ProxmoxVE/pull/9195))
- Kimai: remove deprecated admin_lte section [@MickLesk](https://github.com/MickLesk) ([#9182](https://github.com/community-scripts/ProxmoxVE/pull/9182))
- healthchecks: bump python to 3.13 [@MickLesk](https://github.com/MickLesk) ([#9175](https://github.com/community-scripts/ProxmoxVE/pull/9175))
### 🌐 Website
- #### 📝 Script Information
- fixed config_path for donetick [@TazztheMonster](https://github.com/TazztheMonster) ([#9203](https://github.com/community-scripts/ProxmoxVE/pull/9203))
## 2025-11-15
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- privatebin: fix: syntax error in chmod command [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9169](https://github.com/community-scripts/ProxmoxVE/pull/9169))
- phpIPHAM: patch db and add fping [@MickLesk](https://github.com/MickLesk) ([#9177](https://github.com/community-scripts/ProxmoxVE/pull/9177))
- changedetection: fix: increase ressources [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9171](https://github.com/community-scripts/ProxmoxVE/pull/9171))
- 2fauth: update composer command [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9168](https://github.com/community-scripts/ProxmoxVE/pull/9168))
- #### 🔧 Refactor
- firefly: refactor update_script and add dataimporter update [@MickLesk](https://github.com/MickLesk) ([#9178](https://github.com/community-scripts/ProxmoxVE/pull/9178))
## 2025-11-14
### 🆕 New Scripts
- LibreNMS ([#9148](https://github.com/community-scripts/ProxmoxVE/pull/9148))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- karakeep: clean install after every update [@MickLesk](https://github.com/MickLesk) ([#9144](https://github.com/community-scripts/ProxmoxVE/pull/9144))
- #### ✨ New Features
- bump grafana to debian 13 [@mschabhuettl](https://github.com/mschabhuettl) ([#9141](https://github.com/community-scripts/ProxmoxVE/pull/9141))
## 2025-11-13
### 🆕 New Scripts
- Netvisor ([#9133](https://github.com/community-scripts/ProxmoxVE/pull/9133))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Domain Monitor: Add domain checking cron [@tremor021](https://github.com/tremor021) ([#9129](https://github.com/community-scripts/ProxmoxVE/pull/9129))
- Kimai: Fix for MariaDB connection URL [@tremor021](https://github.com/tremor021) ([#9124](https://github.com/community-scripts/ProxmoxVE/pull/9124))
- Fix: filebrowser-quantum update [@MickLesk](https://github.com/MickLesk) ([#9115](https://github.com/community-scripts/ProxmoxVE/pull/9115))
- tools.func: fix wrong output for setup_java (error token is "0") [@snow2k9](https://github.com/snow2k9) ([#9110](https://github.com/community-scripts/ProxmoxVE/pull/9110))
- #### ✨ New Features
- tools.func: improve Rust setup and crate installation logic [@MickLesk](https://github.com/MickLesk) ([#9120](https://github.com/community-scripts/ProxmoxVE/pull/9120))
- #### 💥 Breaking Changes
- Remove Barcodebuddy [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#9135](https://github.com/community-scripts/ProxmoxVE/pull/9135))
- Downgrade Swizzin to Debian 12 Bookworm [@MickLesk](https://github.com/MickLesk) ([#9116](https://github.com/community-scripts/ProxmoxVE/pull/9116))
## 2025-11-12
### 🆕 New Scripts
- Miniflux ([#9091](https://github.com/community-scripts/ProxmoxVE/pull/9091))
- Splunk Enterprise ([#9090](https://github.com/community-scripts/ProxmoxVE/pull/9090))
### 🚀 Updated Scripts
- openwebui: Python version usage | core: zsh completion install [@MickLesk](https://github.com/MickLesk) ([#9079](https://github.com/community-scripts/ProxmoxVE/pull/9079))
- #### 🐞 Bug Fixes
- evcc: add missing fi in update [@MichaelVetter1979](https://github.com/MichaelVetter1979) ([#9107](https://github.com/community-scripts/ProxmoxVE/pull/9107))
- PeaNUT: use clean install flag during update [@vhsdream](https://github.com/vhsdream) ([#9100](https://github.com/community-scripts/ProxmoxVE/pull/9100))
- Tududi: Create new env file from example; fix installation & update [@vhsdream](https://github.com/vhsdream) ([#9097](https://github.com/community-scripts/ProxmoxVE/pull/9097))
- openwebui: Python version usage | core: zsh completion install [@MickLesk](https://github.com/MickLesk) ([#9079](https://github.com/community-scripts/ProxmoxVE/pull/9079))
- Refactor: evcc [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9057](https://github.com/community-scripts/ProxmoxVE/pull/9057))
- #### ✨ New Features

View File

@@ -54,7 +54,7 @@ function update_script() {
chown -R www-data: "/opt/2fauth"
chmod -R 755 "/opt/2fauth"
export COMPOSER_ALLOW_SUPERUSER=1
$STD composer install --no-dev --prefer-dist
$STD composer install --no-dev --prefer-source
php artisan 2fauth:install
$STD systemctl restart nginx

69
ct/barcode-buddy.sh Normal file
View File

@@ -0,0 +1,69 @@
#!/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: bvdberg01
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/Forceu/barcodebuddy
APP="Barcode-Buddy"
var_tags="${var_tags:-grocery;household}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/barcodebuddy ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "barcodebuddy" "Forceu/barcodebuddy"; then
msg_info "Stopping Service"
systemctl stop apache2
systemctl stop barcodebuddy
msg_ok "Stopped Service"
msg_info "Backing up data"
mv /opt/barcodebuddy/ /opt/barcodebuddy-backup
msg_ok "Backed up data"
fetch_and_deploy_gh_release "barcodebuddy" "Forceu/barcodebuddy"
msg_info "Configuring ${APP}"
cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data
chown -R www-data:www-data /opt/barcodebuddy/data
msg_ok "Configured ${APP}"
msg_info "Starting Service"
systemctl start apache2
systemctl start barcodebuddy
msg_ok "Started Service"
msg_info "Cleaning up"
rm -r /opt/barcodebuddy-backup
msg_ok "Cleaned"
msg_ok "Updated successfully!"
fi
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"

View File

@@ -7,8 +7,8 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="Change Detection"
var_tags="${var_tags:-monitoring;crawler}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-4096}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"

View File

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

View File

@@ -1,67 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: CrazyWolf13
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/Lissy93/domain-locker
APP="Domain-Locker"
var_tags="${var_tags:-Monitoring}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-10240}"
var_disk="${var_disk:-8}"
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/domain-locker ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "domain-locker" "Lissy93/domain-locker"; then
msg_info "Stopping Service"
systemctl stop domain-locker
msg_info "Service stopped"
PG_VERSION="17" setup_postgresql
setup_nodejs
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "domain-locker" "Lissy93/domain-locker"
msg_info "Installing Modules (patience)"
cd /opt/domain-locker
$STD npm install
msg_ok "Installed Modules"
msg_info "Building Domain-Locker (a lot of patience)"
set -a
source /opt/domain-locker.env
set +a
$STD npm run build
msg_info "Built Domain-Locker"
msg_info "Restarting Services"
systemctl start domain-locker
msg_ok "Restarted 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}:3000${CL}"

View File

@@ -20,45 +20,41 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/domain-monitor ]]; then
msg_error "No ${APP} Installation Found!"
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/domain-monitor ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "domain-monitor" "Hosteroid/domain-monitor"; then
msg_info "Stopping Service"
systemctl stop apache2
msg_info "Service stopped"
msg_info "Creating backup"
mv /opt/domain-monitor/.env /opt
msg_ok "Created backup"
setup_composer
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "domain-monitor" "Hosteroid/domain-monitor" "prebuild" "latest" "/opt/domain-monitor" "domain-monitor-v*.zip"
msg_info "Updating Domain Monitor"
cd /opt/domain-monitor
$STD composer install
msg_ok "Updated Domain Monitor"
msg_info "Restoring backup"
mv /opt/.env /opt/domain-monitor
msg_ok "Restored backup"
msg_info "Restarting Services"
systemctl reload apache2
msg_ok "Restarted Services"
msg_ok "Updated successfully!"
fi
exit
fi
if ! grep -Fq "root /usr/bin/php /opt/domain-monitor/cron/check_domains.php" /etc/crontab; then
echo "0 0 * * * root /usr/bin/php /opt/domain-monitor/cron/check_domains.php" >>/etc/crontab
fi
if check_for_gh_release "domain-monitor" "Hosteroid/domain-monitor"; then
msg_info "Stopping Service"
systemctl stop apache2
msg_info "Service stopped"
msg_info "Creating backup"
mv /opt/domain-monitor/.env /opt
msg_ok "Created backup"
setup_composer
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "domain-monitor" "Hosteroid/domain-monitor" "prebuild" "latest" "/opt/domain-monitor" "domain-monitor-v*.zip"
msg_info "Updating Domain Monitor"
cd /opt/domain-monitor
$STD composer install
msg_ok "Updated Domain Monitor"
msg_info "Restoring backup"
mv /opt/.env /opt/domain-monitor
msg_ok "Restored backup"
msg_info "Restarting Services"
systemctl reload apache2
msg_ok "Restarted Services"
msg_ok "Updated successfully!"
fi
exit
}
start

View File

@@ -35,7 +35,6 @@ function update_script() {
"https://dl.evcc.io/public/evcc/stable/deb/debian/" \
"$(get_os_info codename)" \
"main"
fi
msg_info "Updating evcc LXC"
$STD apt update
$STD apt --only-upgrade install -y evcc

70
ct/fenrus.sh Normal file
View File

@@ -0,0 +1,70 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 tteck
# Author: tteck (tteckster) | Co-Author: Scorpoon
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/revenz/Fenrus
APP="Fenrus"
var_tags="${var_tags:-dashboard}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/${APP} ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "Currently we don't provide an update function for this ${APP}."
exit
msg_info "Updating ${APP}"
systemctl stop ${APP}
git clone https://github.com/revenz/Fenrus.git
cd Fenrus
gitVersionNumber=$(git rev-parse HEAD)
if [[ "${gitVersionNumber}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
mkdir /opt/fenrus-data-backup
cp -r "/opt/${APP}/data/" /opt/fenrus-data-backup/data
if [[ ! -d /opt/fenrus-data-backup/data ]]; then
msg_error "Backup of data folder failed! exiting..."
rm -r /opt/fenrus-data-backup/
exit
fi
export DOTNET_CLI_TELEMETRY_OPTOUT=1
dotnet publish -c Release -o "/opt/${APP}/" Fenrus.csproj
cp -r /opt/fenrus-data-backup/data/ "/opt/${APP}/"
echo "${gitVersionNumber}" >"/opt/${APP}_version.txt"
rm -r /opt/fenrus-data-backup/
msg_ok "Updated $APP"
msg_ok "Updated successfully!"
else
msg_ok "No update required. ${APP} is already up to date"
fi
cd ..
rm -r Fenrus/
systemctl start ${APP}
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}:5000${CL}"

View File

@@ -28,65 +28,40 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "firefly" "firefly-iii/firefly-iii"; then
msg_info "Stopping Apache2"
systemctl stop apache2
msg_ok "Stopped Apache2"
msg_info "Backing up data"
cp /opt/firefly/.env /opt/.env
cp -r /opt/firefly/storage /opt/storage
if [[ -d /opt/firefly/dataimporter ]]; then
cp /opt/firefly/dataimporter/.env /opt/dataimporter.env
IMPORTER_INSTALLED=1
fi
msg_ok "Backed up data"
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
setup_composer
msg_info "Updating Firefly"
msg_info "Updating ${APP}"
rm -rf /opt/firefly/storage
cp -r /opt/storage /opt/firefly/storage
cp /opt/.env /opt/firefly/.env
cp -r /opt/storage /opt/firefly/storage
chown -R www-data:www-data /opt/firefly
chmod -R 775 /opt/firefly/storage
mkdir -p /opt/firefly/storage/framework/cache/data
mkdir -p /opt/firefly/storage/framework/sessions
mkdir -p /opt/firefly/storage/framework/views
mkdir -p /opt/firefly/storage/logs
mkdir -p /opt/firefly/bootstrap/cache
chown -R www-data:www-data /opt/firefly/{storage,bootstrap/cache}
find /opt/firefly/storage -type d -exec chmod 775 {} \;
find /opt/firefly/storage -type f -exec chmod 664 {} \;
mkdir -p /opt/firefly/storage/framework/{cache/data,sessions,views}
$STD sudo -u www-data php /opt/firefly/artisan cache:clear
cd /opt/firefly
$STD runuser -u www-data -- composer install --no-dev --optimize-autoloader
$STD runuser -u www-data -- composer dump-autoload -o
$STD php artisan migrate --seed --force
$STD php artisan cache:clear
$STD php artisan view:clear
$STD php artisan firefly-iii:upgrade-database
$STD php artisan firefly-iii:laravel-passport-keys
msg_ok "Updated ${APP}"
$STD runuser -u www-data -- php artisan cache:clear
$STD runuser -u www-data -- php artisan config:clear
$STD runuser -u www-data -- php artisan route:clear
$STD runuser -u www-data -- php artisan view:clear
$STD runuser -u www-data -- php artisan migrate --seed --force
$STD runuser -u www-data -- php artisan firefly-iii:upgrade-database
$STD runuser -u www-data -- php artisan firefly-iii:laravel-passport-keys
$STD runuser -u www-data -- php artisan storage:link || true
$STD runuser -u www-data -- php artisan optimize
msg_ok "Updated Firefly"
if [[ "${IMPORTER_INSTALLED:-0}" -eq 1 ]]; then
msg_info "Updating Firefly Importer"
IMPORTER_RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/data-importer/releases/latest | grep tag_name | cut -d '"' -f 4 | sed 's/v//')
rm -rf /opt/firefly/dataimporter
mkdir -p /opt/firefly/dataimporter
curl -fsSL "https://github.com/firefly-iii/data-importer/releases/download/v${IMPORTER_RELEASE}/DataImporter-v${IMPORTER_RELEASE}.tar.gz" -o "/opt/DataImporter.tar.gz"
tar -xzf /opt/DataImporter.tar.gz -C /opt/firefly/dataimporter
if [[ -f /opt/dataimporter.env ]]; then
cp /opt/dataimporter.env /opt/firefly/dataimporter/.env
fi
chown -R www-data:www-data /opt/firefly/dataimporter
rm -f /opt/DataImporter.tar.gz
msg_ok "Updated Firefly Importer"
fi
msg_info "Starting Apache2"
systemctl start apache2
msg_ok "Started Apache2"
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:-13}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -20,29 +20,19 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if ! dpkg -s grafana >/dev/null 2>&1; then
msg_error "No ${APP} Installation Found!"
exit 1
fi
if [[ -f /etc/apt/sources.list.d/grafana.list ]] || [[ ! -f /etc/apt/sources.list.d/grafana.sources ]]; then
setup_deb822_repo \
"grafana" \
"https://apt.grafana.com/gpg.key" \
"https://apt.grafana.com" \
"stable" \
"main"
fi
msg_info "Updating Grafana LXC"
$STD apt update
$STD apt --only-upgrade install -y grafana
msg_ok "Updated successfully!"
exit
msg_info "Updating ${APP}"
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated successfully!"
exit
}
start

6
ct/headers/barcode-buddy Normal file
View File

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

View File

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

6
ct/headers/fenrus Normal file
View File

@@ -0,0 +1,6 @@
______
/ ____/__ ____ _______ _______
/ /_ / _ \/ __ \/ ___/ / / / ___/
/ __/ / __/ / / / / / /_/ (__ )
/_/ \___/_/ /_/_/ \__,_/____/

View File

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

View File

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

View File

@@ -1,6 +0,0 @@
__ ____ _ ______
/ |/ (_)___ (_) __/ /_ ___ __
/ /|_/ / / __ \/ / /_/ / / / / |/_/
/ / / / / / / / / __/ / /_/ /> <
/_/ /_/_/_/ /_/_/_/ /_/\__,_/_/|_|

View File

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

View File

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

View File

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

View File

@@ -33,7 +33,7 @@ function update_script() {
systemctl stop healthchecks
msg_ok "Stopped Services"
PYTHON_VERSION="3.13" setup_uv
PYTHON_VERSION="3.12" setup_uv
fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks"
msg_info "Updating healthchecks"

View File

@@ -55,7 +55,7 @@ function update_script() {
systemctl daemon-reload
fi
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "karakeep" "karakeep-app/karakeep"
fetch_and_deploy_gh_release "karakeep" "karakeep-app/karakeep"
if command -v corepack >/dev/null; then
$STD corepack disable
fi

View File

@@ -56,7 +56,6 @@ function update_script() {
[ -f "$BACKUP_DIR/local.yaml" ] && cp "$BACKUP_DIR/local.yaml" /opt/kimai/config/packages/
rm -rf "$BACKUP_DIR"
cd /opt/kimai
sed -i '/^admin_lte:/,/^[^[:space:]]/d' config/local.yaml
$STD composer install --no-dev --optimize-autoloader
$STD bin/console kimai:update
msg_ok "Updated Kimai"

View File

@@ -1,45 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: michelroegl-brunner
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://librenms.org
APP="LibreNMS"
var_tags="${var_tags:-monitoring}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [ ! -d /opt/librenms ]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating LibreNMS"
su librenms
cd /opt/librenms
./daily.sh
msg_ok "Updated LibreNMS"
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"

View File

@@ -1,65 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.metabase.com/
APP="Metabase"
var_tags="${var_tags:-analytics}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}"
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/metabase ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "metabase" "metabase/metabase"; then
msg_info "Stopping Service"
systemctl stop metabase
msg_info "Stopped Service"
msg_info "Creating backup"
mv /opt/metabase/.env /opt
msg_ok "Created backup"
msg_info "Updating Metabase"
RELEASE=$(get_latest_github_release "metabase/metabase")
curl -fsSL "https://downloads.metabase.com/v${RELEASE}.x/metabase.jar" -o /opt/metabase/metabase.jar
echo $RELEASE >~/.metabase
msg_ok "Updated Metabase"
msg_info "Restoring backup"
mv /opt/.env /opt/metabase
msg_ok "Restored backup"
msg_info "Starting Service"
systemctl start metabase
msg_ok "Started Service"
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}:3000${CL}"

View File

@@ -1,55 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: omernaveedxyz
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://miniflux.app/
APP="Miniflux"
var_tags="${var_tags:-media}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}"
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 [[ ! -f /etc/systemd/system/miniflux.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Stopping Service"
$STD miniflux -flush-sessions -config-file /etc/miniflux.conf
systemctl stop miniflux
msg_ok "Service Stopped"
fetch_and_deploy_gh_release "miniflux" "miniflux/v2" "binary" "latest"
msg_info "Updating Miniflux"
$STD miniflux -migrate -config-file /etc/miniflux.conf
msg_ok "Updated Miniflux"
msg_info "Starting Service"
$STD systemctl start miniflux
msg_ok "Started Service"
msg_ok "Updated successfully"
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}"

View File

@@ -1,86 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/maynayza/netvisor
APP="NetVisor"
var_tags="${var_tags:-analytics}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}"
var_disk="${var_disk:-6}"
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/netvisor ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "netvisor" "mayanayza/netvisor"; then
msg_info "Stopping services"
systemctl stop netvisor-daemon netvisor-server
msg_ok "Stopped services"
msg_info "Backing up configurations"
cp /opt/netvisor/.env /opt/netvisor.env
msg_ok "Backed up configurations"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "netvisor" "mayanayza/netvisor" "tarball" "latest" "/opt/netvisor"
if ! dpkg -l | grep -q "pkg-config"; then
$STD apt install -y pkg-config
fi
if ! dpkg -l | grep -q "libssl-dev"; then
$STD apt install -y libssl-dev
fi
TOOLCHAIN="$(grep "channel" /opt/netvisor/backend/rust-toolchain.toml | awk -F\" '{print $2}')"
RUST_TOOLCHAIN=$TOOLCHAIN setup_rust
mv /opt/netvisor.env /opt/netvisor/.env
msg_info "Creating frontend UI"
export PUBLIC_SERVER_HOSTNAME=default
export PUBLIC_SERVER_PORT=60072
cd /opt/netvisor/ui
$STD npm ci --no-fund --no-audit
$STD npm run build
msg_ok "Created frontend UI"
msg_info "Building Netvisor-server (patience)"
cd /opt/netvisor/backend
$STD cargo build --release --bin server
mv ./target/release/server /usr/bin/netvisor-server
msg_ok "Built Netvisor-server"
msg_info "Building Netvisor-daemon (amd64 version)"
$STD cargo build --release --bin daemon
cp ./target/release/daemon /usr/bin/netvisor-daemon
msg_ok "Built Netvisor-daemon (amd64 version)"
msg_info "Starting services"
systemctl start netvisor-server netvisor-daemon
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}:60072${CL}"

View File

@@ -27,27 +27,6 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
# Check for old data structure and prompt migration
if [[ -f /opt/paperless/paperless.conf ]]; then
local OLD_DIRS=()
[[ -d /opt/paperless/consume ]] && OLD_DIRS+=("consume")
[[ -d /opt/paperless/data ]] && OLD_DIRS+=("data")
[[ -d /opt/paperless/media ]] && OLD_DIRS+=("media")
if [[ ${#OLD_DIRS[@]} -gt 0 ]]; then
msg_error "Old data structure detected in /opt/paperless/"
msg_custom "📂" "Found directories: ${OLD_DIRS[*]}"
echo -e ""
msg_custom "🔄" "Migration required to new data structure (/opt/paperless_data/)"
msg_custom "📖" "Please follow the migration guide:"
echo -e "${TAB}${GATEWAY}${BGN}https://github.com/community-scripts/ProxmoxVE/discussions/9223${CL}"
echo -e ""
msg_custom "⚠️" "Update aborted. Please migrate your data first."
exit 1
fi
fi
if check_for_gh_release "paperless" "paperless-ngx/paperless-ngx"; then
msg_info "Stopping all Paperless-ngx Services"
systemctl stop paperless-consumer paperless-webserver paperless-scheduler paperless-task-queue
@@ -55,11 +34,12 @@ function update_script() {
if grep -q "uv run" /etc/systemd/system/paperless-webserver.service; then
msg_info "Backing up configuration"
local BACKUP_DIR="/opt/paperless_backup_$$"
mkdir -p "$BACKUP_DIR"
[[ -f /opt/paperless/paperless.conf ]] && cp /opt/paperless/paperless.conf "$BACKUP_DIR/"
msg_ok "Backup completed to $BACKUP_DIR"
msg_info "Backing up data"
mkdir -p /opt/paperless_backup
cp -r /opt/paperless/data /opt/paperless_backup/
cp -r /opt/paperless/media /opt/paperless_backup/
cp -r /opt/paperless/paperless.conf /opt/paperless_backup/
msg_ok "Backup completed"
PYTHON_VERSION="3.13" setup_uv
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
@@ -73,14 +53,19 @@ function update_script() {
fi
msg_info "Updating Paperless-ngx"
cp -r "$BACKUP_DIR"/* /opt/paperless/
cp -r /opt/paperless_backup/* /opt/paperless/
CONSUME_DIR="$(sed -n 's/^PAPERLESS_CONSUMPTION_DIR=//p' /opt/paperless/paperless.conf)"
if [[ -z "$CONSUME_DIR" ]]; then
CONSUME_DIR="/opt/paperless/consume"
fi
mkdir -p "$CONSUME_DIR"
cd /opt/paperless
$STD uv sync --all-extras
cd /opt/paperless/src
$STD uv run -- python manage.py migrate
msg_ok "Updated Paperless-ngx"
rm -rf "$BACKUP_DIR"
rm -rf /opt/paperless_backup
else
msg_warn "You are about to migrate your Paperless-ngx installation to uv!"
@@ -98,13 +83,8 @@ function update_script() {
rm -rf /opt/paperless/venv
find /opt/paperless -name "__pycache__" -type d -exec rm -rf {} +
msg_info "Backing up configuration"
local BACKUP_DIR="/opt/paperless_backup_$$"
mkdir -p "$BACKUP_DIR"
[[ -f /opt/paperless/paperless.conf ]] && cp /opt/paperless/paperless.conf "$BACKUP_DIR/"
msg_ok "Backup completed to $BACKUP_DIR"
declare -A PATCHES=(
["paperless-consumer.service"]="ExecStart=uv run -- python manage.py document_consumer"
["paperless-scheduler.service"]="ExecStart=uv run -- celery --app paperless beat --loglevel INFO"
["paperless-task-queue.service"]="ExecStart=uv run -- celery --app paperless worker --loglevel INFO"
["paperless-webserver.service"]="ExecStart=uv run -- granian --interface asgi --ws \"paperless.asgi:application\""
@@ -129,11 +109,12 @@ function update_script() {
done
$STD systemctl daemon-reload
msg_info "Backing up configuration"
BACKUP_DIR="/opt/paperless_backup_$$"
mkdir -p "$BACKUP_DIR"
[[ -f /opt/paperless/paperless.conf ]] && cp /opt/paperless/paperless.conf "$BACKUP_DIR/"
msg_ok "Backup completed to $BACKUP_DIR"
msg_info "Backing up data"
mkdir -p /opt/paperless_backup
cp -r /opt/paperless/data /opt/paperless_backup/
cp -r /opt/paperless/media /opt/paperless_backup/
cp -r /opt/paperless/paperless.conf /opt/paperless_backup/
msg_ok "Backup completed"
PYTHON_VERSION="3.13" setup_uv
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
@@ -149,14 +130,16 @@ function update_script() {
fi
msg_info "Updating Paperless-ngx"
cp -r "$BACKUP_DIR"/* /opt/paperless/
cp -r /opt/paperless_backup/* /opt/paperless/
CONSUME_DIR="$(sed -n '/^PAPERLESS_CONSUMPTION/s/[^=]=*//p' /opt/paperless/paperless.conf)"
mkdir -p "${CONSUME_DIR:-/opt/paperless/consume}"
cd /opt/paperless
$STD uv sync --all-extras
cd /opt/paperless/src
$STD uv run -- python manage.py migrate
msg_ok "Paperless-ngx migration and update completed"
rm -rf "$BACKUP_DIR"
rm -rf /opt/paperless_backup
if [[ -d /opt/paperless/backup ]]; then
rm -rf /opt/paperless/backup
msg_ok "Removed old backup directory"

View File

@@ -1,44 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.passbolt.com/
APP="Passbolt"
var_tags="${var_tags:-auth}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
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 /var ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP LXC"
$STD apt update
$STD apt upgrade -y
msg_ok "Updated $APP LXC"
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}https://${IP}${CL}"

View File

@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
# Source: https://github.com/Brandawg93/PeaNUT/
APP="PeaNUT"
var_tags="${var_tags:-network;ups}"
var_tags="${var_tags:-network;ups;}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-7}"
@@ -35,7 +35,7 @@ function update_script() {
systemctl stop peanut
msg_info "Stopped Service"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "peanut" "Brandawg93/PeaNUT" "tarball" "latest" "/opt/peanut"
fetch_and_deploy_gh_release "peanut" "Brandawg93/PeaNUT" "tarball" "latest" "/opt/peanut"
msg_info "Updating $APP"
cd /opt/peanut

View File

@@ -39,7 +39,7 @@ function update_script() {
mkdir -p /opt/privatebin/data
mv /tmp/privatebin_conf.bak /opt/privatebin/cfg/conf.php
chown -R www-data:www-data /opt/privatebin
chmod -R 0755 /opt/privatebin/data
chmod -R 0755 /opt/privatebin/data}
systemctl reload nginx php8.2-fpm
msg_ok "Configured ${APP}"
msg_ok "Updated successfully!"

View File

@@ -1,41 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: rcastley
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.splunk.com/en_us/download.html
APP="Splunk-Enterprise"
var_tags="${var_tags:-monitoring}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-8192}"
var_disk="${var_disk:-40}"
var_os="${var_os:-ubuntu}"
var_version="${var_version:-24.04}"
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/splunk ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "Currently we don't provide an update function for this ${APP}."
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 the Splunk Enterprise Web interface using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}"

View File

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

View File

@@ -35,15 +35,14 @@ function update_script() {
systemctl stop tududi
msg_ok "Stopped Service"
msg_info "Backing up env file"
if [[ -f /opt/tududi/backend/.env ]]; then
cp /opt/tududi/backend/.env /opt/tududi.env
else
cp /opt/tududi/.env /opt/tududi.env
fi
msg_ok "Backed up env file"
msg_info "Remove and backup Files"
DB="$(sed -n '/^DB_FILE/s/[^=]*=//p' /opt/tududi/backend/.env)"
export DB_FILE="$DB"
cp /opt/tududi/backend/.env /opt/tududi.env
rm -rf /opt/tududi/backend/dist
msg_ok "Backup and removed Files"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "latest" "/opt/tududi"
fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "latest" "/opt/tududi"
msg_info "Updating Tududi"
cd /opt/tududi
@@ -51,9 +50,9 @@ function update_script() {
export NODE_ENV=production
$STD npm run frontend:build
mv ./dist ./backend
mv /opt/tududi.env /opt/tududi/backend/.env
DB="$(sed -n '/^DB_FILE/s/[^=]*=//p' /opt/tududi/backend/.env)"
export DB_FILE="$DB"
mv ./public/locales ./backend/dist
mv ./public/favicon.* ./backend/dist
mv /opt/tududi.env /opt/tududi/.env
sed -i -e 's|/tududi$|/tududi/backend|' \
-e 's|npm run start|bash /opt/tududi/backend/cmd/start.sh|' \
/etc/systemd/system/tududi.service

View File

@@ -0,0 +1,40 @@
{
"name": "Barcode Buddy",
"slug": "barcode-buddy",
"categories": [
24
],
"date_created": "2025-02-08",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://barcodebuddy-documentation.readthedocs.io/en/latest/",
"website": "https://github.com/Forceu/barcodebuddy",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/barcode-buddy.webp",
"config_path": "/opt/barcodebuddy/data/config.php",
"description": "Barcode Buddy for Grocy is an extension for Grocy, allowing to pass barcodes to Grocy. It supports barcodes for products and chores. If you own a physical barcode scanner, it can be integrated, so that all barcodes scanned are automatically pushed to BarcodeBuddy/Grocy.",
"install_methods": [
{
"type": "default",
"script": "ct/barcode-buddy.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 3,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "After install enable the option \"Use Redis cache\" on the settings page.",
"type": "info"
}
]
}

View File

@@ -19,8 +19,8 @@
"type": "default",
"script": "ct/changedetection.sh",
"resources": {
"cpu": 4,
"ram": 4096,
"cpu": 2,
"ram": 2048,
"hdd": 10,
"os": "debian",
"version": "12"

View File

@@ -1,44 +0,0 @@
{
"name": "Domain Locker",
"slug": "domain-locker",
"categories": [
9
],
"date_created": "2025-11-17",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 3000,
"documentation": "https://domain-locker.com/about",
"config_path": "/opt/domain-locker.env",
"website": "https://github.com/Lissy93/domain-locker",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/domain-locker.webp",
"description": "The all-in-one tool, for keeping track of your domain name portfolio. Got domain names? Get Domain Locker! ",
"install_methods": [
{
"type": "default",
"script": "ct/domain-locker.sh",
"resources": {
"cpu": 2,
"ram": 4096,
"hdd": 8,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Show DB credentials: `cat ~/Domain-Locker.creds`",
"type": "info"
},
{
"text": "Domain-locker takes quite some time to build and a lot of ressources, RAM and Cores can be lowered after install.",
"type": "info"
}
]
}

View File

@@ -10,7 +10,7 @@
"privileged": false,
"interface_port": 2021,
"documentation": "https://docs.donetick.com/getting-started/",
"config_path": "/opt/donetick/config/selfhosted.yaml",
"config_path": "/opt/donetick/config/selfhosted.yml",
"website": "https://donetick.com",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/donetick.webp",
"description": "Donetick an open-source, user-friendly app for managing tasks and chores, featuring customizable options to help you and others stay organized",

View File

@@ -0,0 +1,35 @@
{
"name": "Fenrus",
"slug": "fenrus",
"categories": [
10
],
"date_created": "2024-05-05",
"type": "ct",
"updateable": false,
"privileged": false,
"interface_port": 5000,
"documentation": "https://github.com/revenz/Fenrus/wiki",
"website": "https://github.com/revenz/Fenrus",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/fenrus.webp",
"config_path": "",
"description": "A personal home page for quick access to all your personal apps/sites.",
"install_methods": [
{
"type": "default",
"script": "ct/fenrus.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 4,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

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

View File

@@ -1,35 +0,0 @@
{
"name": "LibreNMS",
"slug": "librenms",
"categories": [
9
],
"date_created": "2025-11-14",
"type": "ct",
"updateable": false,
"privileged": false,
"interface_port": 80,
"documentation": "https://docs.librenms.org/",
"website": "https://librenms.org/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/librenms.webp",
"config_path": "/opt/librenms/config.php and /opt/librenms/.env",
"description": "LibreNMS is an open-source, community-driven network monitoring system that provides automatic discovery, alerting, and performance tracking for network devices. It supports a wide range of hardware and integrates with various notification and logging platforms.",
"install_methods": [
{
"type": "default",
"script": "ct/librenms.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 4,
"os": "Debian",
"version": "12"
}
}
],
"default_credentials": {
"username": "admin",
"password": "admin"
},
"notes": []
}

View File

@@ -1,35 +0,0 @@
{
"name": "Metabase",
"slug": "metabase",
"categories": [
9
],
"date_created": "2025-11-16",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 3000,
"documentation": "https://www.metabase.com/docs/latest/",
"config_path": "/opt/metabase/.env",
"website": "https://www.metabase.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/metabase.webp",
"description": "Metabase is an open-source business intelligence platform. You can use Metabase to ask questions about your data, or embed Metabase in your app to let your customers explore their data on their own.",
"install_methods": [
{
"type": "default",
"script": "ct/metabase.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 6,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@@ -1,40 +0,0 @@
{
"name": "Miniflux",
"slug": "miniflux",
"categories": [
13
],
"date_created": "2025-11-12",
"type": "ct",
"updateable": true,
"privileged": false,
"config_path": "/etc/miniflux.conf",
"interface_port": 8080,
"documentation": "https://miniflux.app/docs/index.html",
"website": "https://miniflux.app/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/miniflux-light.webp",
"description": "Miniflux is a minimalist and opinionated feed reader.",
"install_methods": [
{
"type": "default",
"script": "ct/miniflux.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 8,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": "admin",
"password": "randomly generated during installation process"
},
"notes": [
{
"text": "Admin password available as `ADMIN_PASSWORD` in `~/miniflux.creds`",
"type": "info"
}
]
}

View File

@@ -1,40 +0,0 @@
{
"name": "NetVisor",
"slug": "netvisor",
"categories": [
9
],
"date_created": "2025-11-13",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 60072,
"documentation": "https://github.com/mayanayza/netvisor",
"config_path": "/opt/netvisor/.env",
"website": "https://github.com/mayanayza/netvisor",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/png/netvisor.png",
"description": "Automatically discover and visually document network infrastructure",
"install_methods": [
{
"type": "default",
"script": "ct/netvisor.sh",
"resources": {
"cpu": 2,
"ram": 3072,
"hdd": 6,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "The integrated daemon config is located at `/root/.config/daemon/config.json`",
"type": "info"
}
]
}

View File

@@ -1,44 +0,0 @@
{
"name": "Passbolt",
"slug": "passbolt",
"categories": [
6
],
"date_created": "2025-11-17",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 443,
"documentation": "https://www.passbolt.com/docs/",
"config_path": "/etc/passbolt/passbolt.php",
"website": "https://www.passbolt.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/passbolt.webp",
"description": "Passbolt is a hybrid credential platform. It is built-first for modern IT teams, yet simple enough for everyone. A sovereign, battle-tested solution that delivers for a team of 5, or an organisation of 5000.",
"install_methods": [
{
"type": "default",
"script": "ct/passbolt.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 2,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Type `cat ~/.Passbolt.creds` to see MariaDB database credentials. You will need those to setup Passbolt.",
"type": "info"
},
{
"text": "The application uses self-signed certificates. You can also use Let's Encrypt to get a valid certificate for your domain. Please read the documentation for more information.",
"type": "info"
}
]
}

View File

@@ -1,48 +0,0 @@
{
"name": "Splunk Enterprise",
"slug": "splunk-enterprise",
"categories": [
9
],
"date_created": "2025-11-12",
"type": "ct",
"updateable": false,
"privileged": false,
"interface_port": 8000,
"documentation": "https://help.splunk.com",
"config_path": "",
"website": "https://www.splunk.com/en_us/download/splunk-enterprise.html",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/splunk.webp",
"description": "Platform for searching, monitoring, and analyzing machine-generated data at scale for operational intelligence and security.",
"install_methods": [
{
"type": "default",
"script": "ct/splunk-enterprise.sh",
"resources": {
"cpu": 4,
"ram": 8192,
"hdd": 40,
"os": "Ubuntu",
"version": "24.04"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "The credentials to login can be found in splunk.creds.",
"type": "info"
},
{
"text": "Trial license allows indexing 500 MB/Day. After 60 days you can convert to a perpetual free license or purchase a Splunk Enterprise license to continue using the expanded functionality designed for enterprise-scale deployments.",
"type": "warning"
},
{
"text": "About Splunk Free License: https://help.splunk.com/en/splunk-enterprise/administer/admin-manual/10.0/configure-splunk-licenses/about-splunk-free",
"type": "info"
}
]
}

View File

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

File diff suppressed because it is too large Load Diff

View File

@@ -53,7 +53,7 @@ sed -i -e "s|^APP_URL=.*|APP_URL=http://$IPADDRESS|" \
-e "s|^DB_PASSWORD=$|DB_PASSWORD=$DB_PASS|" .env
export COMPOSER_ALLOW_SUPERUSER=1
$STD composer update --no-plugins --no-scripts
$STD composer install --no-dev --prefer-dist --no-plugins --no-scripts
$STD composer install --no-dev --prefer-source --no-plugins --no-scripts
$STD php artisan key:generate --force
$STD php artisan migrate:refresh
$STD php artisan passport:install -q -n

View File

@@ -0,0 +1,73 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: bvdberg01
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/Forceu/barcodebuddy
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y \
redis \
sqlite3
msg_ok "Installed Dependencies"
PHP_VERSION="8.2" PHP_APACHE="YES" PHP_MODULE="redis, sqlite3" setup_php
fetch_and_deploy_gh_release "barcodebuddy" "Forceu/barcodebuddy"
msg_info "Configuring barcodebuddy"
chown -R www-data:www-data /opt/barcodebuddy/data
msg_ok "Configured barcodebuddy"
msg_info "Creating Services"
cat <<EOF >/etc/systemd/system/barcodebuddy.service
[Unit]
Description=Run websocket server for barcodebuddy screen feature
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/php /opt/barcodebuddy/wsserver.php
StandardOutput=null
Restart=on-failure
User=www-data
[Install]
WantedBy=multi-user.target
EOF
cat <<EOF >/etc/apache2/sites-available/barcodebuddy.conf
<VirtualHost *:80>
ServerName barcodebuddy
DocumentRoot /opt/barcodebuddy
<Directory /opt/barcodebuddy>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/barcodebuddy_error.log
CustomLog /var/log/apache2/barcodebuddy_access.log combined
</VirtualHost>
EOF
systemctl enable -q --now barcodebuddy
$STD a2ensite barcodebuddy
$STD a2enmod rewrite
$STD a2dissite 000-default.conf
$STD systemctl reload apache2
msg_ok "Created Services"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -1,72 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: CrazyWolf13
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/CrazyWolf13/domain-locker
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
PG_VERSION="17" setup_postgresql
PG_DB_NAME="domainlocker_db" PG_DB_USER="domainlocker" setup_postgresql_db
NODE_VERSION="22" setup_nodejs
fetch_and_deploy_gh_release "domain-locker" "Lissy93/domain-locker"
msg_info "Installing Modules (patience)"
cd /opt/domain-locker
$STD npm install
msg_ok "Installed Modules"
msg_info "Building Domain-Locker (a lot of patience)"
cat <<EOF >/opt/domain-locker.env
# Database connection
DL_PG_HOST=localhost
DL_PG_PORT=5432
DL_PG_USER=$PG_DB_USER
DL_PG_PASSWORD=$PG_DB_PASS
DL_PG_NAME=$PG_DB_NAME
# Build + Runtime
DL_ENV_TYPE=selfHosted
NITRO_PRESET=node_server
NODE_ENV=production
EOF
set -a
source /opt/domain-locker.env
set +a
$STD npm run build
msg_info "Built Domain-Locker"
msg_info "Building Database schema"
export PGPASSWORD="$DL_PG_PASSWORD"
$STD psql -h "$DL_PG_HOST" -p "$DL_PG_PORT" -U "$DL_PG_USER" -d "$DL_PG_NAME" -f "/opt/domain-locker/db/schema.sql"
msg_ok "Built Database schema"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/domain-locker.service
[Unit]
Description=Domain-Locker Service
After=network.target
[Service]
EnvironmentFile=/opt/domain-locker.env
WorkingDirectory=/opt/domain-locker
ExecStart=/opt/domain-locker/start.sh
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl start --now -q domain-locker
msg_info "Created Service"
motd_ssh
customize
cleanup_lxc

View File

@@ -33,7 +33,7 @@ MARIADB_DB_NAME="domain_monitor" MARIADB_DB_USER="domainmonitor" setup_mariadb_d
fetch_and_deploy_gh_release "domain-monitor" "Hosteroid/domain-monitor" "prebuild" "latest" "/opt/domain-monitor" "domain-monitor-v*.zip"
msg_info "Setting up Domain Monitor"
ENC_KEY=$(openssl rand -base64 32 | tr -d '\n')
ENC_KEY=$(openssl rand -base64 48 | tr -dc 'A-Za-z0-9' | head -c 32)
cd /opt/domain-monitor
$STD composer install
cp env.example.txt .env
@@ -43,7 +43,6 @@ sed -i -e "s|^APP_ENV=.*|APP_ENV=production|" \
-e "s|^DB_USERNAME=.*|DB_USERNAME=$MARIADB_DB_USER|" \
-e "s|^DB_PASSWORD=.*|DB_PASSWORD=$MARIADB_DB_PASS|" \
-e "s|^DB_DATABASE=.*|DB_DATABASE=$MARIADB_DB_NAME|" .env
echo "0 0 * * * root /usr/bin/php /opt/domain-monitor/cron/check_domains.php" >>/etc/crontab
cat <<EOF >/etc/apache2/sites-enabled/000-default.conf
<VirtualHost *:80>

62
install/fenrus-install.sh Normal file
View File

@@ -0,0 +1,62 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 tteck
# Author: tteck (tteckster)
# Co-Author: Scorpoon
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/revenz/Fenrus
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y git
msg_ok "Installed Dependencies"
msg_info "Installing ASP.NET Core 7 SDK"
var_os=$(grep "^ID=" /etc/os-release | cut -d'=' -f2 | tr -d '"')
var_version=$(grep "^VERSION_ID=" /etc/os-release | cut -d'=' -f2 | tr -d '"')
if [ "${var_os}" = "debian" ]; then
curl -fsSL "https://packages.microsoft.com/config/debian/$var_version/packages-microsoft-prod.deb" -o "packages-microsoft-prod.deb"
$STD dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
fi
$STD apt-get update
$STD apt-get install -y dotnet-sdk-7.0
msg_ok "Installed ASP.NET Core 7 SDK"
msg_info "Installing ${APPLICATION}"
git clone -q https://github.com/revenz/Fenrus.git /opt/${APPLICATION}
cd /opt/${APPLICATION}
$STD dotnet publish -c Release -o "/opt/${APPLICATION}/" Fenrus.csproj
msg_ok "Installed ${APPLICATION}"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/"${APPLICATION}".service
[Unit]
Description=${APPLICATION}
[Service]
WorkingDirectory=/opt/${APPLICATION}
ExecStart=/usr/bin/dotnet Fenrus.dll --urls=http://*:5000
SyslogIdentifier=${APPLICATION}
User=root
[Install]
WantedBy=multi-user.target
EOF
$STD systemctl enable -q --now ${APPLICATION}
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,23 +14,26 @@ network_check
update_os
msg_info "Installing Dependencies"
$STD apt install -y apt-transport-https
$STD apt-get install -y \
apt-transport-https \
software-properties-common
msg_ok "Installed Dependencies"
msg_info "Setting up Grafana Repository"
setup_deb822_repo \
"grafana" \
"https://apt.grafana.com/gpg.key" \
"https://apt.grafana.com" \
"stable" \
"main"
msg_ok "Grafana Repository setup sucessfully"
curl -fsSL "https://apt.grafana.com/gpg.key" -o "/usr/share/keyrings/grafana.key"
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" >/etc/apt/sources.list.d/grafana.list
msg_ok "Set up Grafana Repository"
msg_info "Installing Grafana"
$STD apt install -y grafana
systemctl enable -q --now grafana-server
$STD apt-get update
$STD apt-get install -y grafana
systemctl enable -q --now grafana-server
msg_ok "Installed Grafana"
motd_ssh
customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -22,7 +22,7 @@ $STD apt install -y \
caddy
msg_ok "Installed Dependencies"
PYTHON_VERSION="3.13" setup_uv
PYTHON_VERSION="3.12" setup_python
PG_VERSION=16 setup_postgresql
msg_info "Setup Database"

View File

@@ -49,7 +49,7 @@ echo "export COMPOSER_ALLOW_SUPERUSER=1" >>~/.bashrc
source ~/.bashrc
$STD composer install --no-dev --optimize-autoloader --no-interaction
cp .env.dist .env
sed -i "/^DATABASE_URL=/c\DATABASE_URL=mysql://$DB_USER:$DB_PASS@127.0.0.1:3306/$DB_NAME?charset=utf8mb4&serverVersion=mariadb-$MYSQL_VERSION" /opt/kimai/.env
sed -i "/^DATABASE_URL=/c\DATABASE_URL=mysql://$DB_USER:$DB_PASS@127.0.0.1:3306/$DB_NAME?charset=utf8mb4&serverVersion=$MYSQL_VERSION" /opt/kimai/.env
$STD bin/console kimai:install -n
$STD expect <<EOF
set timeout -1
@@ -71,6 +71,9 @@ kimai:
begin: 15
end: 15
admin_lte:
options:
default_avatar: build/apple-touch-icon.png
EOF
msg_ok "Installed Kimai"

View File

@@ -1,138 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: michelroegl-brunner
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.librenms.org/
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 \
acl \
fping \
graphviz \
imagemagick \
mtr-tiny \
nginx \
nmap \
rrdtool \
snmp \
snmpd \
whois
msg_ok "Installed Dependencies"
msg_info "Installing Python Dependencies"
$STD apt install -y \
python3-dotenv \
python3-pymysql \
python3-redis \
python3-setuptools \
python3-systemd \
python3-pip
msg_ok "Installed Python Dependencies"
PHP_VERSION="8.4" PHP_FPM="YES" PHP_MODULE="gmp,mysql,snmp" setup_php
setup_mariadb
setup_composer
PYTHON_VERSION="3.13" setup_uv
MARIADB_DB_NAME="librenms" MARIADB_DB_USER="librenms" MARIADB_DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)" setup_mariadb_db
fetch_and_deploy_gh_release "librenms" "librenms/librenms"
msg_info "Configuring LibreNMS"
$STD useradd librenms -d /opt/librenms -M -r -s "$(which bash)"
mkdir -p /opt/librenms/{rrd,logs,bootstrap/cache,storage,html}
cd /opt/librenms
APP_KEY=$(openssl rand -base64 40 | tr -dc 'a-zA-Z0-9')
$STD uv venv .venv
$STD source .venv/bin/activate
$STD uv pip install -r requirements.txt
cat <<EOF >/opt/librenms/.env
DB_DATABASE=${MARIADB_DB_NAME}
DB_USERNAME=${MARIADB_DB_USER}
DB_PASSWORD=${MARIADB_DB_PASS}
APP_KEY=${APP_KEY}
EOF
chown -R librenms:librenms /opt/librenms
chmod 771 /opt/librenms
chmod -R ug=rwX /opt/librenms/bootstrap/cache /opt/librenms/storage /opt/librenms/logs /opt/librenms/rrd
msg_ok "Configured LibreNMS"
msg_info "Configure MariaDB"
sed -i "/\[mysqld\]/a innodb_file_per_table=1\nlower_case_table_names=0" /etc/mysql/mariadb.conf.d/50-server.cnf
systemctl enable -q --now mariadb
msg_ok "Configured MariaDB"
msg_info "Configure PHP-FPM"
cp /etc/php/8.4/fpm/pool.d/www.conf /etc/php/8.4/fpm/pool.d/librenms.conf
sed -i "s/\[www\]/\[librenms\]/g" /etc/php/8.4/fpm/pool.d/librenms.conf
sed -i "s/user = www-data/user = librenms/g" /etc/php/8.4/fpm/pool.d/librenms.conf
sed -i "s/group = www-data/group = librenms/g" /etc/php/8.4/fpm/pool.d/librenms.conf
sed -i "s/listen = \/run\/php\/php8.4-fpm.sock/listen = \/run\/php-fpm-librenms.sock/g" /etc/php/8.4/fpm/pool.d/librenms.conf
msg_ok "Configured PHP-FPM"
msg_info "Configure Nginx"
IP_ADDR=$(hostname -I | awk '{print $1}')
cat >/etc/nginx/sites-enabled/librenms <<'EOF'
server {
listen 80;
server_name ${IP_ADDR};
root /opt/librenms/html;
index index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php-fpm-librenms.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi.conf;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
EOF
rm /etc/nginx/sites-enabled/default
$STD systemctl reload nginx
systemctl restart php8.4-fpm
msg_ok "Configured Nginx"
msg_info "Configure Services"
ln -s /opt/librenms/lnms /usr/bin/lnms
mkdir -p /etc/bash_completion.d/
cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && php8.4 artisan migrate --force"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && php8.4 artisan key:generate --force"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && lnms db:seed --force"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && lnms user:add -p admin -r admin admin"
RANDOM_STRING=$(openssl rand -base64 16 | tr -dc 'a-zA-Z0-9')
sed -i "s/RANDOMSTRINGHERE/$RANDOM_STRING/g" /etc/snmp/snmpd.conf
echo "SNMP Community String: $RANDOM_STRING" >>~/librenms.creds
curl -qso /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x /usr/bin/distro
systemctl enable -q --now snmpd
cp /opt/librenms/dist/librenms.cron /etc/cron.d/librenms
cp /opt/librenms/dist/librenms-scheduler.service /opt/librenms/dist/librenms-scheduler.timer /etc/systemd/system/
systemctl enable -q --now librenms-scheduler.timer
cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
msg_ok "Configured Services"
motd_ssh
customize
cleanup_lxc

View File

@@ -1,59 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.metabase.com/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
JAVA_VERSION="21" setup_java
PG_VERSION="17" setup_postgresql
PG_DB_NAME="metabase_db" PG_DB_USER="metabase" setup_postgresql_db
msg_info "Setting up Metabase"
mkdir -p /opt/metabase
RELEASE=$(get_latest_github_release "metabase/metabase")
curl -fsSL "https://downloads.metabase.com/v${RELEASE}.x/metabase.jar" -o /opt/metabase/metabase.jar
cd /opt/metabase
cat <<EOF >/opt/metabase/.env
MB_DB_TYPE=postgres
MB_DB_DBNAME=$PG_DB_NAME
MB_DB_PORT=5432
MB_DB_USER=$PG_DB_USER
MB_DB_PASS=$PG_DB_PASS
MB_DB_HOST=localhost
EOF
echo $RELEASE >~/.metabase
msg_ok "Setup Metabase"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/metabase.service
[Unit]
Description=Metabase Service
After=network.target
[Service]
EnvironmentFile=/opt/metabase/.env
WorkingDirectory=/opt/metabase
ExecStart=/usr/bin/java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar
Restart=always
SuccessExitStatus=143
TimeoutStopSec=120
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now metabase
msg_ok "Created Service"
motd_ssh
customize
cleanup_lxc

View File

@@ -1,41 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: omernaveedxyz
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://miniflux.app/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
PG_VERSION=17 setup_postgresql
PG_DB_NAME="miniflux_db" PG_DB_USER="miniflux" PG_DB_GRANT_SUPERUSER="true" setup_postgresql_db
fetch_and_deploy_gh_release "miniflux" "miniflux/v2" "binary" "latest"
msg_info "Configuring Miniflux"
ADMIN_NAME=admin
ADMIN_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)"
cat <<EOF >/etc/miniflux.conf
# See https://miniflux.app/docs/configuration.html
DATABASE_URL=user=$PG_DB_USER password=$PG_DB_PASS dbname=$PG_DB_NAME sslmode=disable
CREATE_ADMIN=1
ADMIN_USERNAME=$ADMIN_NAME
ADMIN_PASSWORD=$ADMIN_PASS
LISTEN_ADDR=0.0.0.0:8080
EOF
{
echo "ADMIN_USERNAME: $ADMIN_NAME"
echo "ADMIN_PASSWORD: $ADMIN_PASS"
} >>~/miniflux.creds
$STD miniflux -migrate -config-file /etc/miniflux.conf
systemctl enable -q --now miniflux
msg_ok "Configured Miniflux"
motd_ssh
customize
cleanup_lxc

View File

@@ -1,129 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/mayanayza/netvisor
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 \
build-essential \
libssl-dev \
pkg-config
msg_ok "Installed Dependencies"
PG_VERSION=17 setup_postgresql
NODE_VERSION="24" setup_nodejs
PG_DB_NAME="netvisor_db" PG_DB_USER="netvisor" PG_DB_GRANT_SUPERUSER="true" setup_postgresql_db
fetch_and_deploy_gh_release "netvisor" "mayanayza/netvisor" "tarball" "latest" "/opt/netvisor"
TOOLCHAIN="$(grep "channel" /opt/netvisor/backend/rust-toolchain.toml | awk -F\" '{print $2}')"
RUST_TOOLCHAIN=$TOOLCHAIN setup_rust
msg_info "Creating frontend UI"
export PUBLIC_SERVER_HOSTNAME=default
export PUBLIC_SERVER_PORT=60072
cd /opt/netvisor/ui
$STD npm ci --no-fund --no-audit
$STD npm run build
msg_ok "Created frontend UI"
msg_info "Building Netvisor-server (patience)"
cd /opt/netvisor/backend
$STD cargo build --release --bin server
mv ./target/release/server /usr/bin/netvisor-server
msg_ok "Built Netvisor-server"
msg_info "Building Netvisor-daemon"
$STD cargo build --release --bin daemon
cp ./target/release/daemon /usr/bin/netvisor-daemon
msg_ok "Built Netvisor-daemon"
msg_info "Configuring server & daemon for first-run"
cat <<EOF >/opt/netvisor/.env
### - UI
PUBLIC_SERVER_HOSTNAME=default
PUBLIC_SERVER_PORT=60072
### - SERVER
NETVISOR_DATABASE_URL=postgresql://$PG_DB_USER:$PG_DB_PASS@localhost:5432/$PG_DB_NAME
NETVISOR_WEB_EXTERNAL_PATH="/opt/netvisor/ui/build"
NETVISOR_SERVER_PORT=60072
NETVISOR_LOG_LEVEL=info
NETVISOR_INTEGRATED_DAEMON_URL=http://127.0.0.1:60073
## - uncomment to disable signups
# NETVISOR_DISABLE_REGISTRATION=true
## - uncomment when behind reverse proxy
# NETVISOR_USE_SECURE_SESSION_COOKIES=true
### - OIDC (optional)
# NETVISOR_OIDC_ISSUER_URL=
# NETVISOR_OIDC_CLIENT_ID=
# NETVISOR_OIDC_CLIENT_SECRET=
# NETVISOR_OIDC_PROVIDER_NAME=
# NETVISOR_OIDC_REDIRECT_URL=
## - Callback URL for reference
# http://your-netvisor-domain:60072/api/auth/oidc/callback
### - INTEGRATED DAEMON
NETVISOR_SERVER_TARGET=127.0.0.1
NETVISOR_BIND_ADDRESS=0.0.0.0
NETVISOR_NAME="netvisor-daemon"
NETVISOR_HEARTBEAT_INTERVAL=30
EOF
cat <<EOF >/etc/systemd/system/netvisor-server.service
[Unit]
Description=NetVisor Network Discovery Server
After=network.target postgresql.service
[Service]
Type=simple
EnvironmentFile=/opt/netvisor/.env
ExecStart=/usr/bin/netvisor-server
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now netvisor-server
sleep 5
NETWORK_ID="$(sudo -u postgres psql -1 -t -d $PG_DB_NAME -c 'SELECT id FROM networks;')"
API_KEY="$(sudo -u postgres psql -1 -t -d $PG_DB_NAME -c 'SELECT key from api_keys;')"
cat <<EOF >/etc/systemd/system/netvisor-daemon.service
[Unit]
Description=NetVisor Network Discovery Daemon
After=network.target netvisor-server.service
[Service]
Type=simple
EnvironmentFile=/opt/netvisor/.env
ExecStart=/usr/bin/netvisor-daemon --server-target http://127.0.0.1 --server-port 60072 --network-id ${NETWORK_ID} --daemon-api-key ${API_KEY}
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now netvisor-daemon
msg_ok "Netvisor server & daemon configured and running"
motd_ssh
customize
cleanup_lxc

View File

@@ -44,36 +44,46 @@ $STD apt install -y \
msg_ok "Installed Dependencies"
PG_VERSION="16" setup_postgresql
PG_DB_NAME="paperlessdb" PG_DB_USER="paperless" setup_postgresql_db
PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
msg_info "Setting up PostgreSQL database"
DB_NAME=paperlessdb
DB_USER=paperless
DB_PASS="$(openssl rand -base64 18 | cut -c1-13)"
SECRET_KEY="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)"
$STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';"
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;"
$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 "Paperless-ngx-Credentials"
echo "Paperless-ngx Database Name: $DB_NAME"
echo "Paperless-ngx Database User: $DB_USER"
echo "Paperless-ngx Database Password: $DB_PASS"
echo "Paperless-ngx Secret Key: $SECRET_KEY\n"
echo "Paperless-ngx WebUI User: admin"
echo "Paperless-ngx WebUI Password: $DB_PASS"
} >>~/paperless-ngx.creds
msg_ok "Setup PostgreSQL database"
msg_info "Setup Paperless-ngx"
cd /opt/paperless
rm -rf /opt/paperless/docker
$STD uv sync --all-extras
curl -fsSL "https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/paperless.conf.example" -o /opt/paperless/paperless.conf
mkdir -p /opt/paperless_data/{consume,data,media,trash}
mkdir -p /opt/paperless/static
SECRET_KEY="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)"
{
echo ""
echo "Paperless-ngx Secret Key: $SECRET_KEY"
echo "Paperless-ngx WebUI User: admin"
echo "Paperless-ngx WebUI Password: $PG_DB_PASS"
} >>~/paperless-ngx.creds
mkdir -p {consume,data,media,static}
sed -i \
-e 's|#PAPERLESS_REDIS=redis://localhost:6379|PAPERLESS_REDIS=redis://localhost:6379|' \
-e "s|#PAPERLESS_CONSUMPTION_DIR=../consume|PAPERLESS_CONSUMPTION_DIR=/opt/paperless_data/consume|" \
-e "s|#PAPERLESS_DATA_DIR=../data|PAPERLESS_DATA_DIR=/opt/paperless_data/data|" \
-e "s|#PAPERLESS_MEDIA_ROOT=../media|PAPERLESS_MEDIA_ROOT=/opt/paperless_data/media|" \
-e "s|#PAPERLESS_EMPTY_TRASH_DIR=|PAPERLESS_EMPTY_TRASH_DIR=/opt/paperless_data/trash|" \
-e "s|#PAPERLESS_CONSUMPTION_DIR=../consume|PAPERLESS_CONSUMPTION_DIR=/opt/paperless/consume|" \
-e "s|#PAPERLESS_DATA_DIR=../data|PAPERLESS_DATA_DIR=/opt/paperless/data|" \
-e "s|#PAPERLESS_MEDIA_ROOT=../media|PAPERLESS_MEDIA_ROOT=/opt/paperless/media|" \
-e "s|#PAPERLESS_STATICDIR=../static|PAPERLESS_STATICDIR=/opt/paperless/static|" \
-e 's|#PAPERLESS_DBHOST=localhost|PAPERLESS_DBHOST=localhost|' \
-e 's|#PAPERLESS_DBPORT=5432|PAPERLESS_DBPORT=5432|' \
-e "s|#PAPERLESS_DBNAME=paperless|PAPERLESS_DBNAME=$PG_DB_NAME|" \
-e "s|#PAPERLESS_DBUSER=paperless|PAPERLESS_DBUSER=$PG_DB_USER|" \
-e "s|#PAPERLESS_DBPASS=paperless|PAPERLESS_DBPASS=$PG_DB_PASS|" \
-e "s|#PAPERLESS_DBNAME=paperless|PAPERLESS_DBNAME=$DB_NAME|" \
-e "s|#PAPERLESS_DBUSER=paperless|PAPERLESS_DBUSER=$DB_USER|" \
-e "s|#PAPERLESS_DBPASS=paperless|PAPERLESS_DBPASS=$DB_PASS|" \
-e "s|#PAPERLESS_SECRET_KEY=change-me|PAPERLESS_SECRET_KEY=$SECRET_KEY|" \
/opt/paperless/paperless.conf
cd /opt/paperless/src
@@ -87,7 +97,7 @@ msg_info "Setting up admin Paperless-ngx User & Password"
cat <<EOF | uv run -- python /opt/paperless/src/manage.py shell
from django.contrib.auth import get_user_model
UserModel = get_user_model()
user = UserModel.objects.create_user('admin', password='$PG_DB_PASS')
user = UserModel.objects.create_user('admin', password='$DB_PASS')
user.is_superuser = True
user.is_staff = True
user.save()
@@ -98,8 +108,8 @@ msg_info "Installing Natural Language Toolkit (Patience)"
cd /opt/paperless
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data snowball_data
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data stopwords
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data punkt_tab ||
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data punkt
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data punkt_tab || \
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data punkt
for policy_file in /etc/ImageMagick-6/policy.xml /etc/ImageMagick-7/policy.xml; do
if [[ -f "$policy_file" ]]; then
sed -i -e 's/rights="none" pattern="PDF"/rights="read|write" pattern="PDF"/' "$policy_file"
@@ -176,4 +186,11 @@ fi
motd_ssh
customize
cleanup_lxc
msg_info "Cleaning up"
rm -rf /opt/paperless/docker
rm -rf /tmp/ghostscript*
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -1,51 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.passbolt.com/
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 \
apt-transport-https \
python3-certbot-nginx \
debconf-utils
msg_ok "Installed dependencies"
setup_mariadb
MARIADB_DB_NAME="passboltdb" MARIADB_DB_USER="passbolt" MARIADB_DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)" setup_mariadb_db
setup_deb822_repo \
"passbolt" \
"https://keys.openpgp.org/pks/lookup?op=get&options=mr&search=0x3D1A0346C8E1802F774AEF21DE8B853FC155581D" \
"https://download.passbolt.com/ce/debian" \
"buster" \
"stable"
create_self_signed_cert "passbolt"
msg_info "Setting up Passbolt (Patience)"
export DEBIAN_FRONTEND=noninteractive
IP_ADDR=$(hostname -I | awk '{print $1}')
echo passbolt-ce-server passbolt/mysql-configuration boolean true | debconf-set-selections
echo passbolt-ce-server passbolt/mysql-passbolt-username string $MARIADB_DB_USER | debconf-set-selections
echo passbolt-ce-server passbolt/mysql-passbolt-password password $MARIADB_DB_PASS | debconf-set-selections
echo passbolt-ce-server passbolt/mysql-passbolt-password-repeat password $MARIADB_DB_PASS | debconf-set-selections
echo passbolt-ce-server passbolt/mysql-passbolt-dbname string $MARIADB_DB_NAME | debconf-set-selections
echo passbolt-ce-server passbolt/nginx-configuration boolean true | debconf-set-selections
echo passbolt-ce-server passbolt/nginx-configuration-three-choices select manual | debconf-set-selections
echo passbolt-ce-server passbolt/nginx-domain string $IP_ADDR | debconf-set-selections
echo passbolt-ce-server passbolt/nginx-certificate-file string /etc/ssl/passbolt/passbolt.crt | debconf-set-selections
echo passbolt-ce-server passbolt/nginx-certificate-key-file string /etc/ssl/passbolt/passbolt.key | debconf-set-selections
$STD apt install -y --no-install-recommends passbolt-ce-server
msg_ok "Setup Passbolt"
motd_ssh
customize
cleanup_lxc

View File

@@ -13,10 +13,6 @@ setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt install -y fping
msg_ok "Installed Dependencies"
PHP_VERSION="8.3" PHP_APACHE="YES" PHP_FPM="YES" PHP_MODULE="mysql,gmp,snmp,ldap,apcu" setup_php
msg_info "Installing PHP-PEAR"
@@ -30,8 +26,6 @@ MARIADB_DB_NAME="phpipam" MARIADB_DB_USER="phpipam" setup_mariadb_db
fetch_and_deploy_gh_release "phpipam" "phpipam/phpipam" "prebuild" "latest" "/opt/phpipam" "phpipam-v*.zip"
msg_info "Installing phpIPAM"
# patch SCHEMA, during varchar l_name is to short in upstream (2025-11-15)
sed -i -E 's/`l_name`\s+varchar\([0-9]+\)/`l_name` varchar(128)/' /opt/phpipam/db/SCHEMA.sql
$STD mariadb -u root "${MARIADB_DB_NAME}" </opt/phpipam/db/SCHEMA.sql
cp /opt/phpipam/config.dist.php /opt/phpipam/config.php
sed -i -e "s/\(\$disable_installer = \).*/\1true;/" \

View File

@@ -1,79 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: rcastley
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.splunk.com/en_us/download.html
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
echo -e "${TAB3}┌─────────────────────────────────────────────────────────────────────────┐"
echo -e "${TAB3}│ SPLUNK GENERAL TERMS │"
echo -e "${TAB3}└─────────────────────────────────────────────────────────────────────────┘"
echo ""
echo -e "${TAB3}Before proceeding with the Splunk Enterprise installation, you must"
echo -e "${TAB3}review and accept the Splunk General Terms."
echo ""
echo -e "${TAB3}Please review the terms at:"
echo -e "${TAB3}${GATEWAY}${BGN}https://www.splunk.com/en_us/legal/splunk-general-terms.html${CL}"
echo ""
while true; do
echo -e "${TAB3}Do you accept the Splunk General Terms? (y/N): \c"
read -r response
case $response in
[Yy]|[Yy][Ee][Ss])
msg_ok "Terms accepted. Proceeding with installation..."
break
;;
[Nn]|[Nn][Oo]|"")
msg_error "Terms not accepted. Installation cannot proceed."
msg_error "Please review the terms and run the script again if you wish to proceed."
exit 1
;;
*)
msg_error "Invalid response. Please enter 'y' for yes or 'n' for no."
;;
esac
done
msg_info "Setup Splunk Enterprise"
DOWNLOAD_URL=$(curl -s "https://www.splunk.com/en_us/download/splunk-enterprise.html" | grep -o 'data-link="[^"]*' | sed 's/data-link="//' | grep "https.*products/splunk/releases" | grep "\.deb$")
RELEASE=$(echo "$DOWNLOAD_URL" | sed 's|.*/releases/\([^/]*\)/.*|\1|')
$STD curl -fsSL -o "splunk-enterprise.deb" "$DOWNLOAD_URL" || {
msg_error "Failed to download Splunk Enterprise from the provided link."
exit 1
}
$STD dpkg -i "splunk-enterprise.deb"
rm -f "splunk-enterprise.deb"
msg_ok "Setup Splunk Enterprise v${RELEASE}"
msg_info "Creating Splunk admin user"
ADMIN_USER="admin"
ADMIN_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
{
echo "Splunk-Credentials"
echo "Username: $ADMIN_USER"
echo "Password: $ADMIN_PASS"
} >> ~/splunk.creds
cat > "/opt/splunk/etc/system/local/user-seed.conf" << EOF
[user_info]
USERNAME = $ADMIN_USER
PASSWORD = $ADMIN_PASS
EOF
msg_ok "Created Splunk admin user"
msg_info "Starting Service"
$STD /opt/splunk/bin/splunk start --accept-license --answer-yes --no-prompt
$STD /opt/splunk/bin/splunk enable boot-start
msg_ok "Started Service"
motd_ssh
customize
cleanup_lxc

View File

@@ -27,4 +27,9 @@ bash <(curl -sL s5n.sh)
motd_ssh
customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -28,6 +28,8 @@ $STD npm install
export NODE_ENV=production
$STD npm run frontend:build
mv ./dist ./backend
mv ./public/locales ./backend/dist
mv ./public/favicon.* ./backend/dist
msg_ok "Configured Tududi"
msg_info "Creating env and database"
@@ -35,16 +37,15 @@ DB_LOCATION="/opt/tududi-db"
UPLOAD_DIR="/opt/tududi-uploads"
mkdir -p {"$DB_LOCATION","$UPLOAD_DIR"}
SECRET="$(openssl rand -hex 64)"
sed -e '/^NODE_ENV=/s/=.*$/=production/' \
-e 's/^TUDUDI_USER/# TUDUDI_USER/g' \
-e "/_SECRET=/s/=.*$/=${SECRET}/" \
-e "/^# DB_FILE/s/^# //; \
\|DB_FILE|s|/path.*$|${DB_LOCATION}/production.sqlite3|" \
-e "/^# TUDUDI_ALLOWED/s/^# //; \
\|_ORIGINS=|s|=.*$|=<your tududi IP or FDQN>|" \
-e "/^# TUDUDI_UPLOAD/s/^# //; \
\|UPLOAD_PATH=|s|=.*$|=${UPLOAD_DIR}|" \
/opt/tududi/backend/.env.example >/opt/tududi/backend/.env
cat <<EOF >/opt/tududi/backend/.env
TUDUDI_SESSION_SECRET=${SECRET}
TUDUDI_ALLOWED_ORIGINS=<your tududi IP or FQDN>
NODE_ENV=production
DB_FILE=${DB_LOCATION}/production.sqlite3
TUDUDI_UPLOAD_PATH=${UPLOAD_DIR}
DISABLE_TELEGRAM=true
DIABLE_SCHEDULER=false
EOF
export DB_FILE="${DB_LOCATION}/production.sqlite3"
$STD npm run db:init
msg_ok "Created env and database"

View File

@@ -108,7 +108,7 @@ else
AGENT_SERVICE="zabbix-agent"
fi
systemctl restart zabbix-server apache2
systemctl restart zabbix-server
systemctl enable -q --now zabbix-server $AGENT_SERVICE apache2
msg_ok "Started Services"

View File

@@ -30,6 +30,7 @@ post_to_api() {
"ram_size": $RAM_SIZE,
"os_type": "$var_os",
"os_version": "$var_version",
"disableip6": "",
"nsapp": "$NSAPP",
"method": "$METHOD",
"pve_version": "$pve_version",
@@ -80,6 +81,7 @@ post_to_api_vm() {
"ram_size": $RAM_SIZE,
"os_type": "$var_os",
"os_version": "$var_version",
"disableip6": "",
"nsapp": "$NSAPP",
"method": "$METHOD",
"pve_version": "$pve_version",

View File

@@ -1214,7 +1214,7 @@ setup_deb822_repo() {
local gpg_url="$2"
local repo_url="$3"
local suite="$4"
local component="${5-main}"
local component="${5:-main}"
local architectures="${6-}" # optional
# Validate required parameters
@@ -2788,7 +2788,7 @@ function setup_java() {
# Validate INSTALLED_VERSION is not empty if matched
local JDK_COUNT=0
JDK_COUNT=$(dpkg -l 2>/dev/null | grep -c "temurin-.*-jdk" || true)
JDK_COUNT=$(dpkg -l 2>/dev/null | grep -c "temurin-.*-jdk" || echo "0")
if [[ -z "$INSTALLED_VERSION" && "${JDK_COUNT:-0}" -gt 0 ]]; then
msg_warn "Found Temurin JDK but cannot determine version"
INSTALLED_VERSION="0"
@@ -3117,8 +3117,7 @@ function setup_mariadb_db() {
$STD mariadb -u root -e "FLUSH PRIVILEGES;"
local app_name="${APPLICATION,,}"
local CREDS_FILE="${MARIADB_DB_CREDS_FILE:-${HOME}/${app_name}.creds}"
local CREDS_FILE="${MARIADB_DB_CREDS_FILE:-${HOME}/${APPLICATION}.creds}"
{
echo "MariaDB Credentials"
echo "Database: $MARIADB_DB_NAME"
@@ -3806,73 +3805,10 @@ function setup_postgresql() {
local SUITE
case "$DISTRO_CODENAME" in
trixie | forky | sid)
# For Debian Testing/Unstable, try PostgreSQL repo first, fallback to native packages
if verify_repo_available "https://apt.postgresql.org/pub/repos/apt" "trixie-pgdg"; then
SUITE="trixie-pgdg"
setup_deb822_repo \
"pgdg" \
"https://www.postgresql.org/media/keys/ACCC4CF8.asc" \
"https://apt.postgresql.org/pub/repos/apt" \
"$SUITE" \
"main"
if ! $STD apt update; then
msg_warn "Failed to update PostgreSQL repository, falling back to native packages"
SUITE=""
fi
else
SUITE=""
fi
# If no repo or packages not installable, use native Debian packages
if [[ -z "$SUITE" ]] || ! apt-cache show "postgresql-${PG_VERSION}" 2>/dev/null | grep -q "Version:"; then
msg_info "Using native Debian packages for $DISTRO_CODENAME"
# Install ssl-cert dependency if available
if apt-cache search "^ssl-cert$" 2>/dev/null | grep -q .; then
$STD apt install -y ssl-cert 2>/dev/null || true
fi
if ! $STD apt install -y postgresql postgresql-client 2>/dev/null; then
msg_error "Failed to install native PostgreSQL packages"
return 1
fi
if ! command -v psql >/dev/null 2>&1; then
msg_error "PostgreSQL installed but psql command not found"
return 1
fi
# Restore database backup if we upgraded from previous version
if [[ -n "$CURRENT_PG_VERSION" ]]; then
msg_info "Restoring PostgreSQL databases from backup..."
$STD runuser -u postgres -- psql </var/lib/postgresql/backup_$(date +%F)_v${CURRENT_PG_VERSION}.sql 2>/dev/null || {
msg_warn "Failed to restore database backup - this may be expected for major version upgrades"
}
fi
$STD systemctl enable --now postgresql 2>/dev/null || true
# Get actual installed version
INSTALLED_VERSION="$(psql -V 2>/dev/null | awk '{print $3}' | cut -d. -f1)"
# Add PostgreSQL binaries to PATH
if ! grep -q '/usr/lib/postgresql' /etc/environment 2>/dev/null; then
echo 'PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/'"${INSTALLED_VERSION}"'/bin"' >/etc/environment
fi
cache_installed_version "postgresql" "$INSTALLED_VERSION"
msg_ok "Setup PostgreSQL $INSTALLED_VERSION (native)"
# Install optional modules if specified
if [[ -n "$PG_MODULES" ]]; then
IFS=',' read -ra MODULES <<<"$PG_MODULES"
for module in "${MODULES[@]}"; do
$STD apt install -y "postgresql-${INSTALLED_VERSION}-${module}" 2>/dev/null || true
done
fi
return 0
SUITE="bookworm-pgdg"
fi
;;
*)
@@ -4036,8 +3972,7 @@ function setup_postgresql_db() {
fi
# Save credentials
local app_name="${APPLICATION,,}"
local CREDS_FILE="${PG_DB_CREDS_FILE:-${HOME}/${app_name}.creds}"
local CREDS_FILE="${PG_DB_CREDS_FILE:-${HOME}/${APPLICATION}.creds}"
{
echo "PostgreSQL Credentials"
echo "Database: $PG_DB_NAME"
@@ -4406,63 +4341,31 @@ function setup_rust() {
}
export PATH="$CARGO_BIN:$PATH"
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >>"$HOME/.profile"
# Verify installation
if ! command -v rustc >/dev/null 2>&1; then
msg_error "Rust binary not found after installation"
return 1
fi
local RUST_VERSION=$(rustc --version 2>/dev/null | awk '{print $2}')
if [[ -z "$RUST_VERSION" ]]; then
msg_error "Failed to determine Rust version"
return 1
fi
cache_installed_version "rust" "$RUST_VERSION"
msg_ok "Setup Rust $RUST_VERSION"
else
# Scenario 2: Rustup already installed - update/maintain
msg_info "Update Rust ($RUST_TOOLCHAIN)"
# Ensure default toolchain is set
$STD rustup default "$RUST_TOOLCHAIN" 2>/dev/null || {
# If default fails, install the toolchain first
$STD rustup install "$RUST_TOOLCHAIN" || {
msg_error "Failed to install Rust toolchain $RUST_TOOLCHAIN"
return 1
}
$STD rustup default "$RUST_TOOLCHAIN" || {
msg_error "Failed to set default Rust toolchain"
return 1
}
}
# Update to latest patch version
$STD rustup update "$RUST_TOOLCHAIN" || true
# Ensure PATH is updated for current shell session
export PATH="$CARGO_BIN:$PATH"
local RUST_VERSION=$(rustc --version 2>/dev/null | awk '{print $2}')
if [[ -z "$RUST_VERSION" ]]; then
msg_error "Failed to determine Rust version after update"
$STD rustup install "$RUST_TOOLCHAIN" || {
msg_error "Failed to install Rust toolchain $RUST_TOOLCHAIN"
return 1
fi
}
$STD rustup default "$RUST_TOOLCHAIN" || {
msg_error "Failed to set default Rust toolchain"
return 1
}
$STD rustup update "$RUST_TOOLCHAIN" || true
local RUST_VERSION=$(rustc --version 2>/dev/null | awk '{print $2}')
cache_installed_version "rust" "$RUST_VERSION"
msg_ok "Update Rust $RUST_VERSION"
fi
# Install global crates
if [[ -n "$RUST_CRATES" ]]; then
msg_info "Processing Rust crates: $RUST_CRATES"
IFS=',' read -ra CRATES <<<"$RUST_CRATES"
for crate in "${CRATES[@]}"; do
crate=$(echo "$crate" | xargs) # trim whitespace
[[ -z "$crate" ]] && continue # skip empty entries
local NAME VER INSTALLED_VER CRATE_LIST
local NAME VER INSTALLED_VER
if [[ "$crate" == *"@"* ]]; then
NAME="${crate%@*}"
VER="${crate##*@}"
@@ -4471,50 +4374,18 @@ function setup_rust() {
VER=""
fi
# Get list of installed crates once
CRATE_LIST=$(cargo install --list 2>/dev/null || echo "")
# Check if already installed
if echo "$CRATE_LIST" | grep -q "^${NAME} "; then
INSTALLED_VER=$(echo "$CRATE_LIST" | grep "^${NAME} " | head -1 | awk '{print $2}' | tr -d 'v:')
INSTALLED_VER=$(cargo install --list 2>/dev/null | awk "/^$NAME v[0-9]/ {print \$2}" | tr -d 'v')
if [[ -n "$INSTALLED_VER" ]]; then
if [[ -n "$VER" && "$VER" != "$INSTALLED_VER" ]]; then
msg_info "Upgrading $NAME from v$INSTALLED_VER to v$VER"
$STD cargo install "$NAME" --version "$VER" --force || {
msg_error "Failed to install $NAME@$VER"
return 1
}
msg_ok "Upgraded $NAME to v$VER"
$STD cargo install "$NAME" --version "$VER" --force
elif [[ -z "$VER" ]]; then
msg_info "Upgrading $NAME to latest"
$STD cargo install "$NAME" --force || {
msg_error "Failed to upgrade $NAME"
return 1
}
local NEW_VER=$(cargo install --list 2>/dev/null | grep "^${NAME} " | head -1 | awk '{print $2}' | tr -d 'v:')
msg_ok "Upgraded $NAME to v$NEW_VER"
else
msg_ok "$NAME v$INSTALLED_VER already installed"
$STD cargo install "$NAME" --force
fi
else
msg_info "Installing $NAME${VER:+@$VER}"
if [[ -n "$VER" ]]; then
$STD cargo install "$NAME" --version "$VER" || {
msg_error "Failed to install $NAME@$VER"
return 1
}
msg_ok "Installed $NAME v$VER"
else
$STD cargo install "$NAME" || {
msg_error "Failed to install $NAME"
return 1
}
local NEW_VER=$(cargo install --list 2>/dev/null | grep "^${NAME} " | head -1 | awk '{print $2}' | tr -d 'v:')
msg_ok "Installed $NAME v$NEW_VER"
fi
$STD cargo install "$NAME" ${VER:+--version "$VER"}
fi
done
msg_ok "Processed Rust crates"
fi
}

View File

@@ -30,7 +30,6 @@ INSTALL_PATH="/usr/local/bin/filebrowser"
CONFIG_PATH="/usr/local/community-scripts/fq-config.yaml"
DEFAULT_PORT=8080
SRC_DIR="/"
TMP_BIN="/tmp/filebrowser.$$"
# Get primary IP
IFACE=$(ip -4 route | awk '/default/ {print $5; exit}')
@@ -110,9 +109,8 @@ if [[ -f "$INSTALL_PATH" ]]; then
read -r update_prompt
if [[ "${update_prompt,,}" =~ ^(y|yes)$ ]]; then
msg_info "Updating ${APP}"
curl -fsSL https://github.com/gtsteffaniak/filebrowser/releases/latest/download/linux-amd64-filebrowser -o "$TMP_BIN"
chmod +x "$TMP_BIN"
mv -f "$TMP_BIN" /usr/local/bin/filebrowser
curl -fsSL https://github.com/gtsteffaniak/filebrowser/releases/latest/download/linux-amd64-filebrowser -o "$INSTALL_PATH"
chmod +x "$INSTALL_PATH"
msg_ok "Updated ${APP}"
exit 0
else
@@ -135,9 +133,8 @@ fi
msg_info "Installing ${APP} on ${OS}"
$PKG_MANAGER curl ffmpeg &>/dev/null
curl -fsSL https://github.com/gtsteffaniak/filebrowser/releases/latest/download/linux-amd64-filebrowser -o "$TMP_BIN"
chmod +x "$TMP_BIN"
mv -f "$TMP_BIN" /usr/local/bin/filebrowser
curl -fsSL https://github.com/gtsteffaniak/filebrowser/releases/latest/download/linux-amd64-filebrowser -o "$INSTALL_PATH"
chmod +x "$INSTALL_PATH"
msg_ok "Installed ${APP}"
msg_info "Preparing configuration directory"