mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-23 05:55:16 +00:00
Compare commits
6 Commits
2025-11-22
...
deb13_g_to
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
df12ea77dd | ||
|
|
edfeb4c507 | ||
|
|
3c2603b5b1 | ||
|
|
5d2d54368a | ||
|
|
e5c3c19106 | ||
|
|
66409ac1cf |
12
.github/ISSUE_TEMPLATE/bug_report.yml
generated
vendored
12
.github/ISSUE_TEMPLATE/bug_report.yml
generated
vendored
@@ -22,18 +22,6 @@ body:
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: verbose_run
|
||||
attributes:
|
||||
label: 🔎 Did you run the script with verbose mode enabled?
|
||||
description: "Required for debugging any script issue. A verbose log is mandatory."
|
||||
options:
|
||||
- ""
|
||||
- "Yes, verbose mode was enabled and the output is included below"
|
||||
- "No (this issue will likely be closed automatically)"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: script_name
|
||||
attributes:
|
||||
|
||||
206
CHANGELOG.md
206
CHANGELOG.md
@@ -10,216 +10,14 @@
|
||||
> [!CAUTION]
|
||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||
|
||||
## 2025-11-23
|
||||
|
||||
## 2025-11-22
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Upgopher ([#9360](https://github.com/community-scripts/ProxmoxVE/pull/9360))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- Expand support to Proxmox VE 9.1 in VM scripts [@MickLesk](https://github.com/MickLesk) ([#9351](https://github.com/community-scripts/ProxmoxVE/pull/9351))
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- fix: Snipe-IT install and update failure due to new repository url [@ruanmed](https://github.com/ruanmed) ([#9362](https://github.com/community-scripts/ProxmoxVE/pull/9362))
|
||||
- glpi - allow migration of existing databases [@moodyblue](https://github.com/moodyblue) ([#9353](https://github.com/community-scripts/ProxmoxVE/pull/9353))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- Refactor cleanup steps to use cleanup_lxc function (install/ Folder) [@MickLesk](https://github.com/MickLesk) ([#9354](https://github.com/community-scripts/ProxmoxVE/pull/9354))
|
||||
- Remove redundant cleanup steps from update scripts (ct/ Folder) [@MickLesk](https://github.com/MickLesk) ([#9359](https://github.com/community-scripts/ProxmoxVE/pull/9359))
|
||||
|
||||
### 🌐 Website
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- Refactor /data page [@BramSuurdje](https://github.com/BramSuurdje) ([#9343](https://github.com/community-scripts/ProxmoxVE/pull/9343))
|
||||
|
||||
## 2025-11-21
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- plex: prevent [] syntax issue [@MickLesk](https://github.com/MickLesk) ([#9318](https://github.com/community-scripts/ProxmoxVE/pull/9318))
|
||||
- fix: karakeep strip "v" from release version [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9324](https://github.com/community-scripts/ProxmoxVE/pull/9324))
|
||||
- NetVisor: fix grep in update [@vhsdream](https://github.com/vhsdream) ([#9334](https://github.com/community-scripts/ProxmoxVE/pull/9334))
|
||||
- Immich: pin correct version [@vhsdream](https://github.com/vhsdream) ([#9332](https://github.com/community-scripts/ProxmoxVE/pull/9332))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- Refactor IPv6 disable logic and add 'disable' option [@MickLesk](https://github.com/MickLesk) ([#9326](https://github.com/community-scripts/ProxmoxVE/pull/9326))
|
||||
|
||||
## 2025-11-20
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- core: change 'uv cache clear' to 'uv cache clean' [@MickLesk](https://github.com/MickLesk) ([#9299](https://github.com/community-scripts/ProxmoxVE/pull/9299))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- Immich v2.3.1: OpenVINO tuning, OCR fixes, Maintenance mode, workflows/plugin framework [@vhsdream](https://github.com/vhsdream) ([#9310](https://github.com/community-scripts/ProxmoxVE/pull/9310))
|
||||
- kasm: add: update [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9253](https://github.com/community-scripts/ProxmoxVE/pull/9253))
|
||||
- tools/pve: expand PVE support to 9.0–9.1 (post-install & netdata) [@MickLesk](https://github.com/MickLesk) ([#9298](https://github.com/community-scripts/ProxmoxVE/pull/9298))
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- Omada - AVX-only support [@MickLesk](https://github.com/MickLesk) ([#9295](https://github.com/community-scripts/ProxmoxVE/pull/9295))
|
||||
|
||||
## 2025-11-19
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- HotFix: Fix NetVisor env var [@vhsdream](https://github.com/vhsdream) ([#9286](https://github.com/community-scripts/ProxmoxVE/pull/9286))
|
||||
- Jotty: reduce RAM requirement [@vhsdream](https://github.com/vhsdream) ([#9272](https://github.com/community-scripts/ProxmoxVE/pull/9272))
|
||||
- Nginx Proxy Manager: Pin version to v2.13.4 [@tremor021](https://github.com/tremor021) ([#9259](https://github.com/community-scripts/ProxmoxVE/pull/9259))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- PVE 9.1 version support [@MickLesk](https://github.com/MickLesk) ([#9280](https://github.com/community-scripts/ProxmoxVE/pull/9280))
|
||||
- force disable IPv6 if IPV6_METHOD = none [@MickLesk](https://github.com/MickLesk) ([#9277](https://github.com/community-scripts/ProxmoxVE/pull/9277))
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- NetVisor: v0.10.0 fixes [@vhsdream](https://github.com/vhsdream) ([#9255](https://github.com/community-scripts/ProxmoxVE/pull/9255))
|
||||
|
||||
## 2025-11-18
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- librenms: Fix password to short [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#9236](https://github.com/community-scripts/ProxmoxVE/pull/9236))
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Huntarr: Downgrade Python to 3.12 [@MickLesk](https://github.com/MickLesk) ([#9246](https://github.com/community-scripts/ProxmoxVE/pull/9246))
|
||||
- kasm: fix release fetching [@MickLesk](https://github.com/MickLesk) ([#9244](https://github.com/community-scripts/ProxmoxVE/pull/9244))
|
||||
|
||||
## 2025-11-17
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Passbolt ([#9226](https://github.com/community-scripts/ProxmoxVE/pull/9226))
|
||||
- Domain-Locker ([#9214](https://github.com/community-scripts/ProxmoxVE/pull/9214))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Domain Monitor: Fix encryption key length in install script [@tremor021](https://github.com/tremor021) ([#9239](https://github.com/community-scripts/ProxmoxVE/pull/9239))
|
||||
- NetVisor: add build deps, increase RAM [@vhsdream](https://github.com/vhsdream) ([#9205](https://github.com/community-scripts/ProxmoxVE/pull/9205))
|
||||
- fix: restart apache2 after installing zabbix config [@AlphaLawless](https://github.com/AlphaLawless) ([#9206](https://github.com/community-scripts/ProxmoxVE/pull/9206))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- [core]: harmonize app_name for creds [@MickLesk](https://github.com/MickLesk) ([#9224](https://github.com/community-scripts/ProxmoxVE/pull/9224))
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- Refactor: paperless-ngx (Breaking Change Inside) [@MickLesk](https://github.com/MickLesk) ([#9223](https://github.com/community-scripts/ProxmoxVE/pull/9223))
|
||||
|
||||
### 🧰 Maintenance
|
||||
|
||||
- #### 📂 Github
|
||||
|
||||
- github: add verbose mode check to bug report template [@MickLesk](https://github.com/MickLesk) ([#9234](https://github.com/community-scripts/ProxmoxVE/pull/9234))
|
||||
|
||||
## 2025-11-16
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Metabase ([#9190](https://github.com/community-scripts/ProxmoxVE/pull/9190))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Change backup directory to /opt for paperless-ngx [@ProfDrYoMan](https://github.com/ProfDrYoMan) ([#9195](https://github.com/community-scripts/ProxmoxVE/pull/9195))
|
||||
- Kimai: remove deprecated admin_lte section [@MickLesk](https://github.com/MickLesk) ([#9182](https://github.com/community-scripts/ProxmoxVE/pull/9182))
|
||||
- healthchecks: bump python to 3.13 [@MickLesk](https://github.com/MickLesk) ([#9175](https://github.com/community-scripts/ProxmoxVE/pull/9175))
|
||||
|
||||
### 🌐 Website
|
||||
|
||||
- #### 📝 Script Information
|
||||
|
||||
- fixed config_path for donetick [@TazztheMonster](https://github.com/TazztheMonster) ([#9203](https://github.com/community-scripts/ProxmoxVE/pull/9203))
|
||||
|
||||
## 2025-11-15
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- privatebin: fix: syntax error in chmod command [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9169](https://github.com/community-scripts/ProxmoxVE/pull/9169))
|
||||
- phpIPHAM: patch db and add fping [@MickLesk](https://github.com/MickLesk) ([#9177](https://github.com/community-scripts/ProxmoxVE/pull/9177))
|
||||
- changedetection: fix: increase ressources [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9171](https://github.com/community-scripts/ProxmoxVE/pull/9171))
|
||||
- 2fauth: update composer command [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9168](https://github.com/community-scripts/ProxmoxVE/pull/9168))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- firefly: refactor update_script and add dataimporter update [@MickLesk](https://github.com/MickLesk) ([#9178](https://github.com/community-scripts/ProxmoxVE/pull/9178))
|
||||
|
||||
## 2025-11-14
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- LibreNMS ([#9148](https://github.com/community-scripts/ProxmoxVE/pull/9148))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- karakeep: clean install after every update [@MickLesk](https://github.com/MickLesk) ([#9144](https://github.com/community-scripts/ProxmoxVE/pull/9144))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- bump grafana to debian 13 [@mschabhuettl](https://github.com/mschabhuettl) ([#9141](https://github.com/community-scripts/ProxmoxVE/pull/9141))
|
||||
|
||||
## 2025-11-13
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Netvisor ([#9133](https://github.com/community-scripts/ProxmoxVE/pull/9133))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Domain Monitor: Add domain checking cron [@tremor021](https://github.com/tremor021) ([#9129](https://github.com/community-scripts/ProxmoxVE/pull/9129))
|
||||
- Kimai: Fix for MariaDB connection URL [@tremor021](https://github.com/tremor021) ([#9124](https://github.com/community-scripts/ProxmoxVE/pull/9124))
|
||||
- Fix: filebrowser-quantum update [@MickLesk](https://github.com/MickLesk) ([#9115](https://github.com/community-scripts/ProxmoxVE/pull/9115))
|
||||
- tools.func: fix wrong output for setup_java (error token is "0") [@snow2k9](https://github.com/snow2k9) ([#9110](https://github.com/community-scripts/ProxmoxVE/pull/9110))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- tools.func: improve Rust setup and crate installation logic [@MickLesk](https://github.com/MickLesk) ([#9120](https://github.com/community-scripts/ProxmoxVE/pull/9120))
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- Remove Barcodebuddy [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#9135](https://github.com/community-scripts/ProxmoxVE/pull/9135))
|
||||
- Downgrade Swizzin to Debian 12 Bookworm [@MickLesk](https://github.com/MickLesk) ([#9116](https://github.com/community-scripts/ProxmoxVE/pull/9116))
|
||||
|
||||
## 2025-11-12
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Miniflux ([#9091](https://github.com/community-scripts/ProxmoxVE/pull/9091))
|
||||
- Splunk Enterprise ([#9090](https://github.com/community-scripts/ProxmoxVE/pull/9090))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- openwebui: Python version usage | core: zsh completion install [@MickLesk](https://github.com/MickLesk) ([#9079](https://github.com/community-scripts/ProxmoxVE/pull/9079))
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- evcc: add missing fi in update [@MichaelVetter1979](https://github.com/MichaelVetter1979) ([#9107](https://github.com/community-scripts/ProxmoxVE/pull/9107))
|
||||
- PeaNUT: use clean install flag during update [@vhsdream](https://github.com/vhsdream) ([#9100](https://github.com/community-scripts/ProxmoxVE/pull/9100))
|
||||
- Tududi: Create new env file from example; fix installation & update [@vhsdream](https://github.com/vhsdream) ([#9097](https://github.com/community-scripts/ProxmoxVE/pull/9097))
|
||||
- openwebui: Python version usage | core: zsh completion install [@MickLesk](https://github.com/MickLesk) ([#9079](https://github.com/community-scripts/ProxmoxVE/pull/9079))
|
||||
- Refactor: evcc [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9057](https://github.com/community-scripts/ProxmoxVE/pull/9057))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
module proxmox-api
|
||||
|
||||
go 1.24.0
|
||||
go 1.23.2
|
||||
|
||||
require (
|
||||
github.com/gorilla/mux v1.8.1
|
||||
@@ -17,7 +17,7 @@ require (
|
||||
github.com/xdg-go/scram v1.1.2 // indirect
|
||||
github.com/xdg-go/stringprep v1.0.4 // indirect
|
||||
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
|
||||
golang.org/x/crypto v0.45.0 // indirect
|
||||
golang.org/x/sync v0.18.0 // indirect
|
||||
golang.org/x/text v0.31.0 // indirect
|
||||
golang.org/x/crypto v0.35.0 // indirect
|
||||
golang.org/x/sync v0.11.0 // indirect
|
||||
golang.org/x/text v0.22.0 // indirect
|
||||
)
|
||||
|
||||
12
api/go.sum
12
api/go.sum
@@ -27,16 +27,16 @@ go.mongodb.org/mongo-driver v1.17.2 h1:gvZyk8352qSfzyZ2UMWcpDpMSGEr1eqE4T793Sqyh
|
||||
go.mongodb.org/mongo-driver v1.17.2/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||
golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q=
|
||||
golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4=
|
||||
golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs=
|
||||
golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ=
|
||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||
golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=
|
||||
golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
@@ -48,8 +48,8 @@ golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
|
||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
||||
golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
|
||||
golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
|
||||
|
||||
11
ct/2fauth.sh
11
ct/2fauth.sh
@@ -54,9 +54,18 @@ function update_script() {
|
||||
chown -R www-data: "/opt/2fauth"
|
||||
chmod -R 755 "/opt/2fauth"
|
||||
export COMPOSER_ALLOW_SUPERUSER=1
|
||||
$STD composer install --no-dev --prefer-dist
|
||||
$STD composer install --no-dev --prefer-source
|
||||
php artisan 2fauth:install
|
||||
$STD systemctl restart nginx
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
if dpkg -l | grep -q 'php8.2'; then
|
||||
$STD apt remove --purge -y php8.2*
|
||||
fi
|
||||
$STD apt -y autoremove
|
||||
$STD apt -y autoclean
|
||||
$STD apt -y clean
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -62,7 +62,6 @@ function update_script() {
|
||||
cd /opt/adventurelog/frontend || exit
|
||||
$STD pnpm i
|
||||
$STD pnpm build
|
||||
rm -rf /opt/adventurelog-backup
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Services"
|
||||
@@ -70,6 +69,10 @@ function update_script() {
|
||||
systemctl start adventurelog-backend
|
||||
systemctl start adventurelog-frontend
|
||||
msg_ok "Services Started"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf /opt/adventurelog-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -38,13 +38,15 @@ function update_script() {
|
||||
curl -fsSL -o tika-server-standard-${RELEASE}.jar "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar"
|
||||
mv --force tika-server-standard.jar tika-server-standard-prev-version.jar
|
||||
mv tika-server-standard-${RELEASE}.jar tika-server-standard.jar
|
||||
rm -rf /opt/apache-tika/tika-server-standard-prev-version.jar
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache-tika
|
||||
msg_ok "Started Service"
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf /opt/apache-tika/tika-server-standard-prev-version.jar
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||
|
||||
@@ -31,11 +31,15 @@ function update_script() {
|
||||
fi
|
||||
|
||||
if check_for_gh_release "authelia" "authelia/authelia"; then
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
|
||||
fetch_and_deploy_gh_release "authelia" "authelia/authelia" "binary"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -39,13 +39,16 @@ function update_script() {
|
||||
curl -fsSL "https://github.com/garethgeorge/backrest/releases/download/v${RELEASE}/backrest_Linux_x86_64.tar.gz" -o "$temp_file"
|
||||
tar xzf $temp_file -C /opt/backrest/bin
|
||||
chmod +x /opt/backrest/bin/backrest
|
||||
rm -f "$temp_file"
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start backrest
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -f "$temp_file"
|
||||
msg_ok "Cleaned up"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
|
||||
@@ -47,12 +47,15 @@ function update_script() {
|
||||
chmod -R 755 /opt/baikal/
|
||||
cd /opt/baikal
|
||||
$STD composer install
|
||||
rm -rf /opt/baikal-backup
|
||||
msg_ok "Configured Baikal"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache2
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/baikal-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -54,12 +54,15 @@ function update_script() {
|
||||
$STD php artisan route:cache
|
||||
$STD php artisan event:cache
|
||||
chown -R www-data:www-data /opt/bar-assistant
|
||||
rm -rf /opt/bar-assistant-backup
|
||||
msg_ok "Updated Bar-Assistant"
|
||||
|
||||
msg_info "Starting nginx"
|
||||
systemctl start nginx
|
||||
msg_ok "Started nginx"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/bar-assistant-backup
|
||||
msg_ok "Cleaned"
|
||||
fi
|
||||
|
||||
if check_for_gh_release "vue-salt-rim" "karlomikus/vue-salt-rim"; then
|
||||
@@ -78,12 +81,15 @@ function update_script() {
|
||||
cd /opt/vue-salt-rim
|
||||
$STD npm install
|
||||
$STD npm run build
|
||||
rm -rf /opt/vue-salt-rim-backup
|
||||
msg_ok "Updated Vue Salt Rim"
|
||||
|
||||
msg_info "Starting nginx"
|
||||
systemctl start nginx
|
||||
msg_ok "Started nginx"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/vue-salt-rim-backup
|
||||
msg_ok "Cleaned"
|
||||
fi
|
||||
|
||||
if check_for_gh_release "meilisearch" "meilisearch/meilisearch"; then
|
||||
|
||||
69
ct/barcode-buddy.sh
Normal file
69
ct/barcode-buddy.sh
Normal file
@@ -0,0 +1,69 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: bvdberg01
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/Forceu/barcodebuddy
|
||||
|
||||
APP="Barcode-Buddy"
|
||||
var_tags="${var_tags:-grocery;household}"
|
||||
var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-3}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if [[ ! -d /opt/barcodebuddy ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "barcodebuddy" "Forceu/barcodebuddy"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop apache2
|
||||
systemctl stop barcodebuddy
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Backing up data"
|
||||
mv /opt/barcodebuddy/ /opt/barcodebuddy-backup
|
||||
msg_ok "Backed up data"
|
||||
|
||||
fetch_and_deploy_gh_release "barcodebuddy" "Forceu/barcodebuddy"
|
||||
|
||||
msg_info "Configuring ${APP}"
|
||||
cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data
|
||||
chown -R www-data:www-data /opt/barcodebuddy/data
|
||||
msg_ok "Configured ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache2
|
||||
systemctl start barcodebuddy
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -r /opt/barcodebuddy-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
||||
@@ -57,12 +57,15 @@ function update_script() {
|
||||
chmod -R 755 /opt/bookstack /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads /opt/bookstack/storage
|
||||
chmod -R 775 /opt/bookstack/storage /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads
|
||||
chmod -R 640 /opt/bookstack/.env
|
||||
rm -rf /opt/bookstack-backup
|
||||
msg_ok "Configured BookStack"
|
||||
|
||||
msg_info "Starting Apache2"
|
||||
systemctl start apache2
|
||||
msg_ok "Started Apache2"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf /opt/bookstack-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -7,8 +7,8 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
||||
|
||||
APP="Change Detection"
|
||||
var_tags="${var_tags:-monitoring;crawler}"
|
||||
var_cpu="${var_cpu:-4}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
|
||||
@@ -109,7 +109,6 @@ function update_script() {
|
||||
fi
|
||||
$STD uv run python manage.py migrate --noinput
|
||||
$STD uv run python manage.py collectstatic --noinput
|
||||
rm -f /tmp/dispatcharr_db_*.sql
|
||||
msg_ok "Migrations Complete"
|
||||
|
||||
msg_info "Starting Services"
|
||||
@@ -118,6 +117,10 @@ function update_script() {
|
||||
systemctl start dispatcharr-celerybeat
|
||||
systemctl start dispatcharr-daphne
|
||||
msg_ok "Started Services"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -f /tmp/dispatcharr_db_*.sql
|
||||
msg_ok "Cleanup completed"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -76,6 +76,11 @@ function update_script() {
|
||||
portainer/agent
|
||||
msg_ok "Updated Portainer Agent"
|
||||
fi
|
||||
|
||||
msg_info "Cleaning up"
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleanup complete"
|
||||
msg_ok "Updated successfully!"
|
||||
exit
|
||||
}
|
||||
|
||||
11
ct/dockge.sh
11
ct/dockge.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-18}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -27,12 +27,21 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
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}"
|
||||
cd /opt/dockge
|
||||
$STD docker compose pull
|
||||
$STD docker compose up -d
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
@@ -44,18 +45,22 @@ function update_script() {
|
||||
|
||||
fetch_and_deploy_gh_release "docmost" "docmost/docmost"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
msg_info "Updating Docmost"
|
||||
cd /opt/docmost
|
||||
mv /opt/.env /opt/docmost/.env
|
||||
mv /opt/data /opt/docmost/data
|
||||
$STD pnpm install --force
|
||||
$STD pnpm build
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated Docmost"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start docmost
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -50,13 +50,16 @@ function update_script() {
|
||||
$STD turbo run build --filter=@documenso/remix
|
||||
$STD npm run prisma:migrate-deploy
|
||||
$STD turbo daemon stop
|
||||
rm -rf /opt/v${RELEASE}.zip
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start documenso
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf /opt/v${RELEASE}.zip
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -20,15 +20,15 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /usr/share/dolibarr ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_error "To update ${APP}, use the applications web interface."
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /usr/share/dolibarr ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_error "To update ${APP}, use the applications web interface."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
@@ -38,4 +38,4 @@ 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}/dolibarr/install${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/dolibarr/install${CL}"
|
||||
|
||||
@@ -1,67 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: CrazyWolf13
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/Lissy93/domain-locker
|
||||
|
||||
APP="Domain-Locker"
|
||||
var_tags="${var_tags:-Monitoring}"
|
||||
var_cpu="${var_cpu:-4}"
|
||||
var_ram="${var_ram:-10240}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/domain-locker ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "domain-locker" "Lissy93/domain-locker"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop domain-locker
|
||||
msg_info "Service stopped"
|
||||
|
||||
PG_VERSION="17" setup_postgresql
|
||||
setup_nodejs
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "domain-locker" "Lissy93/domain-locker"
|
||||
|
||||
msg_info "Installing Modules (patience)"
|
||||
cd /opt/domain-locker
|
||||
$STD npm install
|
||||
msg_ok "Installed Modules"
|
||||
|
||||
msg_info "Building Domain-Locker (a lot of patience)"
|
||||
set -a
|
||||
source /opt/domain-locker.env
|
||||
set +a
|
||||
$STD npm run build
|
||||
msg_info "Built Domain-Locker"
|
||||
|
||||
msg_info "Restarting Services"
|
||||
systemctl start domain-locker
|
||||
msg_ok "Restarted Services"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
||||
@@ -20,45 +20,41 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/domain-monitor ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/domain-monitor ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "domain-monitor" "Hosteroid/domain-monitor"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop apache2
|
||||
msg_info "Service stopped"
|
||||
|
||||
msg_info "Creating backup"
|
||||
mv /opt/domain-monitor/.env /opt
|
||||
msg_ok "Created backup"
|
||||
|
||||
setup_composer
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "domain-monitor" "Hosteroid/domain-monitor" "prebuild" "latest" "/opt/domain-monitor" "domain-monitor-v*.zip"
|
||||
|
||||
msg_info "Updating Domain Monitor"
|
||||
cd /opt/domain-monitor
|
||||
$STD composer install
|
||||
msg_ok "Updated Domain Monitor"
|
||||
|
||||
msg_info "Restoring backup"
|
||||
mv /opt/.env /opt/domain-monitor
|
||||
msg_ok "Restored backup"
|
||||
|
||||
msg_info "Restarting Services"
|
||||
systemctl reload apache2
|
||||
msg_ok "Restarted Services"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
fi
|
||||
|
||||
if ! grep -Fq "root /usr/bin/php /opt/domain-monitor/cron/check_domains.php" /etc/crontab; then
|
||||
echo "0 0 * * * root /usr/bin/php /opt/domain-monitor/cron/check_domains.php" >>/etc/crontab
|
||||
fi
|
||||
|
||||
if check_for_gh_release "domain-monitor" "Hosteroid/domain-monitor"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop apache2
|
||||
msg_info "Service stopped"
|
||||
|
||||
msg_info "Creating backup"
|
||||
mv /opt/domain-monitor/.env /opt
|
||||
msg_ok "Created backup"
|
||||
|
||||
setup_composer
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "domain-monitor" "Hosteroid/domain-monitor" "prebuild" "latest" "/opt/domain-monitor" "domain-monitor-v*.zip"
|
||||
|
||||
msg_info "Updating Domain Monitor"
|
||||
cd /opt/domain-monitor
|
||||
$STD composer install
|
||||
msg_ok "Updated Domain Monitor"
|
||||
|
||||
msg_info "Restoring backup"
|
||||
mv /opt/.env /opt/domain-monitor
|
||||
msg_ok "Restored backup"
|
||||
|
||||
msg_info "Restarting Services"
|
||||
systemctl reload apache2
|
||||
msg_ok "Restarted Services"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -20,6 +20,13 @@ color
|
||||
catch_errors
|
||||
|
||||
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
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
@@ -31,7 +38,14 @@ function update_script() {
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -31,14 +31,22 @@ function update_script() {
|
||||
if check_for_gh_release "duplicati" "duplicati/duplicati"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop duplicati
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Stopped Service"
|
||||
=======
|
||||
msg_info "Stopped Service"
|
||||
>>>>>>> main
|
||||
|
||||
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start duplicati
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
22
ct/emqx.sh
22
ct/emqx.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -32,9 +32,9 @@ function update_script() {
|
||||
|
||||
msg_info "Removing old EMQX"
|
||||
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
|
||||
$STD apt-get remove --purge -y emqx-enterprise
|
||||
$STD apt remove --purge -y emqx-enterprise
|
||||
else
|
||||
msg_ok "No old EMQX package found"
|
||||
fi
|
||||
@@ -46,15 +46,25 @@ function update_script() {
|
||||
msg_ok "Downloaded EMQX"
|
||||
|
||||
msg_info "Installing EMQX"
|
||||
$STD apt-get install -y "$DEB_FILE"
|
||||
rm -f "$DEB_FILE"
|
||||
$STD apt install -y "$DEB_FILE"
|
||||
echo "$RELEASE" >~/.emqx
|
||||
rm -f "$DEB_FILE"
|
||||
msg_ok "Installed EMQX v${RELEASE}"
|
||||
|
||||
msg_info "Starting EMQX"
|
||||
msg_info "Starting Service"
|
||||
systemctl start emqx
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
echo "$RELEASE" >~/.emqx
|
||||
msg_ok "Started EMQX"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -f "$DEB_FILE"
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
else
|
||||
msg_ok "No update required. EMQX is already at v${RELEASE}"
|
||||
fi
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-5}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -27,23 +27,28 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
if check_for_gh_release "ersatztv" "ErsatzTV/ErsatzTV"; then
|
||||
msg_info "Stopping ErsatzTV"
|
||||
msg_info "Stopping Service"
|
||||
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"
|
||||
|
||||
msg_info "Starting ErsatzTV"
|
||||
msg_info "Starting Service"
|
||||
systemctl start ersatzTV
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "ErsatzTV Updated successfully"
|
||||
=======
|
||||
msg_ok "Started ErsatzTV"
|
||||
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
|
||||
if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then
|
||||
msg_info "Stopping ErsatzTV"
|
||||
msg_info "Stopping Service"
|
||||
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"
|
||||
|
||||
@@ -54,10 +59,15 @@ function update_script() {
|
||||
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/local/bin/ffprobe
|
||||
msg_ok "ffmpeg links set"
|
||||
|
||||
msg_info "Starting ErsatzTV"
|
||||
msg_info "Starting Service"
|
||||
systemctl start ersatzTV
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "ErsatzTV-ffmpeg Updated successfully"
|
||||
=======
|
||||
msg_ok "Started ErsatzTV"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -81,7 +81,11 @@ EOF
|
||||
msg_info "Starting Service"
|
||||
systemctl start esphomeDashboard
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
13
ct/evcc.sh
13
ct/evcc.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -26,6 +26,7 @@ function update_script() {
|
||||
if ! command -v evcc >/dev/null 2>&1; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit 1
|
||||
<<<<<<< HEAD
|
||||
fi
|
||||
|
||||
if [[ -f /etc/apt/sources.list.d/evcc-stable.list ]]; then
|
||||
@@ -35,7 +36,17 @@ function update_script() {
|
||||
"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"
|
||||
$STD apt update
|
||||
$STD apt --only-upgrade install -y evcc
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -31,20 +31,28 @@ function update_script() {
|
||||
if check_for_gh_release "excalidraw" "excalidraw/excalidraw"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop excalidraw
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Stopped Service"
|
||||
=======
|
||||
msg_info "Stopped Service"
|
||||
>>>>>>> main
|
||||
|
||||
rm -rf /opt/excalidraw
|
||||
fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
|
||||
|
||||
msg_info "Updating $APP"
|
||||
msg_info "Updating Excalidraw"
|
||||
cd /opt/excalidraw
|
||||
$STD yarn
|
||||
msg_ok "Updated $APP"
|
||||
msg_ok "Updated Excalidraw"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start excalidraw
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
70
ct/fenrus.sh
Normal file
70
ct/fenrus.sh
Normal file
@@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 tteck
|
||||
# Author: tteck (tteckster) | Co-Author: Scorpoon
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/revenz/Fenrus
|
||||
|
||||
APP="Fenrus"
|
||||
var_tags="${var_tags:-dashboard}"
|
||||
var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/${APP} ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_error "Currently we don't provide an update function for this ${APP}."
|
||||
exit
|
||||
msg_info "Updating ${APP}"
|
||||
systemctl stop ${APP}
|
||||
git clone https://github.com/revenz/Fenrus.git
|
||||
cd Fenrus
|
||||
gitVersionNumber=$(git rev-parse HEAD)
|
||||
|
||||
if [[ "${gitVersionNumber}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
mkdir /opt/fenrus-data-backup
|
||||
cp -r "/opt/${APP}/data/" /opt/fenrus-data-backup/data
|
||||
if [[ ! -d /opt/fenrus-data-backup/data ]]; then
|
||||
msg_error "Backup of data folder failed! exiting..."
|
||||
rm -r /opt/fenrus-data-backup/
|
||||
exit
|
||||
fi
|
||||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
dotnet publish -c Release -o "/opt/${APP}/" Fenrus.csproj
|
||||
cp -r /opt/fenrus-data-backup/data/ "/opt/${APP}/"
|
||||
echo "${gitVersionNumber}" >"/opt/${APP}_version.txt"
|
||||
rm -r /opt/fenrus-data-backup/
|
||||
msg_ok "Updated $APP"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already up to date"
|
||||
fi
|
||||
cd ..
|
||||
rm -r Fenrus/
|
||||
|
||||
systemctl start ${APP}
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}"
|
||||
16
ct/fhem.sh
16
ct/fhem.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -20,6 +20,13 @@ color
|
||||
catch_errors
|
||||
|
||||
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
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
@@ -31,7 +38,14 @@ function update_script() {
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -28,38 +28,44 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
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)
|
||||
if [[ "${update_available}" == "true" ]]; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop fileflows
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Stopped Service"
|
||||
=======
|
||||
msg_info "Stopped Service"
|
||||
>>>>>>> main
|
||||
|
||||
msg_info "Creating Backup"
|
||||
backup_filename="/opt/${APP}_backup_$(date +%F).tar.gz"
|
||||
tar -czf "$backup_filename" -C /opt/fileflows Data
|
||||
msg_ok "Backup Created"
|
||||
|
||||
msg_info "Updating $APP to latest version"
|
||||
msg_info "Updating FileFlows"
|
||||
temp_file=$(mktemp)
|
||||
curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
|
||||
$STD unzip -o -d /opt/fileflows "$temp_file"
|
||||
rm -rf "$temp_file"
|
||||
rm -rf "$backup_filename"
|
||||
msg_ok "Updated $APP to latest version"
|
||||
msg_ok "Updated FileFlows"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start fileflows
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf "$temp_file"
|
||||
rm -rf "$backup_filename"
|
||||
msg_ok "Cleanup Completed"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at latest version"
|
||||
fi
|
||||
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -28,66 +28,45 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "firefly" "firefly-iii/firefly-iii"; then
|
||||
msg_info "Stopping Apache2"
|
||||
systemctl stop apache2
|
||||
msg_ok "Stopped Apache2"
|
||||
|
||||
msg_info "Backing up data"
|
||||
cp /opt/firefly/.env /opt/.env
|
||||
cp -r /opt/firefly/storage /opt/storage
|
||||
|
||||
if [[ -d /opt/firefly/dataimporter ]]; then
|
||||
cp /opt/firefly/dataimporter/.env /opt/dataimporter.env
|
||||
IMPORTER_INSTALLED=1
|
||||
fi
|
||||
msg_ok "Backed up data"
|
||||
|
||||
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
|
||||
setup_composer
|
||||
|
||||
msg_info "Updating Firefly"
|
||||
rm -rf /opt/firefly/storage
|
||||
cp -r /opt/storage /opt/firefly/storage
|
||||
cp /opt/.env /opt/firefly/.env
|
||||
cp -r /opt/storage /opt/firefly/storage
|
||||
|
||||
chown -R www-data:www-data /opt/firefly
|
||||
chmod -R 775 /opt/firefly/storage
|
||||
mkdir -p /opt/firefly/storage/framework/cache/data
|
||||
mkdir -p /opt/firefly/storage/framework/sessions
|
||||
mkdir -p /opt/firefly/storage/framework/views
|
||||
mkdir -p /opt/firefly/storage/logs
|
||||
mkdir -p /opt/firefly/bootstrap/cache
|
||||
chown -R www-data:www-data /opt/firefly/{storage,bootstrap/cache}
|
||||
find /opt/firefly/storage -type d -exec chmod 775 {} \;
|
||||
find /opt/firefly/storage -type f -exec chmod 664 {} \;
|
||||
mkdir -p /opt/firefly/storage/framework/{cache/data,sessions,views}
|
||||
$STD sudo -u www-data php /opt/firefly/artisan cache:clear
|
||||
cd /opt/firefly
|
||||
$STD runuser -u www-data -- composer install --no-dev --optimize-autoloader
|
||||
$STD runuser -u www-data -- composer dump-autoload -o
|
||||
|
||||
$STD runuser -u www-data -- php artisan cache:clear
|
||||
$STD runuser -u www-data -- php artisan config:clear
|
||||
$STD runuser -u www-data -- php artisan route:clear
|
||||
$STD runuser -u www-data -- php artisan view:clear
|
||||
|
||||
$STD runuser -u www-data -- php artisan migrate --seed --force
|
||||
$STD runuser -u www-data -- php artisan firefly-iii:upgrade-database
|
||||
$STD runuser -u www-data -- php artisan firefly-iii:laravel-passport-keys
|
||||
|
||||
$STD runuser -u www-data -- php artisan storage:link || true
|
||||
$STD runuser -u www-data -- php artisan optimize
|
||||
$STD php artisan migrate --seed --force
|
||||
$STD php artisan cache:clear
|
||||
$STD php artisan view:clear
|
||||
$STD php artisan firefly-iii:upgrade-database
|
||||
$STD php artisan firefly-iii:laravel-passport-keys
|
||||
msg_ok "Updated Firefly"
|
||||
|
||||
if [[ "${IMPORTER_INSTALLED:-0}" -eq 1 ]]; then
|
||||
msg_info "Updating Firefly Importer"
|
||||
IMPORTER_RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/data-importer/releases/latest | grep tag_name | cut -d '"' -f 4 | sed 's/v//')
|
||||
rm -rf /opt/firefly/dataimporter
|
||||
mkdir -p /opt/firefly/dataimporter
|
||||
curl -fsSL "https://github.com/firefly-iii/data-importer/releases/download/v${IMPORTER_RELEASE}/DataImporter-v${IMPORTER_RELEASE}.tar.gz" -o "/opt/DataImporter.tar.gz"
|
||||
tar -xzf /opt/DataImporter.tar.gz -C /opt/firefly/dataimporter
|
||||
if [[ -f /opt/dataimporter.env ]]; then
|
||||
cp /opt/dataimporter.env /opt/firefly/dataimporter/.env
|
||||
fi
|
||||
chown -R www-data:www-data /opt/firefly/dataimporter
|
||||
rm -f /opt/DataImporter.tar.gz
|
||||
msg_ok "Updated Firefly Importer"
|
||||
fi
|
||||
msg_info "Starting Apache2"
|
||||
systemctl start apache2
|
||||
msg_ok "Started Apache2"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -28,6 +28,10 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
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
|
||||
msg_error "Wrong Debian version detected!"
|
||||
msg_error "You must upgrade your LXC to Debian Trixie before updating."
|
||||
@@ -35,16 +39,26 @@ function update_script() {
|
||||
fi
|
||||
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr"; then
|
||||
msg_info "Stopping service"
|
||||
>>>>>>> main
|
||||
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
|
||||
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
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Started service"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_disk="${var_disk:-10}"
|
||||
var_cpu="${var_cpu:-4}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -27,12 +27,20 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
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}"
|
||||
systemctl stop flowise
|
||||
npm install -g flowise --upgrade
|
||||
systemctl start flowise
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-3}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-7}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -31,13 +31,16 @@ function update_script() {
|
||||
if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop fluid-calendar
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Stopped Service"
|
||||
=======
|
||||
msg_info "Stopped Service"
|
||||
>>>>>>> main
|
||||
|
||||
cp /opt/fluid-calendar/.env /opt/fluid.env
|
||||
rm -rf /opt/fluid-calendar
|
||||
fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
|
||||
CLEAN_INSTALL=1 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
|
||||
cd /opt/fluid-calendar
|
||||
export NEXT_TELEMETRY_DISABLED=1
|
||||
@@ -45,12 +48,16 @@ function update_script() {
|
||||
$STD npm run prisma:generate
|
||||
$STD npx prisma migrate deploy
|
||||
$STD npm run build:os
|
||||
msg_ok "Updated $APP"
|
||||
msg_ok "Updated Fluid Calendar"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start fluid-calendar
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -31,23 +31,24 @@ function update_script() {
|
||||
systemctl stop forgejo
|
||||
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//')
|
||||
curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "forgejo-$RELEASE-linux-amd64"
|
||||
rm -rf /opt/forgejo/*
|
||||
cp -r forgejo-$RELEASE-linux-amd64 /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
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Cleaning"
|
||||
rm -rf forgejo-$RELEASE-linux-amd64
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated Forgejo"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start forgejo
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -20,16 +20,16 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if [[ ! -f /lib/systemd/system/freepbx.service ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_error "Currently we don't provide an update function for this ${APP}."
|
||||
if [[ ! -f /lib/systemd/system/freepbx.service ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_error "Currently we don't provide an update function for this ${APP}."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -33,7 +33,10 @@ function update_script() {
|
||||
chmod +x /opt/freshrss/cli/sensitive-log.sh
|
||||
systemctl restart apache2
|
||||
msg_ok "Fixed wrong permissions"
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
exit
|
||||
>>>>>>> main
|
||||
else
|
||||
msg_error "FreshRSS should be updated via the user interface."
|
||||
exit
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-5}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -44,7 +44,7 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
if ! command -v git &>/dev/null; then
|
||||
$STD apt-get install -y git
|
||||
$STD apt install -y git
|
||||
fi
|
||||
|
||||
msg_info "Stopping service $SERVICE_NAME"
|
||||
@@ -60,7 +60,11 @@ function update_script() {
|
||||
msg_info "Starting service $SERVICE_NAME"
|
||||
systemctl start "$SERVICE_NAME"
|
||||
msg_ok "Started service $SERVICE_NAME"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -39,8 +39,7 @@ function update_script() {
|
||||
fi
|
||||
|
||||
mv /opt/gatus/config/config.yaml /opt
|
||||
rm -rf /opt/gatus
|
||||
fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
|
||||
|
||||
msg_info "Updating Gatus"
|
||||
cd /opt/gatus
|
||||
@@ -53,7 +52,11 @@ function update_script() {
|
||||
msg_info "Starting Service"
|
||||
systemctl start gatus
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated Successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -56,7 +56,15 @@ function update_script() {
|
||||
msg_info "Starting Service"
|
||||
systemctl start ghostfolio
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
$STD npm cache clean --force
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ 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_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -96,17 +96,15 @@ EOF
|
||||
ln -sf /opt/bun/bin/bun /usr/local/bin/bunx
|
||||
msg_ok "Installed Bun"
|
||||
|
||||
rm -rf /opt/gitea-mirror
|
||||
fetch_and_deploy_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"
|
||||
CLEAN_INSTALL=1 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
|
||||
$STD bun run setup
|
||||
$STD bun run build
|
||||
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
|
||||
msg_ok "Updated and rebuilt ${APP}"
|
||||
msg_ok "Updated Gitea-Mirror"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp /opt/gitea-mirror-backup/data/* /opt/gitea-mirror/data
|
||||
@@ -114,8 +112,13 @@ EOF
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start gitea-mirror
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Service Started"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
13
ct/gitea.sh
13
ct/gitea.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -29,18 +29,23 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
if check_for_gh_release "gitea" "go-gitea/gitea"; then
|
||||
msg_info "Stopping service"
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop gitea
|
||||
msg_ok "Service stopped"
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
rm -rf /usr/local/bin/gitea
|
||||
fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64"
|
||||
chmod +x /usr/local/bin/gitea
|
||||
|
||||
msg_info "Starting service"
|
||||
msg_info "Starting Service"
|
||||
systemctl start gitea
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Started service"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -39,7 +39,11 @@ function update_script() {
|
||||
msg_info "Starting Service"
|
||||
systemctl start glance
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
@@ -27,11 +28,17 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
msg_info "Updating $APP LXC"
|
||||
msg_info "Updating Globaleaks"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated Globaleaks"
|
||||
msg_ok "Updated successfully"
|
||||
exit
|
||||
=======
|
||||
msg_ok "Updated $APP LXC"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
13
ct/go2rtc.sh
13
ct/go2rtc.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -29,16 +29,21 @@ function update_script() {
|
||||
fi
|
||||
|
||||
if check_for_gh_release "go2rtc" "AlexxIT/go2rtc"; then
|
||||
msg_info "Stopping service"
|
||||
msg_info "Stopping Service"
|
||||
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"
|
||||
|
||||
msg_info "Starting service"
|
||||
msg_info "Starting Service"
|
||||
systemctl start go2rtc
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Started service"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -38,8 +38,12 @@ function update_script() {
|
||||
msg_info "Starting Services"
|
||||
systemctl start goaway
|
||||
msg_ok "Started Services"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -37,7 +37,11 @@ function update_script() {
|
||||
msg_info "Starting Service"
|
||||
systemctl start gokapi
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
@@ -20,29 +20,36 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
<<<<<<< HEAD
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if ! dpkg -s grafana >/dev/null 2>&1; then
|
||||
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit 1
|
||||
exit
|
||||
fi
|
||||
|
||||
if [[ -f /etc/apt/sources.list.d/grafana.list ]] || [[ ! -f /etc/apt/sources.list.d/grafana.sources ]]; then
|
||||
setup_deb822_repo \
|
||||
"grafana" \
|
||||
"https://apt.grafana.com/gpg.key" \
|
||||
"https://apt.grafana.com" \
|
||||
"stable" \
|
||||
"main"
|
||||
fi
|
||||
|
||||
msg_info "Updating Grafana LXC"
|
||||
msg_info "Updating Grafana"
|
||||
$STD apt update
|
||||
$STD apt --only-upgrade install -y grafana
|
||||
msg_ok "Updated successfully!"
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated Grafana"
|
||||
msg_ok "Updated successfully"
|
||||
exit
|
||||
=======
|
||||
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 ${APP}"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated successfully!"
|
||||
exit
|
||||
>>>>>>> main
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -28,6 +28,21 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
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"
|
||||
systemctl stop graylog-datanode
|
||||
@@ -60,6 +75,7 @@ function update_script() {
|
||||
systemctl start graylog-server
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
13
ct/grist.sh
13
ct/grist.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -41,8 +41,13 @@ function update_script() {
|
||||
|
||||
fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball"
|
||||
|
||||
<<<<<<< HEAD
|
||||
msg_info "Updating Grist"
|
||||
mkdir -p grist/docs
|
||||
=======
|
||||
msg_info "Updating ${APP}"
|
||||
mkdir -p /opt/grist/docs
|
||||
>>>>>>> main
|
||||
cp -n /opt/grist_bak/.env /opt/grist/.env
|
||||
cp -r /opt/grist_bak/docs/* /opt/grist/docs/
|
||||
cp /opt/grist_bak/grist-sessions.db /opt/grist/grist-sessions.db
|
||||
@@ -51,13 +56,17 @@ function update_script() {
|
||||
$STD yarn install
|
||||
$STD yarn run build:prod
|
||||
$STD yarn run install:python
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated Grist"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start grist
|
||||
msg_ok "Started Service"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated Successfully"
|
||||
=======
|
||||
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -32,9 +32,16 @@ function update_script() {
|
||||
PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php
|
||||
fi
|
||||
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}"
|
||||
bash /var/www/html/update.sh
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -55,7 +55,10 @@ function update_script() {
|
||||
cd /opt/guardian/backend
|
||||
$STD npm ci
|
||||
$STD npm run build
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
|
||||
>>>>>>> main
|
||||
cd /opt/guardian/frontend
|
||||
$STD npm ci
|
||||
export DEPLOYMENT_MODE=standalone
|
||||
@@ -65,7 +68,11 @@ function update_script() {
|
||||
msg_info "Starting Services"
|
||||
systemctl start guardian-backend guardian-frontend
|
||||
msg_ok "Started Services"
|
||||
<<<<<<< HEAD
|
||||
msg_ok "Updated Successfully"
|
||||
=======
|
||||
msg_ok "Updated successfully!"
|
||||
>>>>>>> main
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
6
ct/headers/barcode-buddy
Normal file
6
ct/headers/barcode-buddy
Normal file
@@ -0,0 +1,6 @@
|
||||
____ __ ____ __ __
|
||||
/ __ )____ _______________ ____/ /__ / __ )__ ______/ /___/ /_ __
|
||||
/ __ / __ `/ ___/ ___/ __ \/ __ / _ \______/ __ / / / / __ / __ / / / /
|
||||
/ /_/ / /_/ / / / /__/ /_/ / /_/ / __/_____/ /_/ / /_/ / /_/ / /_/ / /_/ /
|
||||
/_____/\__,_/_/ \___/\____/\__,_/\___/ /_____/\__,_/\__,_/\__,_/\__, /
|
||||
/____/
|
||||
@@ -1,6 +0,0 @@
|
||||
____ _ __ __
|
||||
/ __ \____ ____ ___ ____ _(_)___ / / ____ _____/ /_____ _____
|
||||
/ / / / __ \/ __ `__ \/ __ `/ / __ \______/ / / __ \/ ___/ //_/ _ \/ ___/
|
||||
/ /_/ / /_/ / / / / / / /_/ / / / / /_____/ /___/ /_/ / /__/ ,< / __/ /
|
||||
/_____/\____/_/ /_/ /_/\__,_/_/_/ /_/ /_____/\____/\___/_/|_|\___/_/
|
||||
|
||||
6
ct/headers/fenrus
Normal file
6
ct/headers/fenrus
Normal file
@@ -0,0 +1,6 @@
|
||||
______
|
||||
/ ____/__ ____ _______ _______
|
||||
/ /_ / _ \/ __ \/ ___/ / / / ___/
|
||||
/ __/ / __/ / / / / / /_/ (__ )
|
||||
/_/ \___/_/ /_/_/ \__,_/____/
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
__ _ __ _ ____ ________
|
||||
/ / (_) /_ ________ / | / / |/ / ___/
|
||||
/ / / / __ \/ ___/ _ \/ |/ / /|_/ /\__ \
|
||||
/ /___/ / /_/ / / / __/ /| / / / /___/ /
|
||||
/_____/_/_.___/_/ \___/_/ |_/_/ /_//____/
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
__ ___ __ __
|
||||
/ |/ /__ / /_____ _/ /_ ____ _________
|
||||
/ /|_/ / _ \/ __/ __ `/ __ \/ __ `/ ___/ _ \
|
||||
/ / / / __/ /_/ /_/ / /_/ / /_/ (__ ) __/
|
||||
/_/ /_/\___/\__/\__,_/_.___/\__,_/____/\___/
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
__ ____ _ ______
|
||||
/ |/ (_)___ (_) __/ /_ ___ __
|
||||
/ /|_/ / / __ \/ / /_/ / / / / |/_/
|
||||
/ / / / / / / / / __/ / /_/ /> <
|
||||
/_/ /_/_/_/ /_/_/_/ /_/\__,_/_/|_|
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
_ __ __ _ ___
|
||||
/ | / /__ / /| | / (_)________ _____
|
||||
/ |/ / _ \/ __/ | / / / ___/ __ \/ ___/
|
||||
/ /| / __/ /_ | |/ / (__ ) /_/ / /
|
||||
/_/ |_/\___/\__/ |___/_/____/\____/_/
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
____ __ ____
|
||||
/ __ \____ ___________/ /_ ____ / / /_
|
||||
/ /_/ / __ `/ ___/ ___/ __ \/ __ \/ / __/
|
||||
/ ____/ /_/ (__ |__ ) /_/ / /_/ / / /_
|
||||
/_/ \__,_/____/____/_.___/\____/_/\__/
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
_____ __ __ ______ __ _
|
||||
/ ___/____ / /_ ______ / /__ / ____/___ / /____ _________ _____(_)_______
|
||||
\__ \/ __ \/ / / / / __ \/ //_/_____/ __/ / __ \/ __/ _ \/ ___/ __ \/ ___/ / ___/ _ \
|
||||
___/ / /_/ / / /_/ / / / / ,< /_____/ /___/ / / / /_/ __/ / / /_/ / / / (__ ) __/
|
||||
/____/ .___/_/\__,_/_/ /_/_/|_| /_____/_/ /_/\__/\___/_/ / .___/_/ /_/____/\___/
|
||||
/_/ /_/
|
||||
@@ -1,6 +0,0 @@
|
||||
__ __ __
|
||||
/ / / /___ ____ _____ ____ / /_ ___ _____
|
||||
/ / / / __ \/ __ `/ __ \/ __ \/ __ \/ _ \/ ___/
|
||||
/ /_/ / /_/ / /_/ / /_/ / /_/ / / / / __/ /
|
||||
\____/ .___/\__, /\____/ .___/_/ /_/\___/_/
|
||||
/_/ /____/ /_/
|
||||
@@ -33,7 +33,7 @@ function update_script() {
|
||||
systemctl stop healthchecks
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
PYTHON_VERSION="3.12" setup_uv
|
||||
fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks"
|
||||
|
||||
msg_info "Updating healthchecks"
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -29,7 +29,7 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
PYTHON_VERSION="3.12" setup_uv
|
||||
setup_uv
|
||||
|
||||
if check_for_gh_release "huntarr" "plexguide/Huntarr.io"; then
|
||||
msg_info "Stopping Service"
|
||||
|
||||
29
ct/immich.sh
29
ct/immich.sh
@@ -61,15 +61,6 @@ EOF
|
||||
msg_ok "Installed libmimalloc3"
|
||||
fi
|
||||
|
||||
if [[ ! -f /etc/apt/sources.list.d/mise.list ]]; then
|
||||
msg_info "Installing Mise"
|
||||
curl -fSs https://mise.jdx.dev/gpg-key.pub | tee /etc/apt/keyrings/mise-archive-keyring.pub 1>/dev/null
|
||||
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.pub arch=amd64] https://mise.jdx.dev/deb stable main" | tee /etc/apt/sources.list.d/mise.list
|
||||
$STD apt update
|
||||
$STD apt install -y mise
|
||||
msg_ok "Installed Mise"
|
||||
fi
|
||||
|
||||
STAGING_DIR=/opt/staging
|
||||
BASE_DIR=${STAGING_DIR}/base-images
|
||||
SOURCE_DIR=${STAGING_DIR}/image-source
|
||||
@@ -102,7 +93,7 @@ EOF
|
||||
msg_ok "Image-processing libraries up to date"
|
||||
fi
|
||||
|
||||
RELEASE="2.3.1"
|
||||
RELEASE="2.2.3"
|
||||
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
|
||||
msg_info "Stopping Services"
|
||||
systemctl stop immich-web
|
||||
@@ -130,7 +121,6 @@ EOF
|
||||
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
|
||||
SRC_DIR="${INSTALL_DIR}/source"
|
||||
APP_DIR="${INSTALL_DIR}/app"
|
||||
PLUGIN_DIR="${APP_DIR}/corePlugin"
|
||||
ML_DIR="${APP_DIR}/machine-learning"
|
||||
GEO_DIR="${INSTALL_DIR}/geodata"
|
||||
|
||||
@@ -155,7 +145,9 @@ EOF
|
||||
rm -rf "${APP_DIR:?}"/*
|
||||
)
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
|
||||
rm -rf "$SRC_DIR"
|
||||
|
||||
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
|
||||
|
||||
msg_info "Updating ${APP} web and microservices"
|
||||
cd "$SRC_DIR"/server
|
||||
@@ -188,18 +180,7 @@ EOF
|
||||
$STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
|
||||
cd "$APP_DIR"
|
||||
mv "$INSTALL_DIR"/start.sh "$APP_DIR"/bin
|
||||
|
||||
# plugins
|
||||
cd "$SRC_DIR"
|
||||
$STD mise trust --ignore ./mise.toml
|
||||
$STD mise trust ./plugins/mise.toml
|
||||
cd plugins
|
||||
$STD mise install
|
||||
$STD mise run build
|
||||
mkdir -p "$PLUGIN_DIR"
|
||||
cp -r ./dist "$PLUGIN_DIR"/dist
|
||||
cp ./manifest.json "$PLUGIN_DIR"
|
||||
msg_ok "Updated ${APP} server, web, cli and plugins"
|
||||
msg_ok "Updated ${APP} web and microservices"
|
||||
|
||||
cd "$SRC_DIR"/machine-learning
|
||||
mkdir -p "$ML_DIR" && chown -R immich:immich "$ML_DIR"
|
||||
|
||||
@@ -20,57 +20,62 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if [[ ! -d /opt/jellyseerr ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
if [[ ! -d /opt/jellyseerr ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$(node -v | cut -c2-3)" -ne 22 ]; then
|
||||
msg_info "Updating Node.js Repository"
|
||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
|
||||
msg_ok "Updating Node.js Repository"
|
||||
if [ "$(node -v | cut -c2-3)" -ne 22 ]; then
|
||||
msg_info "Updating Node.js Repository"
|
||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
|
||||
msg_ok "Updating Node.js Repository"
|
||||
|
||||
msg_info "Updating Packages"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updating Packages"
|
||||
fi
|
||||
msg_info "Updating Packages"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updating Packages"
|
||||
|
||||
cd /opt/jellyseerr
|
||||
output=$(git pull --no-rebase)
|
||||
msg_info "Cleaning up"
|
||||
apt-get -y autoremove
|
||||
apt-get -y autoclean
|
||||
msg_ok "Cleaning up"
|
||||
fi
|
||||
|
||||
pnpm_current=$(pnpm --version 2>/dev/null)
|
||||
pnpm_desired=$(grep -Po '"pnpm":\s*"\K[^"]+' /opt/jellyseerr/package.json)
|
||||
cd /opt/jellyseerr
|
||||
output=$(git pull --no-rebase)
|
||||
|
||||
if [ -z "$pnpm_current" ]; then
|
||||
msg_error "pnpm not found. Installing version $pnpm_desired..."
|
||||
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
|
||||
elif ! node -e "const semver = require('semver'); process.exit(semver.satisfies('$pnpm_current', '$pnpm_desired') ? 0 : 1)"; then
|
||||
msg_error "Updating pnpm from version $pnpm_current to $pnpm_desired..."
|
||||
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
|
||||
else
|
||||
msg_ok "pnpm is already installed and satisfies version $pnpm_desired."
|
||||
fi
|
||||
pnpm_current=$(pnpm --version 2>/dev/null)
|
||||
pnpm_desired=$(grep -Po '"pnpm":\s*"\K[^"]+' /opt/jellyseerr/package.json)
|
||||
|
||||
msg_info "Updating $APP"
|
||||
if echo "$output" | grep -q "Already up to date."; then
|
||||
msg_ok "$APP is already up to date."
|
||||
exit
|
||||
fi
|
||||
if [ -z "$pnpm_current" ]; then
|
||||
msg_error "pnpm not found. Installing version $pnpm_desired..."
|
||||
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
|
||||
elif ! node -e "const semver = require('semver'); process.exit(semver.satisfies('$pnpm_current', '$pnpm_desired') ? 0 : 1)"; then
|
||||
msg_error "Updating pnpm from version $pnpm_current to $pnpm_desired..."
|
||||
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
|
||||
else
|
||||
msg_ok "pnpm is already installed and satisfies version $pnpm_desired."
|
||||
fi
|
||||
|
||||
systemctl stop jellyseerr
|
||||
rm -rf dist .next node_modules
|
||||
export CYPRESS_INSTALL_BINARY=0
|
||||
cd /opt/jellyseerr
|
||||
$STD pnpm install --frozen-lockfile
|
||||
export NODE_OPTIONS="--max-old-space-size=3072"
|
||||
$STD pnpm build
|
||||
msg_info "Updating $APP"
|
||||
if echo "$output" | grep -q "Already up to date."; then
|
||||
msg_ok "$APP is already up to date."
|
||||
exit
|
||||
fi
|
||||
|
||||
cat <<EOF >/etc/systemd/system/jellyseerr.service
|
||||
systemctl stop jellyseerr
|
||||
rm -rf dist .next node_modules
|
||||
export CYPRESS_INSTALL_BINARY=0
|
||||
cd /opt/jellyseerr
|
||||
$STD pnpm install --frozen-lockfile
|
||||
export NODE_OPTIONS="--max-old-space-size=3072"
|
||||
$STD pnpm build
|
||||
|
||||
cat <<EOF >/etc/systemd/system/jellyseerr.service
|
||||
[Unit]
|
||||
Description=jellyseerr Service
|
||||
After=network.target
|
||||
@@ -86,10 +91,10 @@ ExecStart=/usr/bin/node dist/index.js
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
|
||||
systemctl daemon-reload
|
||||
systemctl start jellyseerr
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
systemctl daemon-reload
|
||||
systemctl start jellyseerr
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -8,7 +8,7 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m
|
||||
APP="jotty"
|
||||
var_tags="${var_tags:-tasks;notes}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
|
||||
@@ -55,7 +55,7 @@ function update_script() {
|
||||
systemctl daemon-reload
|
||||
fi
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "karakeep" "karakeep-app/karakeep"
|
||||
fetch_and_deploy_gh_release "karakeep" "karakeep-app/karakeep"
|
||||
if command -v corepack >/dev/null; then
|
||||
$STD corepack disable
|
||||
fi
|
||||
@@ -82,7 +82,7 @@ function update_script() {
|
||||
cd /opt/karakeep/packages/db
|
||||
$STD pnpm migrate
|
||||
$STD pnpm store prune
|
||||
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE#v}/" /etc/karakeep/karakeep.env
|
||||
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env
|
||||
msg_ok "Updated Karakeep"
|
||||
|
||||
msg_info "Starting Services"
|
||||
|
||||
47
ct/kasm.sh
47
ct/kasm.sh
@@ -25,51 +25,14 @@ function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/kasm/current ]]; then
|
||||
if [[ ! -d /var ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
msg_info "Checking for new version"
|
||||
CURRENT_VERSION=$(readlink -f /opt/kasm/current | awk -F'/' '{print $4}')
|
||||
KASM_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' | head -n 1)
|
||||
if [[ -z "$KASM_URL" ]]; then
|
||||
msg_error "Unable to detect latest Kasm release URL."
|
||||
exit 1
|
||||
fi
|
||||
KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
|
||||
msg_info "Checked for new version"
|
||||
|
||||
msg_info "Removing outdated docker-compose plugin"
|
||||
[ -f ~/.docker/cli-plugins/docker-compose ] && rm -rf ~/.docker/cli-plugins/docker-compose
|
||||
msg_ok "Removed outdated docker-compose plugin"
|
||||
|
||||
if [[ -z "$CURRENT_VERSION" ]] || [[ "$KASM_VERSION" != "$CURRENT_VERSION" ]]; then
|
||||
msg_info "Updating Kasm"
|
||||
cd /tmp
|
||||
|
||||
msg_warn "WARNING: This script will run an external installer from a third-party source (https://www.kasmweb.com/)."
|
||||
msg_warn "The following code is NOT maintained or audited by our repository."
|
||||
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
|
||||
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ upgrade.sh inside tar.gz $KASM_URL"
|
||||
echo
|
||||
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
|
||||
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
|
||||
msg_error "Aborted by user. No changes have been made."
|
||||
exit 10
|
||||
fi
|
||||
curl -fsSL -o "/tmp/kasm_release_${KASM_VERSION}.tar.gz" "$KASM_URL"
|
||||
tar -xf "kasm_release_${KASM_VERSION}.tar.gz"
|
||||
chmod +x /tmp/kasm_release/install.sh
|
||||
rm -f /tmp/kasm_release_${KASM_VERSION}.tar.gz
|
||||
|
||||
bash /tmp/kasm_release/upgrade.sh --proxy-port 443
|
||||
rm -rf /tmp/kasm_release
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. Kasm is already at v${KASM_VERSION}"
|
||||
|
||||
fi
|
||||
msg_info "Updating LXC"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -49,12 +49,15 @@ function update_script() {
|
||||
cp -a keycloak.old/conf/. keycloak/conf/
|
||||
cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true
|
||||
cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true
|
||||
rm -rf keycloak.old
|
||||
msg_ok "Updated Keycloak"
|
||||
|
||||
msg_info "Restarting Service"
|
||||
systemctl restart keycloak
|
||||
msg_ok "Restarted Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf keycloak.old
|
||||
msg_ok "Cleanup complete"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -56,7 +56,6 @@ function update_script() {
|
||||
[ -f "$BACKUP_DIR/local.yaml" ] && cp "$BACKUP_DIR/local.yaml" /opt/kimai/config/packages/
|
||||
rm -rf "$BACKUP_DIR"
|
||||
cd /opt/kimai
|
||||
sed -i '/^admin_lte:/,/^[^[:space:]]/d' config/local.yaml
|
||||
$STD composer install --no-dev --optimize-autoloader
|
||||
$STD bin/console kimai:update
|
||||
msg_ok "Updated Kimai"
|
||||
|
||||
@@ -50,12 +50,15 @@ function update_script() {
|
||||
$STD yarn install
|
||||
$STD yarn build
|
||||
chown -R www-data:www-data /opt/koillection/public/uploads
|
||||
rm -r /opt/koillection-backup
|
||||
msg_ok "Updated Koillection"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache2
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -r /opt/koillection-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: michelroegl-brunner
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://librenms.org
|
||||
|
||||
APP="LibreNMS"
|
||||
var_tags="${var_tags:-monitoring}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [ ! -d /opt/librenms ]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating LibreNMS"
|
||||
su librenms
|
||||
cd /opt/librenms
|
||||
./daily.sh
|
||||
msg_ok "Updated LibreNMS"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
||||
@@ -52,14 +52,17 @@ function update_script() {
|
||||
$STD yarn web:build
|
||||
$STD yarn prisma:deploy
|
||||
[ -d /opt/data.bak ] && mv /opt/data.bak /opt/linkwarden/data
|
||||
rm -rf ~/.cargo/registry ~/.cargo/git ~/.cargo/.package-cache ~/.rustup
|
||||
rm -rf /root/.cache/yarn
|
||||
rm -rf /opt/linkwarden/.next/cache
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start linkwarden
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf ~/.cargo/registry ~/.cargo/git ~/.cargo/.package-cache ~/.rustup
|
||||
rm -rf /root/.cache/yarn
|
||||
rm -rf /opt/linkwarden/.next/cache
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -42,12 +42,15 @@ function update_script() {
|
||||
mv /opt/listmonk-backup/config.toml /opt/listmonk/config.toml
|
||||
mv /opt/listmonk-backup/uploads /opt/listmonk/uploads
|
||||
$STD /opt/listmonk/listmonk --upgrade --yes --config /opt/listmonk/config.toml
|
||||
rm -rf /opt/listmonk-backup/
|
||||
msg_ok "Configured listmonk"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start listmonk
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/listmonk-backup/
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -53,12 +53,15 @@ function update_script() {
|
||||
msg_info "Configuring LubeLogger"
|
||||
chmod 700 /opt/lubelogger/CarCareTracker
|
||||
cp -rf /tmp/lubeloggerData/* /opt/lubelogger/
|
||||
rm -rf /tmp/lubeloggerData
|
||||
msg_ok "Configured LubeLogger"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start lubelogger
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /tmp/lubeloggerData
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -38,9 +38,15 @@ function update_script() {
|
||||
curl -fsSL -o "$DEB_FILE" "$DEB_URL"
|
||||
$STD apt install "$DEB_FILE" -y
|
||||
systemctl restart lyrion
|
||||
$STD rm -f "$DEB_FILE"
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to ${RELEASE}"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
$STD rm -f "$DEB_FILE"
|
||||
$STD apt -y autoremove
|
||||
$STD apt -y autoclean
|
||||
$STD apt -y clean
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "$APP is already up to date (${RELEASE})"
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: Slaviša Arežina (tremor021)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://www.metabase.com/
|
||||
|
||||
APP="Metabase"
|
||||
var_tags="${var_tags:-analytics}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/metabase ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "metabase" "metabase/metabase"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop metabase
|
||||
msg_info "Stopped Service"
|
||||
|
||||
msg_info "Creating backup"
|
||||
mv /opt/metabase/.env /opt
|
||||
msg_ok "Created backup"
|
||||
|
||||
msg_info "Updating Metabase"
|
||||
RELEASE=$(get_latest_github_release "metabase/metabase")
|
||||
curl -fsSL "https://downloads.metabase.com/v${RELEASE}.x/metabase.jar" -o /opt/metabase/metabase.jar
|
||||
echo $RELEASE >~/.metabase
|
||||
msg_ok "Updated Metabase"
|
||||
|
||||
msg_info "Restoring backup"
|
||||
mv /opt/.env /opt/metabase
|
||||
msg_ok "Restored backup"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start metabase
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
||||
@@ -1,55 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: omernaveedxyz
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://miniflux.app/
|
||||
|
||||
APP="Miniflux"
|
||||
var_tags="${var_tags:-media}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -f /etc/systemd/system/miniflux.service ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
msg_info "Stopping Service"
|
||||
$STD miniflux -flush-sessions -config-file /etc/miniflux.conf
|
||||
systemctl stop miniflux
|
||||
msg_ok "Service Stopped"
|
||||
|
||||
fetch_and_deploy_gh_release "miniflux" "miniflux/v2" "binary" "latest"
|
||||
|
||||
msg_info "Updating Miniflux"
|
||||
$STD miniflux -migrate -config-file /etc/miniflux.conf
|
||||
msg_ok "Updated Miniflux"
|
||||
msg_info "Starting Service"
|
||||
$STD systemctl start miniflux
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}"
|
||||
@@ -55,13 +55,17 @@ function update_script() {
|
||||
mv /usr/local/bin/minio /usr/local/bin/minio_bak
|
||||
curl -fsSL "https://dl.min.io/server/minio/release/linux-amd64/minio" -o /usr/local/bin/minio
|
||||
chmod +x /usr/local/bin/minio
|
||||
rm -f /usr/local/bin/minio_bak
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start minio
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -f /usr/local/bin/minio_bak
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
|
||||
@@ -52,12 +52,15 @@ function update_script() {
|
||||
$STD php artisan monica:update --force
|
||||
chown -R www-data:www-data /opt/monica
|
||||
chmod -R 775 /opt/monica/storage
|
||||
rm -r /opt/monica-backup
|
||||
msg_ok "Configured monica"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache2
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -r /opt/monica-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
@@ -57,14 +57,17 @@ function update_script() {
|
||||
fi
|
||||
|
||||
$STD /opt/netbox/upgrade.sh
|
||||
rm -r "/opt/v${RELEASE}.zip"
|
||||
rm -r /opt/netbox-backup
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start netbox netbox-rq
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -r "/opt/v${RELEASE}.zip"
|
||||
rm -r /opt/netbox-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||
|
||||
@@ -1,98 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: vhsdream
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/maynayza/netvisor
|
||||
|
||||
APP="NetVisor"
|
||||
var_tags="${var_tags:-analytics}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if [[ ! -d /opt/netvisor ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "netvisor" "mayanayza/netvisor"; then
|
||||
msg_info "Stopping services"
|
||||
systemctl stop netvisor-daemon netvisor-server
|
||||
msg_ok "Stopped services"
|
||||
|
||||
msg_info "Backing up configurations"
|
||||
cp /opt/netvisor/.env /opt/netvisor.env.bak
|
||||
msg_ok "Backed up configurations"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "netvisor" "mayanayza/netvisor" "tarball" "latest" "/opt/netvisor"
|
||||
|
||||
if ! dpkg -l | grep -q "pkg-config"; then
|
||||
$STD apt install -y pkg-config
|
||||
fi
|
||||
if ! dpkg -l | grep -q "libssl-dev"; then
|
||||
$STD apt install -y libssl-dev
|
||||
fi
|
||||
TOOLCHAIN="$(grep "channel" /opt/netvisor/backend/rust-toolchain.toml | awk -F\" '{print $2}')"
|
||||
RUST_TOOLCHAIN=$TOOLCHAIN setup_rust
|
||||
|
||||
cp /opt/netvisor.env.bak /opt/netvisor/.env
|
||||
LOCAL_IP="$(hostname -I | awk '{print $1}')"
|
||||
if ! grep -q "PUBLIC_URL" /opt/netvisor/.env; then
|
||||
sed -i "\|_PATH=|a\NETVISOR_PUBLIC_URL=http://${LOCAL_IP}:60072" /opt/netvisor/.env
|
||||
fi
|
||||
sed -i 's|_TARGET=.*$|_URL=http://127.0.0.1:60072|' /opt/netvisor/.env
|
||||
|
||||
msg_info "Creating frontend UI"
|
||||
export PUBLIC_SERVER_HOSTNAME=default
|
||||
export PUBLIC_SERVER_PORT=""
|
||||
cd /opt/netvisor/ui
|
||||
$STD npm ci --no-fund --no-audit
|
||||
$STD npm run build
|
||||
msg_ok "Created frontend UI"
|
||||
|
||||
msg_info "Building Netvisor-server (patience)"
|
||||
cd /opt/netvisor/backend
|
||||
$STD cargo build --release --bin server
|
||||
mv ./target/release/server /usr/bin/netvisor-server
|
||||
msg_ok "Built Netvisor-server"
|
||||
|
||||
msg_info "Building Netvisor-daemon"
|
||||
$STD cargo build --release --bin daemon
|
||||
cp ./target/release/daemon /usr/bin/netvisor-daemon
|
||||
msg_ok "Built Netvisor-daemon"
|
||||
|
||||
sed -i -e 's|-target|-url|' \
|
||||
-e 's| --server-port |:|' \
|
||||
/etc/systemd/system/netvisor-daemon.service
|
||||
sed -i '/^ \"server_target.*$/d' /root/.config/daemon/config.json
|
||||
systemctl daemon-reload
|
||||
|
||||
msg_info "Starting services"
|
||||
systemctl start netvisor-server netvisor-daemon
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:60072${CL}"
|
||||
@@ -21,34 +21,37 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/nextpvr ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/nextpvr ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop nextpvr-server
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating LXC packages"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated LXC packages"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
cd /opt
|
||||
curl -fsSL "https://nextpvr.com/nextpvr-helper.deb" -o $(basename "https://nextpvr.com/nextpvr-helper.deb")
|
||||
$STD dpkg -i nextpvr-helper.deb
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start nextpvr-server
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf /opt/nextpvr-helper.deb
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop nextpvr-server
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating LXC packages"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated LXC packages"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
cd /opt
|
||||
curl -fsSL "https://nextpvr.com/nextpvr-helper.deb" -o $(basename "https://nextpvr.com/nextpvr-helper.deb")
|
||||
$STD dpkg -i nextpvr-helper.deb
|
||||
rm -rf /opt/nextpvr-helper.deb
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start nextpvr-server
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -49,13 +49,12 @@ function update_script() {
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
|
||||
|
||||
#RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
|
||||
#grep "tag_name" |
|
||||
#awk '{print substr($2, 3, length($2)-4) }')
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
|
||||
grep "tag_name" |
|
||||
awk '{print substr($2, 3, length($2)-4) }')
|
||||
|
||||
fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager"
|
||||
|
||||
RELEASE="2.13.4"
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager" "tarball" "v${RELEASE}" "/opt/nginxproxymanager"
|
||||
|
||||
msg_info "Stopping Services"
|
||||
systemctl stop openresty
|
||||
systemctl stop npm
|
||||
|
||||
@@ -42,13 +42,17 @@ function update_script() {
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
export DEBCONF_NOWARNINGS=yes
|
||||
$STD dpkg -i nxwitness-server-$RELEASE-linux_x64.deb
|
||||
rm -f /tmp/nxwitness-server-$RELEASE-linux_x64.deb
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start networkoptix-root-tool networkoptix-mediaserver
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -f /tmp/nxwitness-server-$RELEASE-linux_x64.deb
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
|
||||
@@ -50,13 +50,17 @@ function update_script() {
|
||||
msg_info "Updating ${APP} to ${LATEST_VERSION}"
|
||||
curl -fsSL https://nightly.odoo.com/${RELEASE}/nightly/deb/odoo_${RELEASE}.latest_all.deb -o /opt/odoo.deb
|
||||
$STD apt install -y /opt/odoo.deb
|
||||
rm -f /opt/odoo.deb
|
||||
echo "$LATEST_VERSION" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${LATEST_VERSION}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
msg_info "Starting ${APP} service"
|
||||
systemctl start odoo
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -f /opt/odoo.deb
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${LATEST_VERSION}"
|
||||
|
||||
@@ -43,13 +43,16 @@ function update_script() {
|
||||
mkdir -p /usr/local/lib/ollama
|
||||
tar -xzf "${TMP_TAR}" -C /usr/local/lib/ollama
|
||||
ln -sf /usr/local/lib/ollama/bin/ollama /usr/local/bin/ollama
|
||||
rm -f "${TMP_TAR}"
|
||||
echo "${RELEASE}" >/opt/Ollama_version.txt
|
||||
msg_ok "Updated Ollama to ${RELEASE}"
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start ollama
|
||||
msg_ok "Started Services"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -f "${TMP_TAR}"
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. Ollama is already at ${RELEASE}"
|
||||
|
||||
16
ct/omada.sh
16
ct/omada.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -32,11 +32,19 @@ function update_script() {
|
||||
if lscpu | grep -q 'avx'; then
|
||||
MONGO_VERSION="8.0" setup_mongodb
|
||||
else
|
||||
msg_error "No AVX detected (CPU-Flag)! We have discontinued support for this. You are welcome to try it manually with a Debian LXC, but due to the many issues with Omada, we currently only support AVX CPUs."
|
||||
exit 10
|
||||
msg_warn "No AVX detected: Using older MongoDB 4.4"
|
||||
MONGO_VERSION="4.4" setup_mongodb
|
||||
fi
|
||||
|
||||
JAVA_VERSION="21" setup_java
|
||||
msg_info "Checking if right Azul Zulu Java is installed"
|
||||
java_version=$(java -version 2>&1 | awk -F[\"_] '/version/ {print $2}')
|
||||
if [[ "$java_version" =~ ^1\.8\.* ]]; then
|
||||
$STD apt remove --purge -y zulu8-jdk
|
||||
$STD apt -y install zulu21-jre-headless
|
||||
msg_ok "Updated Azul Zulu Java to 21"
|
||||
else
|
||||
msg_ok "Azul Zulu Java 21 already installed"
|
||||
fi
|
||||
|
||||
msg_info "Updating Omada Controller"
|
||||
OMADA_URL=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" |
|
||||
|
||||
@@ -39,14 +39,17 @@ function update_script() {
|
||||
tar -xzf onedev-latest.tar.gz
|
||||
$STD /opt/onedev-latest/bin/upgrade.sh /opt/onedev
|
||||
RELEASE=$(cat /opt/onedev/release.properties | grep "version" | cut -d'=' -f2)
|
||||
rm -rf /opt/onedev-latest
|
||||
rm -rf /opt/onedev-latest.tar.gz
|
||||
echo "${RELEASE}" >"/opt/${APP}_version.txt"
|
||||
msg_ok "Updated ${APP} to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start onedev
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/onedev-latest
|
||||
rm -rf /opt/onedev-latest.tar.gz
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}."
|
||||
|
||||
@@ -65,14 +65,17 @@ EOF
|
||||
$STD pip install --no-cache-dir -r requirements.txt
|
||||
mkdir -p data/chromadb
|
||||
$STD npm install
|
||||
rm -rf /opt/v${RELEASE}.zip
|
||||
rm -rf /opt/paperless-ai_bak
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start paperless-ai
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf /opt/v${RELEASE}.zip
|
||||
rm -rf /opt/paperless-ai_bak
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||
|
||||
@@ -20,45 +20,48 @@ color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/paperless-gpt ]]; then
|
||||
msg_error "No Paperless-GPT installation found!"
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /opt/paperless-gpt ]]; then
|
||||
msg_error "No Paperless-GPT installation found!"
|
||||
exit
|
||||
fi
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/icereed/paperless-gpt/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop paperless-gpt
|
||||
msg_ok "Service Stopped"
|
||||
|
||||
msg_info "Updating Paperless-GPT to ${RELEASE}"
|
||||
temp_file=$(mktemp)
|
||||
curl -fsSL "https://github.com/icereed/paperless-gpt/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
|
||||
tar zxf $temp_file
|
||||
rm -rf /opt/paperless-gpt
|
||||
mv paperless-gpt-${RELEASE} /opt/paperless-gpt
|
||||
cd /opt/paperless-gpt/web-app
|
||||
$STD npm install
|
||||
$STD npm run build
|
||||
cd /opt/paperless-gpt
|
||||
go mod download
|
||||
export CC=musl-gcc
|
||||
CGO_ENABLED=1 go build -tags musl -o /dev/null github.com/mattn/go-sqlite3
|
||||
CGO_ENABLED=1 go build -tags musl -o paperless-gpt .
|
||||
echo "${RELEASE}" >"/opt/paperless-gpt_version.txt"
|
||||
msg_ok "Updated Paperless-GPT to ${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start paperless-gpt
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -f $temp_file
|
||||
msg_ok "Cleanup Completed"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
fi
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/icereed/paperless-gpt/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop paperless-gpt
|
||||
msg_ok "Service Stopped"
|
||||
|
||||
msg_info "Updating Paperless-GPT to ${RELEASE}"
|
||||
temp_file=$(mktemp)
|
||||
curl -fsSL "https://github.com/icereed/paperless-gpt/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
|
||||
tar zxf $temp_file
|
||||
rm -rf /opt/paperless-gpt
|
||||
mv paperless-gpt-${RELEASE} /opt/paperless-gpt
|
||||
cd /opt/paperless-gpt/web-app
|
||||
$STD npm install
|
||||
$STD npm run build
|
||||
cd /opt/paperless-gpt
|
||||
go mod download
|
||||
export CC=musl-gcc
|
||||
CGO_ENABLED=1 go build -tags musl -o /dev/null github.com/mattn/go-sqlite3
|
||||
CGO_ENABLED=1 go build -tags musl -o paperless-gpt .
|
||||
rm -f $temp_file
|
||||
echo "${RELEASE}" >"/opt/paperless-gpt_version.txt"
|
||||
msg_ok "Updated Paperless-GPT to ${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start paperless-gpt
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -27,27 +27,6 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
# Check for old data structure and prompt migration
|
||||
if [[ -f /opt/paperless/paperless.conf ]]; then
|
||||
local OLD_DIRS=()
|
||||
[[ -d /opt/paperless/consume ]] && OLD_DIRS+=("consume")
|
||||
[[ -d /opt/paperless/data ]] && OLD_DIRS+=("data")
|
||||
[[ -d /opt/paperless/media ]] && OLD_DIRS+=("media")
|
||||
|
||||
if [[ ${#OLD_DIRS[@]} -gt 0 ]]; then
|
||||
msg_error "Old data structure detected in /opt/paperless/"
|
||||
msg_custom "📂" "Found directories: ${OLD_DIRS[*]}"
|
||||
echo -e ""
|
||||
msg_custom "🔄" "Migration required to new data structure (/opt/paperless_data/)"
|
||||
msg_custom "📖" "Please follow the migration guide:"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}https://github.com/community-scripts/ProxmoxVE/discussions/9223${CL}"
|
||||
echo -e ""
|
||||
msg_custom "⚠️" "Update aborted. Please migrate your data first."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if check_for_gh_release "paperless" "paperless-ngx/paperless-ngx"; then
|
||||
msg_info "Stopping all Paperless-ngx Services"
|
||||
systemctl stop paperless-consumer paperless-webserver paperless-scheduler paperless-task-queue
|
||||
@@ -55,11 +34,12 @@ function update_script() {
|
||||
|
||||
if grep -q "uv run" /etc/systemd/system/paperless-webserver.service; then
|
||||
|
||||
msg_info "Backing up configuration"
|
||||
local BACKUP_DIR="/opt/paperless_backup_$$"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
[[ -f /opt/paperless/paperless.conf ]] && cp /opt/paperless/paperless.conf "$BACKUP_DIR/"
|
||||
msg_ok "Backup completed to $BACKUP_DIR"
|
||||
msg_info "Backing up data"
|
||||
mkdir -p /opt/paperless_backup
|
||||
cp -r /opt/paperless/data /opt/paperless_backup/
|
||||
cp -r /opt/paperless/media /opt/paperless_backup/
|
||||
cp -r /opt/paperless/paperless.conf /opt/paperless_backup/
|
||||
msg_ok "Backup completed"
|
||||
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
|
||||
@@ -73,14 +53,19 @@ function update_script() {
|
||||
fi
|
||||
|
||||
msg_info "Updating Paperless-ngx"
|
||||
cp -r "$BACKUP_DIR"/* /opt/paperless/
|
||||
cp -r /opt/paperless_backup/* /opt/paperless/
|
||||
CONSUME_DIR="$(sed -n 's/^PAPERLESS_CONSUMPTION_DIR=//p' /opt/paperless/paperless.conf)"
|
||||
if [[ -z "$CONSUME_DIR" ]]; then
|
||||
CONSUME_DIR="/opt/paperless/consume"
|
||||
fi
|
||||
mkdir -p "$CONSUME_DIR"
|
||||
cd /opt/paperless
|
||||
$STD uv sync --all-extras
|
||||
cd /opt/paperless/src
|
||||
$STD uv run -- python manage.py migrate
|
||||
msg_ok "Updated Paperless-ngx"
|
||||
|
||||
rm -rf "$BACKUP_DIR"
|
||||
rm -rf /opt/paperless_backup
|
||||
|
||||
else
|
||||
msg_warn "You are about to migrate your Paperless-ngx installation to uv!"
|
||||
@@ -98,13 +83,8 @@ function update_script() {
|
||||
rm -rf /opt/paperless/venv
|
||||
find /opt/paperless -name "__pycache__" -type d -exec rm -rf {} +
|
||||
|
||||
msg_info "Backing up configuration"
|
||||
local BACKUP_DIR="/opt/paperless_backup_$$"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
[[ -f /opt/paperless/paperless.conf ]] && cp /opt/paperless/paperless.conf "$BACKUP_DIR/"
|
||||
msg_ok "Backup completed to $BACKUP_DIR"
|
||||
|
||||
declare -A PATCHES=(
|
||||
["paperless-consumer.service"]="ExecStart=uv run -- python manage.py document_consumer"
|
||||
["paperless-scheduler.service"]="ExecStart=uv run -- celery --app paperless beat --loglevel INFO"
|
||||
["paperless-task-queue.service"]="ExecStart=uv run -- celery --app paperless worker --loglevel INFO"
|
||||
["paperless-webserver.service"]="ExecStart=uv run -- granian --interface asgi --ws \"paperless.asgi:application\""
|
||||
@@ -129,11 +109,12 @@ function update_script() {
|
||||
done
|
||||
|
||||
$STD systemctl daemon-reload
|
||||
msg_info "Backing up configuration"
|
||||
BACKUP_DIR="/opt/paperless_backup_$$"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
[[ -f /opt/paperless/paperless.conf ]] && cp /opt/paperless/paperless.conf "$BACKUP_DIR/"
|
||||
msg_ok "Backup completed to $BACKUP_DIR"
|
||||
msg_info "Backing up data"
|
||||
mkdir -p /opt/paperless_backup
|
||||
cp -r /opt/paperless/data /opt/paperless_backup/
|
||||
cp -r /opt/paperless/media /opt/paperless_backup/
|
||||
cp -r /opt/paperless/paperless.conf /opt/paperless_backup/
|
||||
msg_ok "Backup completed"
|
||||
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
|
||||
@@ -149,14 +130,16 @@ function update_script() {
|
||||
fi
|
||||
|
||||
msg_info "Updating Paperless-ngx"
|
||||
cp -r "$BACKUP_DIR"/* /opt/paperless/
|
||||
cp -r /opt/paperless_backup/* /opt/paperless/
|
||||
CONSUME_DIR="$(sed -n '/^PAPERLESS_CONSUMPTION/s/[^=]=*//p' /opt/paperless/paperless.conf)"
|
||||
mkdir -p "${CONSUME_DIR:-/opt/paperless/consume}"
|
||||
cd /opt/paperless
|
||||
$STD uv sync --all-extras
|
||||
cd /opt/paperless/src
|
||||
$STD uv run -- python manage.py migrate
|
||||
msg_ok "Paperless-ngx migration and update completed"
|
||||
|
||||
rm -rf "$BACKUP_DIR"
|
||||
rm -rf /opt/paperless_backup
|
||||
if [[ -d /opt/paperless/backup ]]; then
|
||||
rm -rf /opt/paperless/backup
|
||||
msg_ok "Removed old backup directory"
|
||||
|
||||
@@ -52,14 +52,17 @@ function update_script() {
|
||||
$STD php bin/console cache:clear
|
||||
$STD php bin/console doctrine:migrations:migrate -n
|
||||
chown -R www-data:www-data /opt/partdb
|
||||
rm -r "/opt/v${RELEASE}.zip"
|
||||
rm -r /opt/partdb-backup
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache2
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -r "/opt/v${RELEASE}.zip"
|
||||
rm -r /opt/partdb-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: Slaviša Arežina (tremor021)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://www.passbolt.com/
|
||||
|
||||
APP="Passbolt"
|
||||
var_tags="${var_tags:-auth}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
if [[ ! -d /var ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating $APP LXC"
|
||||
$STD apt update
|
||||
$STD apt upgrade -y
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}https://${IP}${CL}"
|
||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
||||
# Source: https://github.com/Brandawg93/PeaNUT/
|
||||
|
||||
APP="PeaNUT"
|
||||
var_tags="${var_tags:-network;ups}"
|
||||
var_tags="${var_tags:-network;ups;}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-7}"
|
||||
@@ -35,7 +35,7 @@ function update_script() {
|
||||
systemctl stop peanut
|
||||
msg_info "Stopped Service"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "peanut" "Brandawg93/PeaNUT" "tarball" "latest" "/opt/peanut"
|
||||
fetch_and_deploy_gh_release "peanut" "Brandawg93/PeaNUT" "tarball" "latest" "/opt/peanut"
|
||||
|
||||
msg_info "Updating $APP"
|
||||
cd /opt/peanut
|
||||
|
||||
@@ -67,7 +67,6 @@ function update_script() {
|
||||
$STD php artisan migrate --seed --force
|
||||
chown -R www-data:www-data /opt/pelican-panel
|
||||
chmod -R 755 /opt/pelican-panel/storage /opt/pelican-panel/bootstrap/cache/
|
||||
rm -rf "/opt/pelican-panel/panel.tar.gz"
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to v${RELEASE}"
|
||||
|
||||
@@ -75,6 +74,10 @@ function update_script() {
|
||||
$STD php artisan queue:restart
|
||||
$STD php artisan up
|
||||
msg_ok "Started Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf "/opt/pelican-panel/panel.tar.gz"
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user