Compare commits

..

85 Commits

Author SHA1 Message Date
CanbiZ
df12ea77dd Refactor install scripts for consistency and cleanup
Standardized package installation commands to use 'apt install' instead of 'apt-get'. Replaced manual database setup with helper functions for PostgreSQL and MariaDB where applicable. Hardware acceleration setup is now handled by a shared function. Removed repetitive cleanup code and replaced with a single 'cleanup_lxc' call at the end of each script. Updated PHP version for FreshRSS and simplified repository setup for Fhem and Grafana. Fixed merge conflict in graylog-install.sh and removed unnecessary temporary file handling.
2025-11-12 15:26:21 +01:00
CanbiZ
edfeb4c507 Delete dashy.sh 2025-11-12 14:09:24 +01:00
Michel Roegl-Brunner
3c2603b5b1 Merge branch 'main' into deb13_g_to_d 2025-11-12 11:47:31 +01:00
CanbiZ
5d2d54368a Refactor install scripts and cleanup handling
Replaces manual apt cleanup commands with a unified cleanup_lxc function across install scripts. Updates apt-get to apt for package installation, improves repository setup logic, and standardizes service creation. Minor messaging and variable usage improvements for consistency.
2025-11-12 11:39:28 +01:00
CanbiZ
e5c3c19106 Update scripts for Debian 13 and improve update messages
Bump default OS version from Debian 12 to 13 across all container scripts. Standardize update messages to use explicit service names and success confirmations. Refactor update functions for consistency, improve error handling, and update package management commands to use 'apt' instead of 'apt-get'.
2025-11-12 11:14:37 +01:00
community-scripts-pr-app[bot]
91e9869be9 Update CHANGELOG.md (#9082)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 09:56:43 +00:00
CanbiZ
714c2e5888 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 10:56:18 +01:00
community-scripts-pr-app[bot]
9d8536047a Update CHANGELOG.md (#9081)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 09:52:34 +00:00
Tobias
fa3621ef56 Refactor: web-check (#9055) 2025-11-12 10:52:07 +01:00
community-scripts-pr-app[bot]
35b6e58d2c Update CHANGELOG.md (#9080)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 08:56:51 +00:00
CanbiZ
11ff178b91 openwebui: Python version usage | core: zsh completion install (#9079) 2025-11-12 09:56:24 +01:00
Karel Wintersky
1b6d26a903 Update livebook.json (#9070)
Fixed incorrect path to livebook.creds file
2025-11-12 09:01:19 +01:00
community-scripts-pr-app[bot]
cad3f716d2 Update CHANGELOG.md (#9078)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 07:55:12 +00:00
Tobias
02945a4455 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 08:54:46 +01:00
community-scripts-pr-app[bot]
00a7f5fbe1 Update CHANGELOG.md (#9077)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 06:38:43 +00:00
Bram
17354ca011 Refactor analytics to use Rybbit instead of Umami (#9072) 2025-11-12 07:38:16 +01:00
community-scripts-pr-app[bot]
e759335bfc Update CHANGELOG.md (#9074)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 00:14:57 +00:00
community-scripts-pr-app[bot]
1c09feabde Update versions.json (#9073)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-12 01:14:36 +01:00
community-scripts-pr-app[bot]
e150afa583 Update CHANGELOG.md (#9066)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 18:34:59 +00:00
community-scripts-pr-app[bot]
a770f27396 Update CHANGELOG.md (#9065)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 18:34:48 +00:00
community-scripts-pr-app[bot]
533650f434 Update date in json (#9064)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-11-11 18:34:38 +00:00
push-app-to-main[bot]
23587df184 'Add new script' (#9029) 2025-11-11 19:34:22 +01:00
community-scripts-pr-app[bot]
1893cb93d4 Update CHANGELOG.md (#9062)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 16:22:59 +00:00
CanbiZ
32cd65d5e1 Refactor: openHAB (#9060) 2025-11-11 17:22:34 +01:00
community-scripts-pr-app[bot]
681932c491 Update CHANGELOG.md (#9059)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 15:20:05 +00:00
CanbiZ
b8a9beb56a Fix JDK count variable initialization in setup_java (#9058) 2025-11-11 16:19:35 +01:00
CanbiZ
6cccb49363 qf: phpipham php8.3 2025-11-11 14:54:27 +01:00
community-scripts-pr-app[bot]
5adfc83281 Update versions.json (#9052)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 13:07:22 +01:00
community-scripts-pr-app[bot]
f099f472ce Update CHANGELOG.md (#9051)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 10:34:00 +00:00
CanbiZ
00b978df29 [docs / gh]: modernize README | Change Version Support in SECURITY.md | Shoutout to selfhst\icons (#9049) 2025-11-11 11:33:33 +01:00
Michel Roegl-Brunner
c054403325 Remove Dashy (#9050) 2025-11-11 11:32:44 +01:00
community-scripts-pr-app[bot]
45aec67359 Update CHANGELOG.md (#9048)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 09:19:43 +00:00
Tobias
774127eece flaresolverr: unpin - use latest version (#9046)
* revert: flaresolverr: latest update again

* Update FlareSolverr installation to use latest version

* fix
2025-11-11 10:19:23 +01:00
community-scripts-pr-app[bot]
d85e72fd0f Update CHANGELOG.md (#9045)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 06:54:27 +00:00
Slaviša Arežina
4a5a0e3966 Upgrade RAM (#9039) 2025-11-11 07:54:06 +01:00
community-scripts-pr-app[bot]
ec2726dff5 Update CHANGELOG.md (#9043)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 00:14:32 +00:00
community-scripts-pr-app[bot]
bf50900fdf Update versions.json (#9042)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-11 01:14:11 +01:00
community-scripts-pr-app[bot]
57af58d634 Update CHANGELOG.md (#9037)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 19:40:37 +00:00
Matt17000
0b2b13c79a Update plex.sh (#9036) 2025-11-10 20:40:14 +01:00
community-scripts-pr-app[bot]
508eb70d13 Update CHANGELOG.md (#9032)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 17:56:27 +00:00
CanbiZ
e90353f20b Refactor: phpIPAM (#9027) 2025-11-10 18:55:56 +01:00
community-scripts-pr-app[bot]
37fc378024 Update CHANGELOG.md (#9031)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 17:51:27 +00:00
CanbiZ
b1d782dec6 Add helper functions for MariaDB and PostgreSQL setup (#9026) 2025-11-10 18:51:02 +01:00
CanbiZ
ef9a008d2a 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-10 13:58:04 +01:00
community-scripts-pr-app[bot]
de07b62cff Update CHANGELOG.md (#9024)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 12:23:26 +00:00
CanbiZ
8b30ed74df core: update message for no available updates scenario (if pinned) (#9021) 2025-11-10 13:22:59 +01:00
community-scripts-pr-app[bot]
53e6422ee3 Update versions.json (#9023)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 13:08:03 +01:00
community-scripts-pr-app[bot]
257e89cc5c Update CHANGELOG.md (#9022)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 12:07:09 +00:00
CanbiZ
26090bad32 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-10 13:06:44 +01:00
CanbiZ
787a99fc27 Fix consumption directory retrieval in script 2025-11-10 11:53:55 +01:00
Slaviša Arežina
0b122749b7 Update website (#8971) 2025-11-10 08:39:56 +01:00
community-scripts-pr-app[bot]
48c9a16673 Update CHANGELOG.md (#9016)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 00:14:04 +00:00
community-scripts-pr-app[bot]
9bf67982e3 Update versions.json (#9015)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-10 01:13:38 +01:00
community-scripts-pr-app[bot]
008c037cf7 Update CHANGELOG.md (#9011)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 17:32:52 +00:00
akileos
0ab91cc4c1 Add wkhtmltopdf to Odoo installation dependencies (#9010)
Required for invoice/ticket generation
2025-11-09 18:32:33 +01:00
community-scripts-pr-app[bot]
dfa05f3845 Update CHANGELOG.md (#9009)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 15:55:50 +00:00
chrikodo
a3d42dba45 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-09 07:55:29 -08:00
community-scripts-pr-app[bot]
a89b841684 Update CHANGELOG.md (#9008)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 15:39:04 +00:00
Sven Schneider
88097dcd19 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-09 07:38:40 -08:00
community-scripts-pr-app[bot]
1a76fc0095 Update CHANGELOG.md (#9005)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 14:43:01 +00:00
Chris
69c2e9ed2c Paperless-ngx: hotfix config path (#9003) 2025-11-09 15:42:40 +01:00
community-scripts-pr-app[bot]
9d876e2d06 Update CHANGELOG.md (#9001)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 13:46:27 +00:00
CanbiZ
c0c5fd4532 core: improve log cleaning (#8999)
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-11-09 14:46:09 +01:00
community-scripts-pr-app[bot]
0e7be1dd1e Update versions.json (#9000)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 13:05:35 +01:00
community-scripts-pr-app[bot]
6e349dbcef Update CHANGELOG.md (#8997)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 07:34:14 +00:00
Chris
9b3879ef41 Paperless-NGX: Move config backup outside of app folder (#8996) 2025-11-08 23:33:51 -08:00
community-scripts-pr-app[bot]
e21ea05ddc Update CHANGELOG.md (#8994)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 00:15:19 +00:00
community-scripts-pr-app[bot]
40aeab4e38 Update versions.json (#8993)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-09 01:14:57 +01:00
community-scripts-pr-app[bot]
7f91bff501 Update CHANGELOG.md (#8992)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 20:55:33 +00:00
CanbiZ
540194e29a paperless: refactor - remove backup after update and enable clean install (#8988) 2025-11-08 21:55:13 +01:00
CanbiZ
ac7db35a59 fix unbound $6 in deb822 2025-11-08 20:48:54 +01:00
community-scripts-pr-app[bot]
5a71b1389f Update CHANGELOG.md (#8989)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 19:12:09 +00:00
CanbiZ
e8846642ef 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-08 20:11:45 +01:00
community-scripts-pr-app[bot]
8cb1675f89 Update CHANGELOG.md (#8985)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 17:26:43 +00:00
Slaviša Arežina
a4ccf7d1b0 Technitium DNS: Fix update (#8980)
* Fix update

* Update technitiumdns-install.sh
2025-11-08 18:26:19 +01:00
community-scripts-pr-app[bot]
db29b241a9 Update CHANGELOG.md (#8982)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 15:56:35 +00:00
Chris
528575f737 MediaManager: add LOG_FILE to start.sh script; fix BASE_PATH and PUBLIC_API_URL (#8981) 2025-11-08 16:56:08 +01:00
community-scripts-pr-app[bot]
ac05febbbd Update versions.json (#8979)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 13:05:24 +01:00
community-scripts-pr-app[bot]
bd8f8e6a0d Update CHANGELOG.md (#8974)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 11:15:14 +00:00
Slaviša Arežina
0fb4e4ad8c Fix update (#8972) 2025-11-08 03:14:48 -08:00
community-scripts-pr-app[bot]
5d381910a3 Update CHANGELOG.md (#8973)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 10:40:55 +00:00
Slaviša Arežina
9f0720dc91 Fix (#8969) 2025-11-08 02:40:27 -08:00
community-scripts-pr-app[bot]
85456ff3f3 Update CHANGELOG.md (#8966)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-08 05:57:49 +00:00
Lulo Dev
822ea4b267 Set TZ=Etc/UTC in Ghostfolio installation script when configuring environment variables (#8961) 2025-11-07 21:57:23 -08:00
CanbiZ
66409ac1cf Update grocy.sh 2025-10-23 16:29:21 +02:00
207 changed files with 2094 additions and 1817 deletions

View File

@@ -10,8 +10,101 @@
> [!CAUTION] > [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes. Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-11-12
### 🚀 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
- Refactor: evcc [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9057](https://github.com/community-scripts/ProxmoxVE/pull/9057))
- #### ✨ New Features
- Bump K to H-Scripts to Debian 13 (Trixie) [@MickLesk](https://github.com/MickLesk) ([#8597](https://github.com/community-scripts/ProxmoxVE/pull/8597))
- #### 🔧 Refactor
- Refactor: web-check [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9055](https://github.com/community-scripts/ProxmoxVE/pull/9055))
### 🌐 Website
- Refactor web analytics to use Rybbit instead of Umami [@BramSuurdje](https://github.com/BramSuurdje) ([#9072](https://github.com/community-scripts/ProxmoxVE/pull/9072))
## 2025-11-11
### 🆕 New Scripts
- Domain-Monitor ([#9029](https://github.com/community-scripts/ProxmoxVE/pull/9029))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- tools.func: fix JDK count variable initialization in setup_java [@MickLesk](https://github.com/MickLesk) ([#9058](https://github.com/community-scripts/ProxmoxVE/pull/9058))
- flaresolverr: unpin - use latest version [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9046](https://github.com/community-scripts/ProxmoxVE/pull/9046))
- Part-DB: Increase amount of RAM [@tremor021](https://github.com/tremor021) ([#9039](https://github.com/community-scripts/ProxmoxVE/pull/9039))
- #### 🔧 Refactor
- Refactor: openHAB [@MickLesk](https://github.com/MickLesk) ([#9060](https://github.com/community-scripts/ProxmoxVE/pull/9060))
### 🧰 Maintenance
- #### 📂 Github
- [docs / gh]: modernize README | Change Version Support in SECURITY.md | Shoutout to selfhst\icons [@MickLesk](https://github.com/MickLesk) ([#9049](https://github.com/community-scripts/ProxmoxVE/pull/9049))
## 2025-11-10
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Plex: extend checking for deb822 source [@Matt17000](https://github.com/Matt17000) ([#9036](https://github.com/community-scripts/ProxmoxVE/pull/9036))
- #### ✨ New Features
- tools.func: add helper functions for MariaDB and PostgreSQL setup [@MickLesk](https://github.com/MickLesk) ([#9026](https://github.com/community-scripts/ProxmoxVE/pull/9026))
- core: update message for no available updates scenario (if pinned) [@MickLesk](https://github.com/MickLesk) ([#9021](https://github.com/community-scripts/ProxmoxVE/pull/9021))
- Migrate Open WebUI to uv-based installation [@MickLesk](https://github.com/MickLesk) ([#9019](https://github.com/community-scripts/ProxmoxVE/pull/9019))
- #### 🔧 Refactor
- Refactor: phpIPAM [@MickLesk](https://github.com/MickLesk) ([#9027](https://github.com/community-scripts/ProxmoxVE/pull/9027))
## 2025-11-09
### 🚀 Updated Scripts
- core: improve log cleaning [@MickLesk](https://github.com/MickLesk) ([#8999](https://github.com/community-scripts/ProxmoxVE/pull/8999))
- #### 🐞 Bug Fixes
- Add wkhtmltopdf to Odoo installation dependencies [@akileos](https://github.com/akileos) ([#9010](https://github.com/community-scripts/ProxmoxVE/pull/9010))
- fix(jotty): Comments removed from variables, as they are interpreted. [@schneider-de-com](https://github.com/schneider-de-com) ([#9002](https://github.com/community-scripts/ProxmoxVE/pull/9002))
- fix(n8n): Add python3-setuptools dependency for Debian 13 [@chrikodo](https://github.com/chrikodo) ([#9007](https://github.com/community-scripts/ProxmoxVE/pull/9007))
- Paperless-ngx: hotfix config path [@vhsdream](https://github.com/vhsdream) ([#9003](https://github.com/community-scripts/ProxmoxVE/pull/9003))
- Paperless-NGX: Move config backup outside of app folder [@vhsdream](https://github.com/vhsdream) ([#8996](https://github.com/community-scripts/ProxmoxVE/pull/8996))
## 2025-11-08 ## 2025-11-08
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Technitium DNS: Fix update [@tremor021](https://github.com/tremor021) ([#8980](https://github.com/community-scripts/ProxmoxVE/pull/8980))
- MediaManager: add LOG_FILE to start.sh script; fix BASE_PATH and PUBLIC_API_URL [@vhsdream](https://github.com/vhsdream) ([#8981](https://github.com/community-scripts/ProxmoxVE/pull/8981))
- Firefly: Fix missing command in update script [@tremor021](https://github.com/tremor021) ([#8972](https://github.com/community-scripts/ProxmoxVE/pull/8972))
- MongoDB: Remove unused message [@tremor021](https://github.com/tremor021) ([#8969](https://github.com/community-scripts/ProxmoxVE/pull/8969))
- Set TZ=Etc/UTC in Ghostfolio installation script [@LuloDev](https://github.com/LuloDev) ([#8961](https://github.com/community-scripts/ProxmoxVE/pull/8961))
- #### 🔧 Refactor
- paperless: refactor - remove backup after update and enable clean install [@MickLesk](https://github.com/MickLesk) ([#8988](https://github.com/community-scripts/ProxmoxVE/pull/8988))
- Refactor setup_deb822_repo for optional architectures [@MickLesk](https://github.com/MickLesk) ([#8983](https://github.com/community-scripts/ProxmoxVE/pull/8983))
## 2025-11-07 ## 2025-11-07
### 🆕 New Scripts ### 🆕 New Scripts

274
README.md
View File

@@ -1,98 +1,247 @@
<div align="center"> <div align="center">
<p align="center"> <img src="https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png" height="120px" alt="Proxmox VE Helper-Scripts Logo" />
<a href="#">
<img src="https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png" height="100px" />
</a>
</p>
</div>
<div style="border: 2px solid #d1d5db; padding: 20px; border-radius: 8px; background-color: #f9fafb;"> <h1>Proxmox VE Helper-Scripts</h1>
<h2 align="center">Proxmox VE Helper-Scripts</h2> <p><em>A Community Legacy in Memory of @tteck</em></p>
<p align="center">A Community Legacy in Memory of @tteck</p>
<p align="center"> <p>
<a href="https://helper-scripts.com"> <a href="https://helper-scripts.com">
<img src="https://img.shields.io/badge/Website-4c9b3f?style=for-the-badge&logo=github&logoColor=white" alt="Website" /> <img src="https://img.shields.io/badge/🌐_Website-Visit-4c9b3f?style=for-the-badge&labelColor=2d3748" alt="Website" />
</a> </a>
<a href="https://discord.gg/3AnUqsXnmK"> <a href="https://discord.gg/3AnUqsXnmK">
<img src="https://img.shields.io/badge/Discord-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" /> <img src="https://img.shields.io/badge/💬_Discord-Join-7289da?style=for-the-badge&labelColor=2d3748" alt="Discord" />
</a> </a>
<a href="https://ko-fi.com/community_scripts"> <a href="https://ko-fi.com/community_scripts">
<img src="https://img.shields.io/badge/Support-FF5F5F?style=for-the-badge&logo=ko-fi&logoColor=white" alt="Donate" /> <img src="https://img.shields.io/badge/_Support-Donate-FF5F5F?style=for-the-badge&labelColor=2d3748" alt="Donate" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTOR_AND_GUIDES/CONTRIBUTING.md">
<img src="https://img.shields.io/badge/Contribute-ff4785?style=for-the-badge&logo=git&logoColor=white" alt="Contribute" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTOR_AND_GUIDES/USER_SUBMITTED_GUIDES.md">
<img src="https://img.shields.io/badge/Guides-0077b5?style=for-the-badge&logo=read-the-docs&logoColor=white" alt="Guides" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md">
<img src="https://img.shields.io/badge/Changelog-6c5ce7?style=for-the-badge&logo=git&logoColor=white" alt="Changelog" />
</a> </a>
</p> </p>
<p>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTOR_AND_GUIDES/CONTRIBUTING.md">
<img src="https://img.shields.io/badge/🤝_Contribute-Guidelines-ff4785?style=for-the-badge&labelColor=2d3748" alt="Contribute" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTOR_AND_GUIDES/USER_SUBMITTED_GUIDES.md">
<img src="https://img.shields.io/badge/📚_Guides-Read-0077b5?style=for-the-badge&labelColor=2d3748" alt="Guides" />
</a>
<a href="https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md">
<img src="https://img.shields.io/badge/📋_Changelog-View-6c5ce7?style=for-the-badge&labelColor=2d3748" alt="Changelog" />
</a>
</p>
<br />
> **Simplify your Proxmox VE setup with community-driven automation scripts**
> Originally created by tteck, now maintained and expanded by the community
</div>
<br />
<div align="center">
<sub>🙌 <strong>Shoutout to</strong></sub>
<br />
<br />
<a href="https://selfh.st/">
<img src="https://img.shields.io/badge/selfh.st-Icons_for_Self--Hosted-2563eb?style=for-the-badge&logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMkM2LjQ4IDIgMiA2LjQ4IDIgMTJzNC40OCAxMCAxMCAxMCAxMC00LjQ4IDEwLTEwUzE3LjUyIDIgMTIgMnptMCAxOGMtNC40MSAwLTgtMy41OS04LThzMy41OS04IDgtOCA4IDMuNTkgOCA4LTMuNTkgOC04IDh6IiBmaWxsPSJ3aGl0ZSIvPjwvc3ZnPg==&labelColor=1e3a8a" alt="selfh.st Icons" />
</a>
<br />
<sub><a href="https://github.com/selfhst/icons">View on GitHub</a> • Consistent, beautiful icons for 5000+ self-hosted apps</sub>
</div> </div>
--- ---
## 🚀 Project Overview ## 🎯 Key Features
**Proxmox VE Helper-Scripts** is a collection of tools to simplify the setup and management of Proxmox Virtual Environment (VE). Originally created by [tteck](https://github.com/tteck), these scripts are now continued by the community. Our goal is to preserve and expand upon tteck's work, providing an ongoing resource for Proxmox users worldwide. <div align="center">
<table>
<tr>
<td align="center" width="25%">
<h3>⚡ Quick Setup</h3>
<p>One-command installations for popular services and containers</p>
</td>
<td align="center" width="25%">
<h3>⚙️ Flexible Config</h3>
<p>Simple mode for beginners, advanced options for power users</p>
</td>
<td align="center" width="25%">
<h3>🔄 Auto Updates</h3>
<p>Keep your installations current with built-in update mechanisms</p>
</td>
<td align="center" width="25%">
<h3>🛠️ Easy Management</h3>
<p>Post-install scripts for configuration and troubleshooting</p>
</td>
</tr>
<tr>
<td align="center" width="25%">
<h3>👥 Community Driven</h3>
<p>Actively maintained with contributions from users worldwide</p>
</td>
<td align="center" width="25%">
<h3>📖 Well Documented</h3>
<p>Comprehensive guides and community support</p>
</td>
<td align="center" width="25%">
<h3>🔒 Secure</h3>
<p>Regular security updates and best practices</p>
</td>
<td align="center" width="25%">
<h3>⚡ Performance</h3>
<p>Optimized configurations for best performance</p>
</td>
</tr>
</table>
</div>
--- ---
## 📦 Features ## 📋 Requirements
- **Interactive Setup**: Choose between simple and advanced options for configuring VMs and LXC containers. <div align="center">
- **Customizable Configurations**: Advanced setup for fine-tuning your environment.
- **Seamless Integration**: Works seamlessly with Proxmox VE for a smooth experience.
- **Community-driven**: Actively maintained and improved by the Proxmox community.
--- <table>
## ✅ Requirements <tr>
<td align="center" width="33%">
<h3>🖥️ Proxmox VE</h3>
<p>Version 8.4.x or 9.0.x</p>
</td>
<td align="center" width="33%">
<h3>🐧 Operating System</h3>
<p>Debian-based with Proxmox Tools</p>
</td>
<td align="center" width="33%">
<h3>🌐 Network</h3>
<p>Internet connection required</p>
</td>
</tr>
</table>
Ensure your system meets the following prerequisites: </div>
- **Proxmox VE version**: 8.x or higher
- **Linux**: Compatible with most distributions
- **Dependencies**: bash and curl should be installed.
--- ---
## 🚀 Installation ## 📥 Getting Started
To install the Proxmox Helper Scripts, follow these steps: Choose your preferred installation method:
1. Visit the [Website](https://helper-scripts.com/). ### Method 1: One-Click Web Installer
2. Search for the desired script, e.g., **"Home Assistant OS VM"**.
3. Copy the provided **Bash command** from the **"How To Install"** section. The fastest way to get started:
4. Open the Proxmox shell on your **main node** and paste the command.
5. Press enter to start the installation! 🚀 1. Visit **[helper-scripts.com](https://helper-scripts.com/)** 🌐
2. Search for your desired script (e.g., "Home Assistant", "Docker")
3. Copy the bash command displayed on the script page
4. Open your **Proxmox Shell** and paste the command
5. Press Enter and follow the interactive prompts
### Method 2: PVEScripts-Local
Install a convenient script manager directly in your Proxmox UI:
```bash
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/pve-scripts-local.sh)"
```
This adds a menu to your Proxmox interface for easy script access without visiting the website.
📖 **Learn more:** [ProxmoxVE-Local Repository](https://github.com/community-scripts/ProxmoxVE-Local)
--- ---
## ❤️ Community and Contributions ## 💬 Join the Community
We appreciate any contributions to the project—whether it's bug reports, feature requests, documentation improvements, or spreading the word. Your involvement helps keep the project alive and sustainable. <div align="center">
## 💖 Donate to Support the Project <table>
- **Ko-Fi for Community Edition**: [Donate to support this project](https://ko-fi.com/community_scripts) Donations go towards maintaining the project, testing infrastructure, and charity (cancer research, hospice care). 30% of the funds will be donated to charity. <tr>
<td align="center" width="33%">
<h3>💬 Discord</h3>
<p>Real-time chat, support, and discussions</p>
<a href="https://discord.gg/3AnUqsXnmK">
<img src="https://img.shields.io/badge/Join-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" />
</a>
</td>
<td align="center" width="33%">
<h3>💭 Discussions</h3>
<p>Feature requests, Q&A, and ideas</p>
<a href="https://github.com/community-scripts/ProxmoxVE/discussions">
<img src="https://img.shields.io/badge/Discuss-238636?style=for-the-badge&logo=github&logoColor=white" alt="Discussions" />
</a>
</td>
<td align="center" width="33%">
<h3>🐛 Issues</h3>
<p>Bug reports and issue tracking</p>
<a href="https://github.com/community-scripts/ProxmoxVE/issues">
<img src="https://img.shields.io/badge/Report-d73a4a?style=for-the-badge&logo=github&logoColor=white" alt="Issues" />
</a>
</td>
</tr>
</table>
</div>
--- ---
## 💬 Get Help ## 🛠️ Contribute
Join our community for support: <div align="center">
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/3AnUqsXnmK) for real-time support. <table>
- **GitHub Discussions**: [Ask questions or report issues](https://github.com/community-scripts/ProxmoxVE/discussions). <tr>
<td align="center" width="25%">
<h3>💻 Code</h3>
<p>Add new scripts or improve existing ones</p>
</td>
<td align="center" width="25%">
<h3>📝 Documentation</h3>
<p>Write guides, improve READMEs, translate content</p>
</td>
<td align="center" width="25%">
<h3>🧪 Testing</h3>
<p>Test scripts and report compatibility issues</p>
</td>
<td align="center" width="25%">
<h3>💡 Ideas</h3>
<p>Suggest features or workflow improvements</p>
</td>
</tr>
</table>
## 🤝 Report a Bug or Feature Request </div>
If you encounter any issues or have suggestions for improvement, file a new issue on our [GitHub issues page](https://github.com/community-scripts/ProxmoxVE/issues). You can also submit pull requests with solutions or enhancements! <div align="center">
<br />
👉 Check our **[Contributing Guidelines](https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTOR_AND_GUIDES/CONTRIBUTING.md)** to get started
</div>
--- ---
## ⭐ Star History ## ❤️ Support the Project
This project is maintained by volunteers in memory of tteck. Your support helps us maintain infrastructure, improve documentation, and give back to important causes.
**🎗️ 30% of all donations go directly to cancer research and hospice care**
<div align="center">
<a href="https://ko-fi.com/community_scripts">
<img src="https://img.shields.io/badge/☕_Buy_us_a_coffee-Support_on_Ko--fi-FF5F5F?style=for-the-badge&labelColor=2d3748" alt="Support on Ko-fi" />
</a>
<br />
<sub>Every contribution helps keep this project alive and supports meaningful causes</sub>
</div>
---
## 📈 Project Growth
<div align="center">
<a href="https://star-history.com/#community-scripts/ProxmoxVE&Date"> <a href="https://star-history.com/#community-scripts/ProxmoxVE&Date">
<picture> <picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=community-scripts/ProxmoxVE&type=Date&theme=dark" /> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=community-scripts/ProxmoxVE&type=Date&theme=dark" />
@@ -100,15 +249,18 @@ If you encounter any issues or have suggestions for improvement, file a new issu
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=community-scripts/ProxmoxVE&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=community-scripts/ProxmoxVE&type=Date" />
</picture> </picture>
</a> </a>
</div>
---
## 📜 License ## 📜 License
This project is licensed under the [MIT License](LICENSE). This project is licensed under the **[MIT License](LICENSE)** - feel free to use, modify, and distribute.
</br>
</br>
<p align="center">
<i style="font-size: smaller;"><b>Proxmox</b>® is a registered trademark of <a href="https://www.proxmox.com/en/about/company">Proxmox Server Solutions GmbH</a>.</i>
</p>
---
<div align="center">
<sub>Made with ❤️ by the Proxmox community in memory of tteck</sub>
<br />
<sub><i>Proxmox® is a registered trademark of <a href="https://www.proxmox.com/en/about/company">Proxmox Server Solutions GmbH</a></i></sub>
</div>

View File

@@ -8,13 +8,15 @@ This project currently supports the following versions of Proxmox VE (PVE):
| ------- | ------------------ | | ------- | ------------------ |
| 9.0.x | :white_check_mark: | | 9.0.x | :white_check_mark: |
| 8.4.x | :white_check_mark: | | 8.4.x | :white_check_mark: |
| 8.3.x | :white_check_mark: | | 8.3.x | Limited support* ❕ |
| 8.2.x | :white_check_mark: | | 8.2.x | Limited support* ❕ |
| 8.1.x | :white_check_mark: | | 8.1.x | Limited support* ❕ |
| 8.0.x | Limited support* ❕ | | 8.0.x | Limited support* ❕ |
| < 8.0 | :x: | | < 8.0 | :x: |
*Version 8.0.x has limited support. Security updates may not be provided for all issues affecting this version. *Version 8.0.x - 8.3.x has limited support. Security updates may not be provided for all issues affecting this version.
*Debian 13 Containers may fail to install. You can write var_version=12 before the bash call.
--- ---

View File

@@ -1,77 +0,0 @@
#!/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)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://dashy.to/
APP="Dashy"
var_tags="${var_tags:-dashboard}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}"
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/dashy/public/ ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "dashy" "Lissy93/dashy"; then
msg_info "Stopping Service"
systemctl stop dashy
msg_ok "Stopped Service"
msg_info "Backing up conf.yml"
cd ~
if [[ -f /opt/dashy/public/conf.yml ]]; then
cp -R /opt/dashy/public/conf.yml conf.yml
else
cp -R /opt/dashy/user-data/conf.yml conf.yml
fi
msg_ok "Backed up conf.yml"
rm -rf /opt/dashy
fetch_and_deploy_gh_release "dashy" "Lissy93/dashy"
msg_info "Updating ${APP}"
cd /opt/dashy
npm install
npm run build
msg_ok "Updated ${APP}"
msg_info "Restoring conf.yml"
cd ~
cp -R conf.yml /opt/dashy/user-data
msg_ok "Restored conf.yml"
msg_info "Cleaning"
rm -rf conf.yml /opt/dashy/public/conf.yml
msg_ok "Cleaned"
msg_info "Starting Dashy"
systemctl start dashy
msg_ok "Started Dashy"
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}:4000${CL}"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-18}" var_disk="${var_disk:-18}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -27,12 +27,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
msg_info "Updating Dockge"
cd /opt/dockge
$STD docker compose pull
$STD docker compose up -d
msg_ok "Updated Dockge"
msg_ok "Updated successfully"
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
cd /opt/dockge cd /opt/dockge
$STD docker compose pull $STD docker compose pull
$STD docker compose up -d $STD docker compose up -d
msg_ok "Updated ${APP}" msg_ok "Updated ${APP}"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -12,6 +12,7 @@ var_ram="${var_ram:-4096}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
variables variables
@@ -44,18 +45,22 @@ function update_script() {
fetch_and_deploy_gh_release "docmost" "docmost/docmost" fetch_and_deploy_gh_release "docmost" "docmost/docmost"
msg_info "Updating ${APP}" msg_info "Updating Docmost"
cd /opt/docmost cd /opt/docmost
mv /opt/.env /opt/docmost/.env mv /opt/.env /opt/docmost/.env
mv /opt/data /opt/docmost/data mv /opt/data /opt/docmost/data
$STD pnpm install --force $STD pnpm install --force
$STD pnpm build $STD pnpm build
msg_ok "Updated ${APP}" msg_ok "Updated Docmost"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start docmost systemctl start docmost
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

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

67
ct/domain-monitor.sh Normal file
View File

@@ -0,0 +1,67 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/Hosteroid/domain-monitor
APP="Domain-Monitor"
var_tags="${var_tags:-proxy}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/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
}
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

@@ -20,6 +20,13 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
<<<<<<< HEAD
header_info
check_container_storage
check_container_resources
if [[ ! -d /var/www ]]; then
msg_error "No ${APP} Installation Found!"
=======
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
@@ -31,6 +38,13 @@ function update_script() {
$STD apt-get update $STD apt-get update
$STD apt-get -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit
fi
msg_info "Updating ${APP} LXC"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated Successfully"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -31,14 +31,22 @@ function update_script() {
if check_for_gh_release "duplicati" "duplicati/duplicati"; then if check_for_gh_release "duplicati" "duplicati/duplicati"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop duplicati systemctl stop duplicati
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb" fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start duplicati systemctl start duplicati
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -32,9 +32,9 @@ function update_script() {
msg_info "Removing old EMQX" msg_info "Removing old EMQX"
if dpkg -l | grep -q "^ii\s\+emqx\s"; then if dpkg -l | grep -q "^ii\s\+emqx\s"; then
$STD apt-get remove --purge -y emqx $STD apt remove --purge -y emqx
elif dpkg -l | grep -q "^ii\s\+emqx-enterprise\s"; then elif dpkg -l | grep -q "^ii\s\+emqx-enterprise\s"; then
$STD apt-get remove --purge -y emqx-enterprise $STD apt remove --purge -y emqx-enterprise
else else
msg_ok "No old EMQX package found" msg_ok "No old EMQX package found"
fi fi
@@ -46,11 +46,17 @@ function update_script() {
msg_ok "Downloaded EMQX" msg_ok "Downloaded EMQX"
msg_info "Installing EMQX" msg_info "Installing EMQX"
$STD apt-get install -y "$DEB_FILE" $STD apt install -y "$DEB_FILE"
echo "$RELEASE" >~/.emqx
rm -f "$DEB_FILE"
msg_ok "Installed EMQX v${RELEASE}" msg_ok "Installed EMQX v${RELEASE}"
msg_info "Starting EMQX" msg_info "Starting Service"
systemctl start emqx systemctl start emqx
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
echo "$RELEASE" >~/.emqx echo "$RELEASE" >~/.emqx
msg_ok "Started EMQX" msg_ok "Started EMQX"
@@ -58,6 +64,7 @@ function update_script() {
rm -f "$DEB_FILE" rm -f "$DEB_FILE"
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
else else
msg_ok "No update required. EMQX is already at v${RELEASE}" msg_ok "No update required. EMQX is already at v${RELEASE}"
fi fi

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-5}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -27,23 +27,28 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "ersatztv" "ErsatzTV/ErsatzTV"; then if check_for_gh_release "ersatztv" "ErsatzTV/ErsatzTV"; then
msg_info "Stopping ErsatzTV" msg_info "Stopping Service"
systemctl stop ersatzTV systemctl stop ersatzTV
msg_ok "Stopped ErsatzTV" msg_ok "Stopped Service"
fetch_and_deploy_gh_release "ersatztv" "ErsatzTV/ErsatzTV" "prebuild" "latest" "/opt/ErsatzTV" "*linux-x64.tar.gz" fetch_and_deploy_gh_release "ersatztv" "ErsatzTV/ErsatzTV" "prebuild" "latest" "/opt/ErsatzTV" "*linux-x64.tar.gz"
msg_info "Starting ErsatzTV" msg_info "Starting Service"
systemctl start ersatzTV systemctl start ersatzTV
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "ErsatzTV Updated successfully"
=======
msg_ok "Started ErsatzTV" msg_ok "Started ErsatzTV"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then
msg_info "Stopping ErsatzTV" msg_info "Stopping Service"
systemctl stop ersatzTV systemctl stop ersatzTV
msg_ok "Stopped ErsatzTV" msg_ok "Stopped Service"
fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz" fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz"
@@ -54,10 +59,15 @@ function update_script() {
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/local/bin/ffprobe ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/local/bin/ffprobe
msg_ok "ffmpeg links set" msg_ok "ffmpeg links set"
msg_info "Starting ErsatzTV" msg_info "Starting Service"
systemctl start ersatzTV systemctl start ersatzTV
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "ErsatzTV-ffmpeg Updated successfully"
=======
msg_ok "Started ErsatzTV" msg_ok "Started ErsatzTV"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -81,7 +81,11 @@ EOF
msg_info "Starting Service" msg_info "Starting Service"
systemctl start esphomeDashboard systemctl start esphomeDashboard
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -23,10 +23,30 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -f /etc/apt/sources.list.d/evcc-stable.list ]]; then if ! command -v evcc >/dev/null 2>&1; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit 1
<<<<<<< HEAD
fi fi
if [[ -f /etc/apt/sources.list.d/evcc-stable.list ]]; then
setup_deb822_repo \
"evcc-stable" \
"https://dl.evcc.io/public/evcc/stable/gpg.EAD5D0E07B0EC0FD.key" \
"https://dl.evcc.io/public/evcc/stable/deb/debian/" \
"$(get_os_info codename)" \
"main"
=======
>>>>>>> main
fi
if [[ -f /etc/apt/sources.list.d/evcc-stable.list ]]; then
setup_deb822_repo \
"evcc-stable" \
"https://dl.evcc.io/public/evcc/stable/gpg.EAD5D0E07B0EC0FD.key" \
"https://dl.evcc.io/public/evcc/stable/deb/debian/" \
"$(get_os_info codename)" \
"main"
msg_info "Updating evcc LXC" msg_info "Updating evcc LXC"
$STD apt update $STD apt update
$STD apt --only-upgrade install -y evcc $STD apt --only-upgrade install -y evcc

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}" var_ram="${var_ram:-3072}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -31,20 +31,28 @@ function update_script() {
if check_for_gh_release "excalidraw" "excalidraw/excalidraw"; then if check_for_gh_release "excalidraw" "excalidraw/excalidraw"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop excalidraw systemctl stop excalidraw
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
rm -rf /opt/excalidraw rm -rf /opt/excalidraw
fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw" fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
msg_info "Updating $APP" msg_info "Updating Excalidraw"
cd /opt/excalidraw cd /opt/excalidraw
$STD yarn $STD yarn
msg_ok "Updated $APP" msg_ok "Updated Excalidraw"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start excalidraw systemctl start excalidraw
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -20,6 +20,13 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
<<<<<<< HEAD
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/fhem.service ]]; then
msg_error "No ${APP} Installation Found!"
=======
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
@@ -31,6 +38,13 @@ function update_script() {
$STD apt-get update $STD apt-get update
$STD apt-get -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit
fi
msg_info "Updating ${APP} LXC"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated Successfully"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,27 +28,27 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
if ! [[ $(dpkg -s jq 2>/dev/null) ]]; then
$STD apt-get update
$STD apt-get install -y jq
fi
update_available=$(curl -fsSL -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable) update_available=$(curl -fsSL -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable)
if [[ "${update_available}" == "true" ]]; then if [[ "${update_available}" == "true" ]]; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop fileflows systemctl stop fileflows
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
msg_info "Creating Backup" msg_info "Creating Backup"
backup_filename="/opt/${APP}_backup_$(date +%F).tar.gz" backup_filename="/opt/${APP}_backup_$(date +%F).tar.gz"
tar -czf "$backup_filename" -C /opt/fileflows Data tar -czf "$backup_filename" -C /opt/fileflows Data
msg_ok "Backup Created" msg_ok "Backup Created"
msg_info "Updating $APP to latest version" msg_info "Updating FileFlows"
temp_file=$(mktemp) temp_file=$(mktemp)
curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file" curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
$STD unzip -o -d /opt/fileflows "$temp_file" $STD unzip -o -d /opt/fileflows "$temp_file"
msg_ok "Updated $APP to latest version" msg_ok "Updated FileFlows"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start fileflows systemctl start fileflows
@@ -58,11 +58,14 @@ function update_script() {
rm -rf "$temp_file" rm -rf "$temp_file"
rm -rf "$backup_filename" rm -rf "$backup_filename"
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
else else
msg_ok "No update required. ${APP} is already at latest version" msg_ok "No update required. ${APP} is already at latest version"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -41,7 +41,7 @@ function update_script() {
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip" fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
setup_composer setup_composer
msg_info "Updating ${APP}" msg_info "Updating Firefly"
rm -rf /opt/firefly/storage rm -rf /opt/firefly/storage
cp /opt/.env /opt/firefly/.env cp /opt/.env /opt/firefly/.env
cp -r /opt/storage /opt/firefly/storage cp -r /opt/storage /opt/firefly/storage
@@ -51,18 +51,22 @@ function update_script() {
find /opt/firefly/storage -type f -exec chmod 664 {} \; find /opt/firefly/storage -type f -exec chmod 664 {} \;
mkdir -p /opt/firefly/storage/framework/{cache/data,sessions,views} mkdir -p /opt/firefly/storage/framework/{cache/data,sessions,views}
$STD sudo -u www-data php /opt/firefly/artisan cache:clear $STD sudo -u www-data php /opt/firefly/artisan cache:clear
cd /opt/firefly
$STD php artisan migrate --seed --force $STD php artisan migrate --seed --force
$STD php artisan cache:clear $STD php artisan cache:clear
$STD php artisan view:clear $STD php artisan view:clear
$STD php artisan firefly-iii:upgrade-database $STD php artisan firefly-iii:upgrade-database
$STD php artisan firefly-iii:laravel-passport-keys $STD php artisan firefly-iii:laravel-passport-keys
msg_ok "Updated ${APP}" msg_ok "Updated Firefly"
msg_info "Starting Apache2" msg_info "Starting Apache2"
systemctl start apache2 systemctl start apache2
msg_ok "Started Apache2" msg_ok "Started Apache2"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -28,23 +28,37 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr"; then
msg_info "Stopping Service"
=======
if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"12"* ]]; then if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"12"* ]]; then
msg_error "Wrong Debian version detected!" msg_error "Wrong Debian version detected!"
msg_error "You must upgrade your LXC to Debian Trixie before updating." msg_error "You must upgrade your LXC to Debian Trixie before updating."
exit exit
fi fi
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "3.4.3"; then if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr"; then
msg_info "Stopping service" msg_info "Stopping service"
>>>>>>> main
systemctl stop flaresolverr systemctl stop flaresolverr
msg_ok "Stopped service" msg_ok "Stopped Service"
<<<<<<< HEAD
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
=======
rm -rf /opt/flaresolverr rm -rf /opt/flaresolverr
fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "v3.4.3" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz" fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
>>>>>>> main
msg_info "Starting service" msg_info "Starting Service"
systemctl start flaresolverr systemctl start flaresolverr
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Started service" msg_ok "Started service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_disk="${var_disk:-10}"
var_cpu="${var_cpu:-4}" var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -27,12 +27,20 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
msg_info "Updating FlowiseAI"
systemctl stop flowise
npm install -g flowise --upgrade
systemctl start flowise
msg_ok "Updated FlowiseAI"
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
systemctl stop flowise systemctl stop flowise
npm install -g flowise --upgrade npm install -g flowise --upgrade
systemctl start flowise systemctl start flowise
msg_ok "Updated ${APP}" msg_ok "Updated ${APP}"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-3}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-7}" var_disk="${var_disk:-7}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -31,13 +31,16 @@ function update_script() {
if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop fluid-calendar systemctl stop fluid-calendar
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
cp /opt/fluid-calendar/.env /opt/fluid.env cp /opt/fluid-calendar/.env /opt/fluid.env
rm -rf /opt/fluid-calendar CLEAN_INSTALL=1 fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
msg_info "Updating $APP" msg_info "Updating Fluid Calendar"
mv /opt/fluid.env /opt/fluid-calendar/.env mv /opt/fluid.env /opt/fluid-calendar/.env
cd /opt/fluid-calendar cd /opt/fluid-calendar
export NEXT_TELEMETRY_DISABLED=1 export NEXT_TELEMETRY_DISABLED=1
@@ -45,12 +48,16 @@ function update_script() {
$STD npm run prisma:generate $STD npm run prisma:generate
$STD npx prisma migrate deploy $STD npx prisma migrate deploy
$STD npm run build:os $STD npm run build:os
msg_ok "Updated $APP" msg_ok "Updated Fluid Calendar"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start fluid-calendar systemctl start fluid-calendar
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -31,23 +31,24 @@ function update_script() {
systemctl stop forgejo systemctl stop forgejo
msg_ok "Stopped Service" msg_ok "Stopped Service"
msg_info "Updating ${APP}" msg_info "Updating Forgejo"
RELEASE=$(curl -fsSL https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//') RELEASE=$(curl -fsSL https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//')
curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "forgejo-$RELEASE-linux-amd64" curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "forgejo-$RELEASE-linux-amd64"
rm -rf /opt/forgejo/* rm -rf /opt/forgejo/*
cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64 cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64
chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64 chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64
ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo
msg_ok "Updated ${APP}"
msg_info "Cleaning"
rm -rf forgejo-$RELEASE-linux-amd64 rm -rf forgejo-$RELEASE-linux-amd64
msg_ok "Cleaned" msg_ok "Updated Forgejo"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start forgejo systemctl start forgejo
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

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

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -33,7 +33,10 @@ function update_script() {
chmod +x /opt/freshrss/cli/sensitive-log.sh chmod +x /opt/freshrss/cli/sensitive-log.sh
systemctl restart apache2 systemctl restart apache2
msg_ok "Fixed wrong permissions" msg_ok "Fixed wrong permissions"
<<<<<<< HEAD
=======
exit exit
>>>>>>> main
else else
msg_error "FreshRSS should be updated via the user interface." msg_error "FreshRSS should be updated via the user interface."
exit exit

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-5}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -44,7 +44,7 @@ function update_script() {
exit exit
fi fi
if ! command -v git &>/dev/null; then if ! command -v git &>/dev/null; then
$STD apt-get install -y git $STD apt install -y git
fi fi
msg_info "Stopping service $SERVICE_NAME" msg_info "Stopping service $SERVICE_NAME"
@@ -60,7 +60,11 @@ function update_script() {
msg_info "Starting service $SERVICE_NAME" msg_info "Starting service $SERVICE_NAME"
systemctl start "$SERVICE_NAME" systemctl start "$SERVICE_NAME"
msg_ok "Started service $SERVICE_NAME" msg_ok "Started service $SERVICE_NAME"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -39,8 +39,7 @@ function update_script() {
fi fi
mv /opt/gatus/config/config.yaml /opt mv /opt/gatus/config/config.yaml /opt
rm -rf /opt/gatus CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
msg_info "Updating Gatus" msg_info "Updating Gatus"
cd /opt/gatus cd /opt/gatus
@@ -53,7 +52,11 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start gatus systemctl start gatus
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated Successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -56,11 +56,15 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start ghostfolio systemctl start ghostfolio
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_info "Cleaning Up" msg_info "Cleaning Up"
$STD npm cache clean --force $STD npm cache clean --force
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}" var_disk="${var_disk:-6}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -96,17 +96,15 @@ EOF
ln -sf /opt/bun/bin/bun /usr/local/bin/bunx ln -sf /opt/bun/bin/bun /usr/local/bin/bunx
msg_ok "Installed Bun" msg_ok "Installed Bun"
rm -rf /opt/gitea-mirror CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"
fetch_and_deploy_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"
msg_info "Updating and rebuilding ${APP}" msg_info "Updating Gitea-Mirror"
cd /opt/gitea-mirror cd /opt/gitea-mirror
$STD bun run setup $STD bun run setup
$STD bun run build $STD bun run build
APP_VERSION=$(grep -o '"version": *"[^"]*"' package.json | cut -d'"' -f4) APP_VERSION=$(grep -o '"version": *"[^"]*"' package.json | cut -d'"' -f4)
sudo sed -i.bak "s|^npm_package_version=.*|npm_package_version=${APP_VERSION}|" /opt/gitea-mirror.env sudo sed -i.bak "s|^npm_package_version=.*|npm_package_version=${APP_VERSION}|" /opt/gitea-mirror.env
msg_ok "Updated and rebuilt ${APP}" msg_ok "Updated Gitea-Mirror"
msg_info "Restoring Data" msg_info "Restoring Data"
cp /opt/gitea-mirror-backup/data/* /opt/gitea-mirror/data cp /opt/gitea-mirror-backup/data/* /opt/gitea-mirror/data
@@ -114,8 +112,13 @@ EOF
msg_info "Starting Service" msg_info "Starting Service"
systemctl start gitea-mirror systemctl start gitea-mirror
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Service Started" msg_ok "Service Started"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -29,18 +29,23 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "gitea" "go-gitea/gitea"; then if check_for_gh_release "gitea" "go-gitea/gitea"; then
msg_info "Stopping service" msg_info "Stopping Service"
systemctl stop gitea systemctl stop gitea
msg_ok "Service stopped" msg_ok "Stopped Service"
rm -rf /usr/local/bin/gitea rm -rf /usr/local/bin/gitea
fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64" fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64"
chmod +x /usr/local/bin/gitea chmod +x /usr/local/bin/gitea
msg_info "Starting service" msg_info "Starting Service"
systemctl start gitea systemctl start gitea
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Started service" msg_ok "Started service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -39,7 +39,11 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start glance systemctl start glance
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -12,6 +12,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
variables variables
@@ -27,11 +28,17 @@ function update_script() {
exit exit
fi fi
msg_info "Updating $APP LXC" msg_info "Updating Globaleaks"
$STD apt update $STD apt update
$STD apt -y upgrade $STD apt -y upgrade
<<<<<<< HEAD
msg_ok "Updated Globaleaks"
msg_ok "Updated successfully"
exit
=======
msg_ok "Updated $APP LXC" msg_ok "Updated $APP LXC"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
} }
start start

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -29,16 +29,21 @@ function update_script() {
fi fi
if check_for_gh_release "go2rtc" "AlexxIT/go2rtc"; then if check_for_gh_release "go2rtc" "AlexxIT/go2rtc"; then
msg_info "Stopping service" msg_info "Stopping Service"
systemctl stop go2rtc systemctl stop go2rtc
msg_ok "Stopped service" msg_ok "Stopped Service"
fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_amd64" fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_amd64"
msg_info "Starting service" msg_info "Starting Service"
systemctl start go2rtc systemctl start go2rtc
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Started service" msg_ok "Started service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -38,8 +38,12 @@ function update_script() {
msg_info "Starting Services" msg_info "Starting Services"
systemctl start goaway systemctl start goaway
msg_ok "Started Services" msg_ok "Started Services"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -37,7 +37,11 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start gokapi systemctl start gokapi
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

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

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -20,6 +20,22 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
<<<<<<< HEAD
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
msg_info "Updating Grafana"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated Grafana"
msg_ok "Updated successfully"
exit
=======
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
@@ -33,6 +49,7 @@ function update_script() {
$STD apt-get -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
>>>>>>> main
} }
start start

View File

@@ -28,6 +28,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
msg_info "Stopping Services"
systemctl stop graylog-datanode graylog-server
msg_ok "Stopped Services"
msg_info "Updating Graylog"
$STD apt update
$STD apt upgrade -y
msg_ok "Updated Graylog"
msg_info "Starting Services"
systemctl start graylog-datanode graylog-server
msg_ok "Started Services"
msg_ok "Updated successfully"
=======
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop graylog-datanode systemctl stop graylog-datanode
@@ -60,6 +75,7 @@ function update_script() {
systemctl start graylog-server systemctl start graylog-server
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}" var_ram="${var_ram:-3072}"
var_disk="${var_disk:-6}" var_disk="${var_disk:-6}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -41,8 +41,13 @@ function update_script() {
fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball" fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball"
<<<<<<< HEAD
msg_info "Updating Grist"
mkdir -p grist/docs
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
mkdir -p /opt/grist/docs mkdir -p /opt/grist/docs
>>>>>>> main
cp -n /opt/grist_bak/.env /opt/grist/.env cp -n /opt/grist_bak/.env /opt/grist/.env
cp -r /opt/grist_bak/docs/* /opt/grist/docs/ cp -r /opt/grist_bak/docs/* /opt/grist/docs/
cp /opt/grist_bak/grist-sessions.db /opt/grist/grist-sessions.db cp /opt/grist_bak/grist-sessions.db /opt/grist/grist-sessions.db
@@ -51,13 +56,17 @@ function update_script() {
$STD yarn install $STD yarn install
$STD yarn run build:prod $STD yarn run build:prod
$STD yarn run install:python $STD yarn run install:python
msg_ok "Updated ${APP}" msg_ok "Updated Grist"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start grist systemctl start grist
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated Successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -32,9 +32,16 @@ function update_script() {
PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php
fi fi
if check_for_gh_release "grocy" "grocy/grocy"; then if check_for_gh_release "grocy" "grocy/grocy"; then
<<<<<<< HEAD
msg_info "Updating Grocy"
$STD bash /var/www/html/update.sh
msg_ok "Updated Grocy"
msg_ok "Updated Successfully"
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
bash /var/www/html/update.sh bash /var/www/html/update.sh
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -55,7 +55,10 @@ function update_script() {
cd /opt/guardian/backend cd /opt/guardian/backend
$STD npm ci $STD npm ci
$STD npm run build $STD npm run build
<<<<<<< HEAD
=======
>>>>>>> main
cd /opt/guardian/frontend cd /opt/guardian/frontend
$STD npm ci $STD npm ci
export DEPLOYMENT_MODE=standalone export DEPLOYMENT_MODE=standalone
@@ -65,7 +68,11 @@ function update_script() {
msg_info "Starting Services" msg_info "Starting Services"
systemctl start guardian-backend guardian-frontend systemctl start guardian-backend guardian-frontend
msg_ok "Started Services" msg_ok "Started Services"
<<<<<<< HEAD
msg_ok "Updated Successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

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

View File

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

View File

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

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-5}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -33,7 +33,7 @@ function update_script() {
systemctl stop healthchecks systemctl stop healthchecks
msg_ok "Stopped Services" msg_ok "Stopped Services"
setup_uv PYTHON_VERSION="3.12" setup_uv
fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks" fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks"
msg_info "Updating healthchecks" msg_info "Updating healthchecks"
@@ -45,7 +45,6 @@ function update_script() {
$STD uv run -- python manage.py collectstatic --noinput $STD uv run -- python manage.py collectstatic --noinput
$STD uv run -- python manage.py compress $STD uv run -- python manage.py compress
msg_ok "Updated healthchecks" msg_ok "Updated healthchecks"
msg_info "Starting Services" msg_info "Starting Services"
systemctl start healthchecks systemctl start healthchecks
systemctl restart caddy systemctl restart caddy

View File

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

View File

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

View File

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

View File

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

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,8 +28,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating ${APP} LXC" msg_info "Updating ${APP} LXC"
$STD apt-get update $STD apt update
$STD apt-get install -y homebridge $STD apt install -y homebridge
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-5}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -47,15 +47,12 @@ function update_script() {
$STD php asatru plants:attributes $STD php asatru plants:attributes
$STD php asatru calendar:classes $STD php asatru calendar:classes
chown -R www-data:www-data /opt/hortusfox chown -R www-data:www-data /opt/hortusfox
rm -r /opt/hortusfox-backup
msg_ok "Updated HortusFox" msg_ok "Updated HortusFox"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start apache2 systemctl start apache2
msg_ok "Started Service" msg_ok "Started Service"
msg_info "Cleaning up"
rm -r /opt/hortusfox-backup
msg_ok "Cleaned"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
fi fi
exit exit

View File

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

View File

@@ -28,8 +28,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating $APP LXC" msg_info "Updating $APP LXC"
$STD apt-get update $STD apt update
$STD apt-get -y upgrade $STD apt -y upgrade
msg_ok "Updated $APP LXC" msg_ok "Updated $APP LXC"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit

View File

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

View File

@@ -54,10 +54,10 @@ EOF
if [[ -f /etc/apt/preferences.d/immich ]]; then if [[ -f /etc/apt/preferences.d/immich ]]; then
rm /etc/apt/preferences.d/immich rm /etc/apt/preferences.d/immich
fi fi
$STD apt-get update $STD apt update
msg_ok "Added Debian Testing repo" msg_ok "Added Debian Testing repo"
msg_info "Installing libmimalloc3" msg_info "Installing libmimalloc3"
$STD apt-get install -t testing --no-install-recommends libmimalloc3 $STD apt install -t testing --no-install-recommends libmimalloc3
msg_ok "Installed libmimalloc3" msg_ok "Installed libmimalloc3"
fi fi
@@ -114,7 +114,7 @@ EOF
msg_ok "Upgraded VectorChord to v${VCHORD_RELEASE}" msg_ok "Upgraded VectorChord to v${VCHORD_RELEASE}"
fi fi
if ! dpkg -l | grep -q ccache; then if ! dpkg -l | grep -q ccache; then
$STD apt-get install -yqq ccache $STD apt install -yqq ccache
fi fi
INSTALL_DIR="/opt/${APP}" INSTALL_DIR="/opt/${APP}"
@@ -213,12 +213,6 @@ EOF
chown -R immich:immich "$INSTALL_DIR" chown -R immich:immich "$INSTALL_DIR"
msg_ok "Updated ${APP} to v${RELEASE}" msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt clean -y
msg_ok "Cleaned"
systemctl restart immich-ml immich-web systemctl restart immich-ml immich-web
fi fi
exit exit
@@ -272,7 +266,7 @@ function compile_libjxl() {
function compile_libheif() { function compile_libheif() {
SOURCE=${SOURCE_DIR}/libheif SOURCE=${SOURCE_DIR}/libheif
if ! dpkg -l | grep -q libaom; then if ! dpkg -l | grep -q libaom; then
$STD apt-get install -y libaom-dev $STD apt install -y libaom-dev
local update="required" local update="required"
fi fi
: "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}" : "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}"

View File

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

View File

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

View File

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

View File

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

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -26,14 +26,13 @@ function update_script() {
if [[ ! -f /etc/itsm-ng/config_db.php ]]; then if [[ ! -f /etc/itsm-ng/config_db.php ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit 1
fi fi
msg_info "Updating ${APP} LXC" msg_info "Updating LXC"
$STD apt-get update $STD apt update
$STD apt-get -y upgrade $STD apt -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
exit exit
} }

View File

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

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,24 +28,24 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
if [ ! -f /opt/.env ]; then if [ ! -f /opt/.env ]; then
sed -i 's|^Environment="DisableRootWarning=true"$|EnvironmentFile="/opt/.env"|' /etc/systemd/system/jackett.service sed -i 's|^Environment="DisableRootWarning=true"$|EnvironmentFile="/opt/.env"|' /etc/systemd/system/jackett.service
cat <<EOF >/opt/.env cat <<EOF >/opt/.env
DisableRootWarning=true DisableRootWarning=true
EOF EOF
fi fi
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop jackett systemctl stop jackett
msg_ok "Stopped Service" msg_ok "Stopped Service"
rm -rf /opt/Jackett CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start jackett systemctl start jackett
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -30,8 +30,8 @@ function update_script() {
fi fi
msg_info "Updating OS" msg_info "Updating OS"
$STD apt-get update $STD apt update
$STD apt-get -y upgrade $STD apt -y upgrade
msg_ok "OS updated, you can now update Jeedom from the Web UI." msg_ok "OS updated, you can now update Jeedom from the Web UI."
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -27,11 +27,14 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Updating $APP LXC"
$STD apt-get update JAVA_VERSION="21" setup_java
$STD apt-get -y upgrade
msg_ok "Updated $APP LXC" msg_info "Updating Jenkins"
msg_ok "Updated successfully!" $STD apt update
$STD apt -y upgrade
msg_ok "Updated Jenkins"
msg_ok "Update Successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-20}" var_disk="${var_disk:-20}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -35,18 +35,18 @@ function update_script() {
fetch_and_deploy_gh_release "joplin-server" "laurent22/joplin" "tarball" "latest" fetch_and_deploy_gh_release "joplin-server" "laurent22/joplin" "tarball" "latest"
msg_info "Updating ${APP}" msg_info "Updating Joplin-Server"
cd /opt/joplin-server cd /opt/joplin-server
sed -i "/onenote-converter/d" packages/lib/package.json sed -i "/onenote-converter/d" packages/lib/package.json
$STD yarn config set --home enableTelemetry 0 $STD yarn config set --home enableTelemetry 0
export BUILD_SEQUENCIAL=1 export BUILD_SEQUENCIAL=1
$STD yarn install --inline-builds $STD yarn install --inline-builds
msg_ok "Updated ${APP}" msg_ok "Updated Joplin-Server"
msg_info "Starting Services" msg_info "Starting Services"
systemctl start joplin-server systemctl start joplin-server
msg_ok "Started Services" msg_ok "Started Services"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-256}" var_ram="${var_ram:-256}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -34,7 +34,7 @@ function update_script() {
if check_for_gh_release "kapowarr" "Casvt/Kapowarr"; then if check_for_gh_release "kapowarr" "Casvt/Kapowarr"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop kapowarr systemctl stop kapowarr
msg_info "Stopped Service" msg_ok "Stopped Service"
msg_info "Creating Backup" msg_info "Creating Backup"
mv /opt/kapowarr/db /opt/ mv /opt/kapowarr/db /opt/
@@ -49,7 +49,7 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start kapowarr systemctl start kapowarr
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -38,14 +38,11 @@ function update_script() {
msg_ok "Updated yt-dlp" msg_ok "Updated yt-dlp"
msg_info "Prepare update" msg_info "Prepare update"
if [[ -f /opt/${APP}_version.txt && "$(cat /opt/${APP}_version.txt)" < "0.23.0" ]]; then $STD apt install -y graphicsmagick ghostscript
$STD apt-get install -y graphicsmagick ghostscript
fi
if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then
mkdir -p /etc/karakeep mkdir -p /etc/karakeep
mv /opt/karakeep/.env /etc/karakeep/karakeep.env mv /opt/karakeep/.env /etc/karakeep/karakeep.env
fi fi
rm -rf /opt/karakeep
msg_ok "Update prepared" msg_ok "Update prepared"
if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then
@@ -65,7 +62,7 @@ function update_script() {
MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)" MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)"
NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs
msg_info "Updating ${APP}" msg_info "Updating Karakeep"
corepack enable corepack enable
export PUPPETEER_SKIP_DOWNLOAD="true" export PUPPETEER_SKIP_DOWNLOAD="true"
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true" export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true"
@@ -86,17 +83,12 @@ function update_script() {
$STD pnpm migrate $STD pnpm migrate
$STD pnpm store prune $STD pnpm store prune
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env
msg_ok "Updated ${APP}" msg_ok "Updated Karakeep"
msg_info "Starting Services" msg_info "Starting Services"
systemctl start karakeep-browser karakeep-workers karakeep-web systemctl start karakeep-browser karakeep-workers karakeep-web
msg_ok "Started Services" msg_ok "Started Services"
msg_ok "Updated Successfully!"
msg_info "Cleaning up"
$STD apt-get autoremove -y
$STD apt-get autoclean -y
msg_ok "Cleaned"
msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-8192}" var_ram="${var_ram:-8192}"
var_disk="${var_disk:-30}" var_disk="${var_disk:-30}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-0}" var_unprivileged="${var_unprivileged:-0}"
var_fuse="${var_fuse:-yes}" var_fuse="${var_fuse:-yes}"
var_tun="${var_tun:-yes}" var_tun="${var_tun:-yes}"
@@ -29,11 +29,10 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Updating $APP LXC" msg_info "Updating LXC"
$STD apt-get update $STD apt update
$STD apt-get -y upgrade $STD apt -y upgrade
msg_ok "Updated $APP LXC" msg_ok "Updated LXC"
msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,9 +28,9 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "keycloak_app" "keycloak/keycloak"; then if check_for_gh_release "keycloak_app" "keycloak/keycloak"; then
msg_info "Stopping Keycloak" msg_info "Stopping Service"
systemctl stop keycloak systemctl stop keycloak
msg_ok "Stopped Keycloak" msg_ok "Stopped Service"
msg_info "Updating packages" msg_info "Updating packages"
$STD apt-get update $STD apt-get update
@@ -44,16 +44,16 @@ function update_script() {
fetch_and_deploy_gh_release "keycloak_app" "keycloak/keycloak" "prebuild" "latest" "/opt/keycloak" "keycloak-*.tar.gz" fetch_and_deploy_gh_release "keycloak_app" "keycloak/keycloak" "prebuild" "latest" "/opt/keycloak" "keycloak-*.tar.gz"
msg_info "Updating ${APP}" msg_info "Updating Keycloak"
cd /opt cd /opt
cp -a keycloak.old/conf/. keycloak/conf/ cp -a keycloak.old/conf/. keycloak/conf/
cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true
cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true
msg_ok "Updated ${APP} LXC" msg_ok "Updated Keycloak"
msg_info "Restarting Keycloak" msg_info "Restarting Service"
systemctl restart keycloak systemctl restart keycloak
msg_ok "Restarted Keycloak" msg_ok "Restarted Service"
msg_info "Cleaning up" msg_info "Cleaning up"
rm -rf keycloak.old rm -rf keycloak.old

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-7}" var_disk="${var_disk:-7}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -23,17 +23,16 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if ! command -v lsb_release; then
apt install -y lsb-release
fi
if [[ ! -d /opt/kimai ]]; then if [[ ! -d /opt/kimai ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
CURRENT_PHP=$(php -v 2>/dev/null | awk '/^PHP/{print $2}' | cut -d. -f1,2) PHP_VERSION="8.4" PHP_MODULE="mysql" PHP_APACHE="YES" setup_php
if [[ "$CURRENT_PHP" != "8.4" ]]; then setup_composer
msg_info "Migrating PHP $CURRENT_PHP to 8.4"
PHP_VERSION="8.4" PHP_MODULE="gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm" PHP_APACHE="YES" setup_php
msg_ok "Migrated PHP $CURRENT_PHP to 8.4"
fi
if check_for_gh_release "kimai" "kimai/kimai"; then if check_for_gh_release "kimai" "kimai/kimai"; then
BACKUP_DIR="/opt/kimai_backup" BACKUP_DIR="/opt/kimai_backup"
@@ -71,8 +70,9 @@ function update_script() {
chmod -R g+rw /opt/* chmod -R g+rw /opt/*
chown -R www-data:www-data /opt/* chown -R www-data:www-data /opt/*
chmod -R 777 /opt/* chmod -R 777 /opt/*
rm -rf "$BACKUP_DIR"
msg_ok "Setup Permissions" msg_ok "Setup Permissions"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -38,7 +38,7 @@ function update_script() {
fetch_and_deploy_gh_release "koillection" "benjaminjonard/koillection" fetch_and_deploy_gh_release "koillection" "benjaminjonard/koillection"
msg_info "Updating ${APP}" msg_info "Updating Koillection"
cd /opt/koillection cd /opt/koillection
cp -r /opt/koillection-backup/.env.local /opt/koillection cp -r /opt/koillection-backup/.env.local /opt/koillection
cp -r /opt/koillection-backup/public/uploads/. /opt/koillection/public/uploads/ cp -r /opt/koillection-backup/public/uploads/. /opt/koillection/public/uploads/
@@ -50,7 +50,7 @@ function update_script() {
$STD yarn install $STD yarn install
$STD yarn build $STD yarn build
chown -R www-data:www-data /opt/koillection/public/uploads chown -R www-data:www-data /opt/koillection/public/uploads
msg_ok "Updated $APP" msg_ok "Updated Koillection"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start apache2 systemctl start apache2
@@ -59,7 +59,7 @@ function update_script() {
msg_info "Cleaning up" msg_info "Cleaning up"
rm -r /opt/koillection-backup rm -r /opt/koillection-backup
msg_ok "Cleaned" msg_ok "Cleaned"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -37,7 +37,7 @@ function update_script() {
cp /opt/kometa/config/config.yml /opt cp /opt/kometa/config/config.yml /opt
msg_ok "Backup completed" msg_ok "Backup completed"
PYTHON_VERSION="3.12" setup_uv PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "kometa" "Kometa-Team/Kometa" fetch_and_deploy_gh_release "kometa" "Kometa-Team/Kometa"
msg_info "Updating Kometa" msg_info "Updating Kometa"
@@ -49,7 +49,7 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start kometa systemctl start kometa
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -39,7 +39,7 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start komga systemctl start komga
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated Successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -26,14 +26,14 @@ function update_script() {
[[ -d /opt/komodo ]] || { [[ -d /opt/komodo ]] || {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit 1
} }
msg_info "Updating ${APP}" msg_info "Updating Komodo"
COMPOSE_FILE=$(find /opt/komodo -maxdepth 1 -type f -name '*.compose.yaml' ! -name 'compose.env' | head -n1) COMPOSE_FILE=$(find /opt/komodo -maxdepth 1 -type f -name '*.compose.yaml' ! -name 'compose.env' | head -n1)
if [[ -z "$COMPOSE_FILE" ]]; then if [[ -z "$COMPOSE_FILE" ]]; then
msg_error "No valid compose file found in /opt/komodo!" msg_error "No valid compose file found in /opt/komodo!"
exit exit 1
fi fi
COMPOSE_BASENAME=$(basename "$COMPOSE_FILE") COMPOSE_BASENAME=$(basename "$COMPOSE_FILE")
@@ -42,26 +42,26 @@ function update_script() {
echo -e "${YW}This configuration is no longer supported since Komodo v1.18.0.${CL}" echo -e "${YW}This configuration is no longer supported since Komodo v1.18.0.${CL}"
echo -e "${YW}Please follow the migration guide:${CL}" echo -e "${YW}Please follow the migration guide:${CL}"
echo -e "${BGN}https://github.com/community-scripts/ProxmoxVE/discussions/5689${CL}\n" echo -e "${BGN}https://github.com/community-scripts/ProxmoxVE/discussions/5689${CL}\n"
exit exit 1
fi fi
BACKUP_FILE="/opt/komodo/${COMPOSE_BASENAME}.bak_$(date +%Y%m%d_%H%M%S)" BACKUP_FILE="/opt/komodo/${COMPOSE_BASENAME}.bak_$(date +%Y%m%d_%H%M%S)"
cp "$COMPOSE_FILE" "$BACKUP_FILE" || { cp "$COMPOSE_FILE" "$BACKUP_FILE" || {
msg_error "Failed to create backup of ${COMPOSE_BASENAME}!" msg_error "Failed to create backup of ${COMPOSE_BASENAME}!"
exit exit 1
} }
GITHUB_URL="https://raw.githubusercontent.com/moghtech/komodo/main/compose/${COMPOSE_BASENAME}" GITHUB_URL="https://raw.githubusercontent.com/moghtech/komodo/main/compose/${COMPOSE_BASENAME}"
if ! curl -fsSL "$GITHUB_URL" -o "$COMPOSE_FILE"; then if ! curl -fsSL "$GITHUB_URL" -o "$COMPOSE_FILE"; then
msg_error "Failed to download ${COMPOSE_BASENAME} from GitHub!" msg_error "Failed to download ${COMPOSE_BASENAME} from GitHub!"
mv "$BACKUP_FILE" "$COMPOSE_FILE" mv "$BACKUP_FILE" "$COMPOSE_FILE"
exit exit 1
fi fi
if ! grep -qxF 'COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env; then if ! grep -qxF 'COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env; then
sed -i '/^COMPOSE_KOMODO_IMAGE_TAG=latest$/a COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env sed -i '/^COMPOSE_KOMODO_IMAGE_TAG=latest$/a COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env
fi fi
$STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env pull $STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env pull
$STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env up -d $STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env up -d
msg_ok "Updated successfully!" msg_ok "Updated Komodo"
exit exit
} }

View File

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

View File

@@ -40,19 +40,24 @@ function update_script() {
MM_DIR="/opt/mm" MM_DIR="/opt/mm"
export CONFIG_DIR="${MM_DIR}/config" export CONFIG_DIR="${MM_DIR}/config"
export FRONTEND_FILES_DIR="${MM_DIR}/web/build" export FRONTEND_FILES_DIR="${MM_DIR}/web/build"
export BASE_PATH=""
export PUBLIC_VERSION="" export PUBLIC_VERSION=""
export PUBLIC_API_URL="" export PUBLIC_API_URL=""
export BASE_PATH="/web"
cd /opt/mediamanager/web cd /opt/mediamanager/web
$STD npm ci $STD npm ci --no-fund --no-audit
$STD npm run build $STD npm run build
rm -rf "$FRONTEND_FILES_DIR"/build rm -rf "$FRONTEND_FILES_DIR"/build
cp -r build "$FRONTEND_FILES_DIR" cp -r build "$FRONTEND_FILES_DIR"
export BASE_PATH=""
export VIRTUAL_ENV="/opt/${MM_DIR}/venv" export VIRTUAL_ENV="/opt/${MM_DIR}/venv"
cd /opt/mediamanager cd /opt/mediamanager
rm -rf "$MM_DIR"/{media_manager,alembic*} rm -rf "$MM_DIR"/{media_manager,alembic*}
cp -r {media_manager,alembic*} "$MM_DIR" cp -r {media_manager,alembic*} "$MM_DIR"
$STD /usr/local/bin/uv sync --locked --active -n -p cpython3.13 --managed-python $STD /usr/local/bin/uv sync --locked --active -n -p cpython3.13 --managed-python
if ! grep -q "LOG_FILE" "$MM_DIR"/start.sh; then
sed -i "\|build\"$|a\export LOG_FILE=\"$CONFIG_DIR/media_manager.log\"" "$MM_DIR"/start.sh
fi
msg_ok "Updated $APP" msg_ok "Updated $APP"
msg_info "Starting Service" msg_info "Starting Service"

View File

@@ -23,13 +23,13 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -f /etc/apt/sources.list.d/openhab.list ]]; then if [[ ! -f /usr/lib/systemd/system/openhab.service ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Updating ${APP} LXC" msg_info "Updating ${APP} LXC"
$STD apt update $STD apt update
$STD apt -y upgrade $STD apt upgrade -y
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -23,6 +23,62 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ -d /opt/open-webui ]]; then
msg_warn "Legacy installation detected — migrating to uv based install..."
msg_info "Stopping Service"
systemctl stop open-webui
msg_ok "Stopped Service"
msg_info "Creating Backup"
mkdir -p /opt/open-webui-backup
cp -a /opt/open-webui/backend/data /opt/open-webui-backup/data || true
msg_ok "Created Backup"
msg_info "Removing legacy installation"
rm -rf /opt/open-webui
rm -rf /root/.open-webui || true
msg_ok "Removed legacy installation"
msg_info "Installing uv-based Open-WebUI"
PYTHON_VERSION="3.12" setup_uv
$STD uv tool install --python 3.12 open-webui[all]
msg_ok "Installed uv-based Open-WebUI"
msg_info "Restoring data"
mkdir -p /root/.open-webui
cp -a /opt/open-webui-backup/data/* /root/.open-webui/ || true
rm -rf /opt/open-webui-backup || true
msg_ok "Restored data"
msg_info "Recreating Service"
cat <<EOF >/etc/systemd/system/open-webui.service
[Unit]
Description=Open WebUI Service
After=network.target
[Service]
Type=simple
Environment=DATA_DIR=/root/.open-webui
EnvironmentFile=-/root/.env
ExecStart=/root/.local/bin/open-webui serve
WorkingDirectory=/root
Restart=on-failure
RestartSec=5
User=root
[Install]
WantedBy=multi-user.target
EOF
$STD systemctl daemon-reload
systemctl enable -q --now open-webui
msg_ok "Recreated Service"
msg_ok "Migration completed"
exit 0
fi
if [[ ! -d /root/.open-webui ]]; then if [[ ! -d /root/.open-webui ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
@@ -50,8 +106,11 @@ function update_script() {
fi fi
fi fi
msg_info "Restarting Open WebUI to initiate update" msg_info "Updating Open WebUI via uv"
PYTHON_VERSION="3.12" setup_uv
$STD uv tool install --python 3.12 open-webui[all]
systemctl restart open-webui systemctl restart open-webui
msg_ok "Updated Open WebUI"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -35,24 +35,38 @@ function update_script() {
if grep -q "uv run" /etc/systemd/system/paperless-webserver.service; then if grep -q "uv run" /etc/systemd/system/paperless-webserver.service; then
msg_info "Backing up data" msg_info "Backing up data"
mkdir -p /opt/paperless/backup mkdir -p /opt/paperless_backup
cp -r /opt/paperless/data /opt/paperless/backup/ cp -r /opt/paperless/data /opt/paperless_backup/
cp -r /opt/paperless/media /opt/paperless/backup/ cp -r /opt/paperless/media /opt/paperless_backup/
cp -r /opt/paperless/paperless.conf /opt/paperless/backup/ cp -r /opt/paperless/paperless.conf /opt/paperless_backup/
msg_ok "Backup completed" msg_ok "Backup completed"
PYTHON_VERSION="3.13" setup_uv PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz" CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc" CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc"
. /etc/os-release
if [ "$VERSION_CODENAME" = "bookworm" ]; then
setup_gs setup_gs
else
$STD apt install -y ghostscript
fi
msg_info "Updating Paperless-ngx" msg_info "Updating Paperless-ngx"
cp -r /opt/paperless/backup/* /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 cd /opt/paperless
$STD uv sync --all-extras $STD uv sync --all-extras
cd /opt/paperless/src cd /opt/paperless/src
$STD uv run -- python manage.py migrate $STD uv run -- python manage.py migrate
msg_ok "Updated Paperless-ngx" msg_ok "Updated Paperless-ngx"
rm -rf /opt/paperless_backup
else else
msg_warn "You are about to migrate your Paperless-ngx installation to uv!" msg_warn "You are about to migrate your Paperless-ngx installation to uv!"
msg_custom "🔒" "It is strongly recommended to take a Proxmox snapshot first:" msg_custom "🔒" "It is strongly recommended to take a Proxmox snapshot first:"
@@ -96,24 +110,40 @@ function update_script() {
$STD systemctl daemon-reload $STD systemctl daemon-reload
msg_info "Backing up data" msg_info "Backing up data"
mkdir -p /opt/paperless/backup mkdir -p /opt/paperless_backup
cp -r /opt/paperless/data /opt/paperless/backup/ cp -r /opt/paperless/data /opt/paperless_backup/
cp -r /opt/paperless/media /opt/paperless/backup/ cp -r /opt/paperless/media /opt/paperless_backup/
cp -r /opt/paperless/paperless.conf /opt/paperless/backup/ cp -r /opt/paperless/paperless.conf /opt/paperless_backup/
msg_ok "Backup completed" msg_ok "Backup completed"
PYTHON_VERSION="3.13" setup_uv PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz" CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc" CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc"
. /etc/os-release
if [ "$VERSION_CODENAME" = "bookworm" ]; then
setup_gs setup_gs
else
msg_info "Installing Ghostscript"
$STD apt install -y ghostscript
msg_ok "Installed Ghostscript"
fi
msg_info "Updating Paperless-ngx" msg_info "Updating Paperless-ngx"
cp -r /opt/paperless/backup/* /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 cd /opt/paperless
$STD uv sync --all-extras $STD uv sync --all-extras
cd /opt/paperless/src cd /opt/paperless/src
$STD uv run -- python manage.py migrate $STD uv run -- python manage.py migrate
msg_ok "Paperless-ngx migration and update completed" msg_ok "Paperless-ngx migration and update completed"
rm -rf /opt/paperless_backup
if [[ -d /opt/paperless/backup ]]; then
rm -rf /opt/paperless/backup
msg_ok "Removed old backup directory"
fi
fi fi
msg_info "Starting all Paperless-ngx Services" msg_info "Starting all Paperless-ngx Services"

View File

@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="Part-DB" APP="Part-DB"
var_tags="${var_tags:-inventory;parts}" var_tags="${var_tags:-inventory;parts}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-13}"

View File

@@ -33,17 +33,22 @@ function update_script() {
systemctl stop apache2 systemctl stop apache2
msg_ok "Stopped Service" msg_ok "Stopped Service"
PHP_VERSION="8.3" PHP_APACHE="YES" PHP_FPM="YES" PHP_MODULE="mysql,gmp,snmp,ldap,apcu" setup_php
msg_info "Installing PHP-PEAR"
$STD apt install -y \
php-pear \
php-dev
msg_ok "Installed PHP-PEAR"
mv /opt/phpipam/ /opt/phpipam-backup mv /opt/phpipam/ /opt/phpipam-backup
fetch_and_deploy_gh_release "phpipam" "phpipam/phpipam" "prebuild" "latest" "/opt/phpipam" "phpipam-v*.zip" CLEAN_INSTALL=1 fetch_and_deploy_gh_release "phpipam" "phpipam/phpipam" "prebuild" "latest" "/opt/phpipam" "phpipam-v*.zip"
cp /opt/phpipam-backup/config.php /opt/phpipam cp /opt/phpipam-backup/config.php /opt/phpipam
rm -r /opt/phpipam-backup
msg_info "Starting Service" msg_info "Starting Service"
systemctl start apache2 systemctl start apache2
msg_ok "Started Service" msg_ok "Started Service"
msg_info "Cleaning up"
rm -r /opt/phpipam-backup
msg_ok "Cleaned"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
fi fi
exit exit

View File

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

View File

@@ -28,6 +28,11 @@ function update_script() {
exit exit
fi fi
if is_package_installed "aspnetcore-runtime-8.0"; then
$STD apt remove -y aspnetcore-runtime-8.0
$STD apt install -y aspnetcore-runtime-9.0
fi
RELEASE=$(curl -fsSL https://technitium.com/dns/ | grep -oP 'Version \K[\d.]+') RELEASE=$(curl -fsSL https://technitium.com/dns/ | grep -oP 'Version \K[\d.]+')
if [[ ! -f ~/.technitium || "${RELEASE}" != "$(cat ~/.technitium)" ]]; then if [[ ! -f ~/.technitium || "${RELEASE}" != "$(cat ~/.technitium)" ]]; then
msg_info "Updating Technitium DNS" msg_info "Updating Technitium DNS"

View File

@@ -27,7 +27,35 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_error "Currently we don't provide an update function for this App."
if check_for_gh_release "web-check" "CrazyWolf13/web-check"; then
msg_info "Stopping Service"
systemctl stop web-check
msg_ok "Stopped Service"
msg_info "Creating backup"
mv /opt/web-check/.env /opt
msg_ok "Created backup"
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "web-check" "CrazyWolf13/web-check"
msg_info "Restoring backup"
mv /opt/.env /opt/web-check
msg_ok "Restored backup"
msg_info "Building Web-Check"
cd /opt/web-check
$STD yarn install --frozen-lockfile --network-timeout 100000
$STD yarn build --production
$STD npm cache clean --force
msg_ok "Built Web-Check"
msg_info "Starting Service"
systemctl start web-check
msg_ok "Started Service"
msg_ok "Updated Successfully!"
fi
exit exit
} }

View File

@@ -33,8 +33,12 @@
}, },
"notes": [ "notes": [
{ {
"text": "Set a root password if using autologin. This will be the Cockpit password.`sudo passwd root`", "text": "Set a root password if using autologin. This will be the Cockpit password. To set root password run `sudo passwd root`",
"type": "info" "type": "info"
},
{
"text": "If you plan on using 45Drives extension with NFS, you must setup LXC as privileged. Some features of 45Drives don't work on Debian 13, so Debian 12 must be used.",
"type": "warning"
} }
] ]
} }

View File

@@ -1,35 +0,0 @@
{
"name": "Dashy",
"slug": "dashy",
"categories": [
10
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 4000,
"documentation": "https://dashy.to/docs",
"website": "https://dashy.to/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/dashy.webp",
"config_path": "/opt/dashy/user-data/conf.yml",
"description": "Dashy is a solution that helps you organize your self-hosted services by centralizing access to them through a single interface.",
"install_methods": [
{
"type": "default",
"script": "ct/dashy.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 6,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@@ -0,0 +1,35 @@
{
"name": "Domain Monitor",
"slug": "domain-monitor",
"categories": [
9
],
"date_created": "2025-11-11",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://github.com/Hosteroid/domain-monitor/blob/main/README.md",
"config_path": "/opt/domain-monitor/.env",
"website": "https://github.com/Hosteroid/domain-monitor",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/png/domain-monitor.png",
"description": "A self-hosted PHP domain expiration monitoring tool that tracks domain expiry dates, RDAP/WHOIS data, and SSL certificate validity. Supports alerts, multi-user setup, and cron automation. Built for developers, hosting providers, and IT admins who want full control without third-party services.",
"install_methods": [
{
"type": "default",
"script": "ct/domain-monitor.sh",
"resources": {
"cpu": 2,
"ram": 512,
"hdd": 2,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -22,8 +22,8 @@
"cpu": 1, "cpu": 1,
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": null, "os": "debian",
"version": null "version": "13"
} }
} }
], ],

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