mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-04 18:32:51 +00:00
Compare commits
188 Commits
2025-09-24
...
2025-10-08
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
32230b4b0e | ||
|
|
10673493c0 | ||
|
|
dccf2f78e2 | ||
|
|
77188d25c9 | ||
|
|
de47dfe287 | ||
|
|
5716eb3086 | ||
|
|
05c7b84a2f | ||
|
|
2681528ec6 | ||
|
|
3be6e206b5 | ||
|
|
264ff2b602 | ||
|
|
ab38031a32 | ||
|
|
5b23ef6bb0 | ||
|
|
659ea81740 | ||
|
|
a127124080 | ||
|
|
cce58c281d | ||
|
|
888dbd6061 | ||
|
|
bfcda5d07a | ||
|
|
2e4ea927ea | ||
|
|
78a66c3612 | ||
|
|
86e67fc5cf | ||
|
|
c75be209e2 | ||
|
|
ad1650ddc2 | ||
|
|
637e66d79d | ||
|
|
a2774ea013 | ||
|
|
6027811e4a | ||
|
|
2e42b6d752 | ||
|
|
71a40f17ea | ||
|
|
f2b98890d6 | ||
|
|
b9d4fa6bb4 | ||
|
|
beeed04666 | ||
|
|
f618e207c1 | ||
|
|
7670c7402c | ||
|
|
ecef9a346e | ||
|
|
dcb3bfe763 | ||
|
|
1bd231752e | ||
|
|
abc95db08a | ||
|
|
a475eff11e | ||
|
|
7245af7208 | ||
|
|
c3a75d8a5d | ||
|
|
3b81c36e75 | ||
|
|
588cebad26 | ||
|
|
830b2d9e37 | ||
|
|
2092c5bdce | ||
|
|
e87dc5dbbc | ||
|
|
479ce977e6 | ||
|
|
a2057d4302 | ||
|
|
bbe509c334 | ||
|
|
563a69e68b | ||
|
|
7ab2bcbb40 | ||
|
|
57031bdaad | ||
|
|
833a369f61 | ||
|
|
8f8eb7aba5 | ||
|
|
942ff02d37 | ||
|
|
3e1753b3c7 | ||
|
|
6863c774fa | ||
|
|
965b8cb33e | ||
|
|
0768456b2c | ||
|
|
9f531ef4a7 | ||
|
|
6491ec3f09 | ||
|
|
9b5fa050c7 | ||
|
|
efb8e0f2f3 | ||
|
|
07eda340ea | ||
|
|
1a37c759c3 | ||
|
|
e39dd5ffa3 | ||
|
|
aded2cbd56 | ||
|
|
2c791b9e41 | ||
|
|
d1786241ec | ||
|
|
73cf6c66e3 | ||
|
|
efc9153926 | ||
|
|
1f4b446788 | ||
|
|
aeafbb1047 | ||
|
|
938609d5eb | ||
|
|
ae6ca4de23 | ||
|
|
dfdf8c0ddb | ||
|
|
4136f5e7e3 | ||
|
|
51302d516e | ||
|
|
ab995bd493 | ||
|
|
ac12051057 | ||
|
|
c3cca616a4 | ||
|
|
b1bca924b9 | ||
|
|
1909e35e62 | ||
|
|
237349ef47 | ||
|
|
e4cf50dfcd | ||
|
|
0c30d8e3e7 | ||
|
|
92999b4db3 | ||
|
|
4a02986de1 | ||
|
|
d06299685f | ||
|
|
71f71fbca9 | ||
|
|
938fb6dc58 | ||
|
|
03d36a6c10 | ||
|
|
8e25b70a25 | ||
|
|
1840cce15f | ||
|
|
1d0ac4ca10 | ||
|
|
deb85bd264 | ||
|
|
348f8863a8 | ||
|
|
74b332b7ec | ||
|
|
2fe3ee667b | ||
|
|
48e3b66342 | ||
|
|
e93dccb0d5 | ||
|
|
168e7b7c2b | ||
|
|
3f54d0d7f4 | ||
|
|
9477677385 | ||
|
|
e58d1dc3d2 | ||
|
|
2a765f58f0 | ||
|
|
8dfb632a4d | ||
|
|
42ae2a4cdc | ||
|
|
36e41aca22 | ||
|
|
6b1141f9de | ||
|
|
97f891d53b | ||
|
|
0c63e64662 | ||
|
|
d83a378af4 | ||
|
|
6820bdcade | ||
|
|
8ff82d0c3c | ||
|
|
9e39c6cd2b | ||
|
|
0bea24888e | ||
|
|
70d2be62e9 | ||
|
|
fe30e06a48 | ||
|
|
193a2ea2df | ||
|
|
ffbe0feee1 | ||
|
|
107865b06d | ||
|
|
0d33b38e29 | ||
|
|
11ae7450c7 | ||
|
|
598bfd291f | ||
|
|
1a38df4c12 | ||
|
|
cfc85c1b79 | ||
|
|
e7d41fecdc | ||
|
|
34ef80ac87 | ||
|
|
b18d45631f | ||
|
|
efe1e1edb5 | ||
|
|
4567505c55 | ||
|
|
42c87ba0d4 | ||
|
|
b52c252553 | ||
|
|
be5ac7153e | ||
|
|
07f2849722 | ||
|
|
760299283a | ||
|
|
0bd2dd7a65 | ||
|
|
6591c30e66 | ||
|
|
780e5c114c | ||
|
|
ba10ec721b | ||
|
|
f66dc834bd | ||
|
|
be36fc6a94 | ||
|
|
65ada6e6f3 | ||
|
|
853eb40bba | ||
|
|
ace6265895 | ||
|
|
639d4f2d53 | ||
|
|
d7e77e232c | ||
|
|
b850d3f79e | ||
|
|
72e5ac5c80 | ||
|
|
587579b3a1 | ||
|
|
9b4e996d93 | ||
|
|
e6f317ede9 | ||
|
|
3e4420e357 | ||
|
|
38f7e81d8b | ||
|
|
8f5d50a9fa | ||
|
|
32048cff2d | ||
|
|
5775f7cf33 | ||
|
|
4d7c004810 | ||
|
|
d74131fe6f | ||
|
|
87b30f67fa | ||
|
|
7ddc50bfe7 | ||
|
|
484a46beb1 | ||
|
|
b85d1e5062 | ||
|
|
05e41f67e1 | ||
|
|
bfe6445c64 | ||
|
|
ffde3a731c | ||
|
|
d5b9da8f5f | ||
|
|
1b8d790a14 | ||
|
|
175b925ae4 | ||
|
|
38a8773d2f | ||
|
|
e7dafcbf3e | ||
|
|
380fb1cfb7 | ||
|
|
10cd6c3f0b | ||
|
|
710bd7f4e7 | ||
|
|
4d72852e53 | ||
|
|
9ad538c2d2 | ||
|
|
ee3872e7e1 | ||
|
|
f6ca81833e | ||
|
|
c41b18f083 | ||
|
|
f983f75b30 | ||
|
|
137dd647dd | ||
|
|
2f5c608f45 | ||
|
|
b8e06c05d0 | ||
|
|
2beb89055c | ||
|
|
308897fdc7 | ||
|
|
5b73367c80 | ||
|
|
5c0eefa652 | ||
|
|
7c5c654dbe | ||
|
|
984eeedf31 |
223
CHANGELOG.md
223
CHANGELOG.md
@@ -10,8 +10,231 @@
|
|||||||
> [!CAUTION]
|
> [!CAUTION]
|
||||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||||
|
|
||||||
|
## 2025-10-09
|
||||||
|
|
||||||
|
## 2025-10-08
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- MyIP: Increase resources [@tremor021](https://github.com/tremor021) ([#8199](https://github.com/community-scripts/ProxmoxVE/pull/8199))
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Wireguard: Fix sysctl for Trixie [@tremor021](https://github.com/tremor021) ([#8209](https://github.com/community-scripts/ProxmoxVE/pull/8209))
|
||||||
|
- Update prompt for Stirling-PDF login option [@EarMaster](https://github.com/EarMaster) ([#8196](https://github.com/community-scripts/ProxmoxVE/pull/8196))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- Refactor: Fixed incorrect tag variables in several scripts [@tremor021](https://github.com/tremor021) ([#8182](https://github.com/community-scripts/ProxmoxVE/pull/8182))
|
||||||
|
- ZeroTier One: Fix install output [@tremor021](https://github.com/tremor021) ([#8179](https://github.com/community-scripts/ProxmoxVE/pull/8179))
|
||||||
|
|
||||||
|
## 2025-10-07
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Alpine-Caddy: remove functions [@MickLesk](https://github.com/MickLesk) ([#8177](https://github.com/community-scripts/ProxmoxVE/pull/8177))
|
||||||
|
- Palmr: Fix NodeJS setup [@tremor021](https://github.com/tremor021) ([#8173](https://github.com/community-scripts/ProxmoxVE/pull/8173))
|
||||||
|
- GLPI: Fix UNBOUND variable [@tremor021](https://github.com/tremor021) ([#8167](https://github.com/community-scripts/ProxmoxVE/pull/8167))
|
||||||
|
- BookLore: upgrade to Java 25/Gradle 9 [@vhsdream](https://github.com/vhsdream) ([#8165](https://github.com/community-scripts/ProxmoxVE/pull/8165))
|
||||||
|
- Alpine-Wireguard: Fix for update failing in normal mode [@tremor021](https://github.com/tremor021) ([#8160](https://github.com/community-scripts/ProxmoxVE/pull/8160))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Bump W-V Scripts to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#8176](https://github.com/community-scripts/ProxmoxVE/pull/8176))
|
||||||
|
- Bump Z-Y Scripts to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#8174](https://github.com/community-scripts/ProxmoxVE/pull/8174))
|
||||||
|
- Docmost: Fixes and updates [@tremor021](https://github.com/tremor021) ([#8158](https://github.com/community-scripts/ProxmoxVE/pull/8158))
|
||||||
|
|
||||||
|
## 2025-10-06
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- GLPI: Revert fix for v11 [@tremor021](https://github.com/tremor021) ([#8148](https://github.com/community-scripts/ProxmoxVE/pull/8148))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Node-Red: bump to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#8141](https://github.com/community-scripts/ProxmoxVE/pull/8141))
|
||||||
|
- NocoDB: bump to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#8140](https://github.com/community-scripts/ProxmoxVE/pull/8140))
|
||||||
|
- Navidrome: bump to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#8139](https://github.com/community-scripts/ProxmoxVE/pull/8139))
|
||||||
|
- pve-scripts-local: add update function [@MickLesk](https://github.com/MickLesk) ([#8138](https://github.com/community-scripts/ProxmoxVE/pull/8138))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### 📝 Script Information
|
||||||
|
|
||||||
|
- Update config_path for Zigbee2MQTT configuration [@MickLesk](https://github.com/MickLesk) ([#8153](https://github.com/community-scripts/ProxmoxVE/pull/8153))
|
||||||
|
|
||||||
|
## 2025-10-05
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- ActualBudget: bump to debian 13 [@MickLesk](https://github.com/MickLesk) ([#8124](https://github.com/community-scripts/ProxmoxVE/pull/8124))
|
||||||
|
- 2fauth: bump to debian 13 [@MickLesk](https://github.com/MickLesk) ([#8123](https://github.com/community-scripts/ProxmoxVE/pull/8123))
|
||||||
|
- AdventureLog: bump to debian 13 [@MickLesk](https://github.com/MickLesk) ([#8125](https://github.com/community-scripts/ProxmoxVE/pull/8125))
|
||||||
|
- Update cockpit to Debian 13 [@burgerga](https://github.com/burgerga) ([#8119](https://github.com/community-scripts/ProxmoxVE/pull/8119))
|
||||||
|
|
||||||
|
## 2025-10-04
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- immich: guard /dev/dri permissions so CPU-only installs don’t fail [@mlongwell](https://github.com/mlongwell) ([#8094](https://github.com/community-scripts/ProxmoxVE/pull/8094))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- PosgreSQL: Add version choice [@tremor021](https://github.com/tremor021) ([#8103](https://github.com/community-scripts/ProxmoxVE/pull/8103))
|
||||||
|
|
||||||
|
## 2025-10-03
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- pve-scripts-local ([#8083](https://github.com/community-scripts/ProxmoxVE/pull/8083))
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- GLPI: Pin version to v10.0.20 [@tremor021](https://github.com/tremor021) ([#8092](https://github.com/community-scripts/ProxmoxVE/pull/8092))
|
||||||
|
- GLPI: Fix database setup [@tremor021](https://github.com/tremor021) ([#8074](https://github.com/community-scripts/ProxmoxVE/pull/8074))
|
||||||
|
- Overseerr: Increase resources [@tremor021](https://github.com/tremor021) ([#8086](https://github.com/community-scripts/ProxmoxVE/pull/8086))
|
||||||
|
- FIX: post-pve-install.sh just quitting [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#8070](https://github.com/community-scripts/ProxmoxVE/pull/8070))
|
||||||
|
- fix: ensure /etc/pulse exists before chown in update script [@rcourtman](https://github.com/rcourtman) ([#8068](https://github.com/community-scripts/ProxmoxVE/pull/8068))
|
||||||
|
- grist: remove unneeded var [@MickLesk](https://github.com/MickLesk) ([#8060](https://github.com/community-scripts/ProxmoxVE/pull/8060))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- Immich: bump version to 2.0.1 [@vhsdream](https://github.com/vhsdream) ([#8090](https://github.com/community-scripts/ProxmoxVE/pull/8090))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Adjust navbar layout for large screen [@BramSuurdje](https://github.com/BramSuurdje) ([#8087](https://github.com/community-scripts/ProxmoxVE/pull/8087))
|
||||||
|
|
||||||
|
## 2025-10-02
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- EMQX: removal logic in emqx update [@MickLesk](https://github.com/MickLesk) ([#8050](https://github.com/community-scripts/ProxmoxVE/pull/8050))
|
||||||
|
- fix FlareSolverr version check to v3.3.25 [@MickLesk](https://github.com/MickLesk) ([#8051](https://github.com/community-scripts/ProxmoxVE/pull/8051))
|
||||||
|
|
||||||
|
## 2025-10-01
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- New Script: PhpMyAdmin (Addon) [@MickLesk](https://github.com/MickLesk) ([#8030](https://github.com/community-scripts/ProxmoxVE/pull/8030))
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- openwrt: Add conditional logic for EFI disk allocation [@MickLesk](https://github.com/MickLesk) ([#8024](https://github.com/community-scripts/ProxmoxVE/pull/8024))
|
||||||
|
- Plant-IT: Pin version to v0.10.0 [@tremor021](https://github.com/tremor021) ([#8023](https://github.com/community-scripts/ProxmoxVE/pull/8023))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Immich: bump version to 2.0.0 stable [@vhsdream](https://github.com/vhsdream) ([#8041](https://github.com/community-scripts/ProxmoxVE/pull/8041))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- Immich: bump version to 1.144.1 [@vhsdream](https://github.com/vhsdream) ([#7994](https://github.com/community-scripts/ProxmoxVE/pull/7994))
|
||||||
|
|
||||||
|
## 2025-09-30
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- caddy: fix typo for setup_go [@MickLesk](https://github.com/MickLesk) ([#8017](https://github.com/community-scripts/ProxmoxVE/pull/8017))
|
||||||
|
- Changedetection: Fix Browserless installation and update process [@h-stoyanov](https://github.com/h-stoyanov) ([#8011](https://github.com/community-scripts/ProxmoxVE/pull/8011))
|
||||||
|
- n8n: Update procedure workaround [@tremor021](https://github.com/tremor021) ([#8004](https://github.com/community-scripts/ProxmoxVE/pull/8004))
|
||||||
|
- Changedetection: Bump nodejs to 24 [@MickLesk](https://github.com/MickLesk) ([#8002](https://github.com/community-scripts/ProxmoxVE/pull/8002))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Bump Guacamole to Debian 13 [@burgerga](https://github.com/burgerga) ([#8010](https://github.com/community-scripts/ProxmoxVE/pull/8010))
|
||||||
|
|
||||||
|
## 2025-09-29
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- Ghostfolio ([#7982](https://github.com/community-scripts/ProxmoxVE/pull/7982))
|
||||||
|
- Warracker ([#7977](https://github.com/community-scripts/ProxmoxVE/pull/7977))
|
||||||
|
- MyIP ([#7974](https://github.com/community-scripts/ProxmoxVE/pull/7974))
|
||||||
|
- Verdaccio ([#7967](https://github.com/community-scripts/ProxmoxVE/pull/7967))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- fix sidebar loading issues and navbar on mobile [@BramSuurdje](https://github.com/BramSuurdje) ([#7991](https://github.com/community-scripts/ProxmoxVE/pull/7991))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Improve mobile ui: added a hamburger navigation to the mobile view. [@BramSuurdje](https://github.com/BramSuurdje) ([#7987](https://github.com/community-scripts/ProxmoxVE/pull/7987))
|
||||||
|
|
||||||
|
- #### 📝 Script Information
|
||||||
|
|
||||||
|
- Remove Frigate from Website [@MickLesk](https://github.com/MickLesk) ([#7972](https://github.com/community-scripts/ProxmoxVE/pull/7972))
|
||||||
|
|
||||||
|
## 2025-09-28
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Metube: remove uv flags [@vhsdream](https://github.com/vhsdream) ([#7962](https://github.com/community-scripts/ProxmoxVE/pull/7962))
|
||||||
|
- freshrss: fix for broken permissions after update [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7953](https://github.com/community-scripts/ProxmoxVE/pull/7953))
|
||||||
|
|
||||||
|
## 2025-09-27
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- GoAway: Make admin password aquisition more reliable [@tremor021](https://github.com/tremor021) ([#7946](https://github.com/community-scripts/ProxmoxVE/pull/7946))
|
||||||
|
- MeTube: Various fixes [@vhsdream](https://github.com/vhsdream) ([#7936](https://github.com/community-scripts/ProxmoxVE/pull/7936))
|
||||||
|
- Oddo: Fix typo in update procedure [@tremor021](https://github.com/tremor021) ([#7941](https://github.com/community-scripts/ProxmoxVE/pull/7941))
|
||||||
|
|
||||||
|
## 2025-09-26
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Odoo: Fix missing dependencies [@tremor021](https://github.com/tremor021) ([#7931](https://github.com/community-scripts/ProxmoxVE/pull/7931))
|
||||||
|
- OpenWebUI: Update NODE_OPTIONS to increase memory limit [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#7919](https://github.com/community-scripts/ProxmoxVE/pull/7919))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### 📝 Script Information
|
||||||
|
|
||||||
|
- Clarify descriptions of update scripts [@tremor021](https://github.com/tremor021) ([#7929](https://github.com/community-scripts/ProxmoxVE/pull/7929))
|
||||||
|
|
||||||
## 2025-09-25
|
## 2025-09-25
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- GoAway ([#7900](https://github.com/community-scripts/ProxmoxVE/pull/7900))
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- ntfy: bump to debian 13 [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7895](https://github.com/community-scripts/ProxmoxVE/pull/7895))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- feat: add menu icons to website [@BramSuurdje](https://github.com/BramSuurdje) ([#7894](https://github.com/community-scripts/ProxmoxVE/pull/7894))
|
||||||
|
|
||||||
## 2025-09-24
|
## 2025-09-24
|
||||||
|
|
||||||
### 🆕 New Scripts
|
### 🆕 New Scripts
|
||||||
|
|||||||
13
ct/2fauth.sh
13
ct/2fauth.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -29,8 +29,8 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if check_for_gh_release "2fauth" "Bubka/2FAuth"; then
|
if check_for_gh_release "2fauth" "Bubka/2FAuth"; then
|
||||||
$STD apt-get update
|
$STD apt update
|
||||||
$STD apt-get -y upgrade
|
$STD apt -y upgrade
|
||||||
|
|
||||||
msg_info "Creating Backup"
|
msg_info "Creating Backup"
|
||||||
mv "/opt/2fauth" "/opt/2fauth-backup"
|
mv "/opt/2fauth" "/opt/2fauth-backup"
|
||||||
@@ -60,10 +60,11 @@ function update_script() {
|
|||||||
|
|
||||||
msg_info "Cleaning Up"
|
msg_info "Cleaning Up"
|
||||||
if dpkg -l | grep -q 'php8.2'; then
|
if dpkg -l | grep -q 'php8.2'; then
|
||||||
$STD apt-get remove --purge -y php8.2*
|
$STD apt remove --purge -y php8.2*
|
||||||
fi
|
fi
|
||||||
$STD apt-get -y autoremove
|
$STD apt -y autoremove
|
||||||
$STD apt-get -y autoclean
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
msg_ok "Cleanup Completed"
|
msg_ok "Cleanup Completed"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -28,8 +28,7 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
NODE_VERSION="22"
|
NODE_VERSION="22" setup_nodejs
|
||||||
setup_nodejs
|
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
if [[ -f /opt/actualbudget-data/config.json ]]; then
|
if [[ -f /opt/actualbudget-data/config.json ]]; then
|
||||||
if [[ ! -f /opt/actualbudget_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/actualbudget_version.txt)" ]]; then
|
if [[ ! -f /opt/actualbudget_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/actualbudget_version.txt)" ]]; then
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_disk="${var_disk:-7}"
|
|||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -28,8 +28,8 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if ! command -v memcached >/dev/null 2>&1; then
|
if ! command -v memcached >/dev/null 2>&1; then
|
||||||
$STD apt-get update
|
$STD apt update
|
||||||
$STD apt-get install -y memcached libmemcached-tools
|
$STD apt install -y memcached libmemcached-tools
|
||||||
fi
|
fi
|
||||||
if check_for_gh_release "adventurelog" "seanmorley15/adventurelog"; then
|
if check_for_gh_release "adventurelog" "seanmorley15/adventurelog"; then
|
||||||
msg_info "Stopping Services"
|
msg_info "Stopping Services"
|
||||||
@@ -43,12 +43,12 @@ function update_script() {
|
|||||||
msg_ok "Backup done"
|
msg_ok "Backup done"
|
||||||
|
|
||||||
fetch_and_deploy_gh_release "adventurelog" "seanmorley15/adventurelog"
|
fetch_and_deploy_gh_release "adventurelog" "seanmorley15/adventurelog"
|
||||||
PYTHON_VERSION="3.12" setup_uv
|
PYTHON_VERSION="3.13" setup_uv
|
||||||
|
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating ${APP}"
|
||||||
cp /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env
|
cp /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env
|
||||||
cp -r /opt/adventurelog-backup/backend/server/media /opt/adventurelog/backend/server/media
|
cp -r /opt/adventurelog-backup/backend/server/media /opt/adventurelog/backend/server/media
|
||||||
cd /opt/adventurelog/backend/server
|
cd /opt/adventurelog/backend/server || exit
|
||||||
if [[ ! -x .venv/bin/python ]]; then
|
if [[ ! -x .venv/bin/python ]]; then
|
||||||
$STD uv venv .venv
|
$STD uv venv .venv
|
||||||
$STD .venv/bin/python -m ensurepip --upgrade
|
$STD .venv/bin/python -m ensurepip --upgrade
|
||||||
@@ -59,7 +59,7 @@ function update_script() {
|
|||||||
$STD .venv/bin/python -m manage migrate
|
$STD .venv/bin/python -m manage migrate
|
||||||
|
|
||||||
cp /opt/adventurelog-backup/frontend/.env /opt/adventurelog/frontend/.env
|
cp /opt/adventurelog-backup/frontend/.env /opt/adventurelog/frontend/.env
|
||||||
cd /opt/adventurelog/frontend
|
cd /opt/adventurelog/frontend || exit
|
||||||
$STD pnpm i
|
$STD pnpm i
|
||||||
$STD pnpm build
|
$STD pnpm build
|
||||||
msg_ok "Updated ${APP}"
|
msg_ok "Updated ${APP}"
|
||||||
|
|||||||
@@ -21,8 +21,6 @@ catch_errors
|
|||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
|
||||||
check_container_resources
|
|
||||||
if [[ ! -d /etc/caddy ]]; then
|
if [[ ! -d /etc/caddy ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ function update_script() {
|
|||||||
if [[ -d /etc/wgdashboard/src ]]; then
|
if [[ -d /etc/wgdashboard/src ]]; then
|
||||||
msg_info "update WGDashboard"
|
msg_info "update WGDashboard"
|
||||||
cd /etc/wgdashboard/src
|
cd /etc/wgdashboard/src
|
||||||
$STD echo "y" | ./wgd.sh update
|
echo "y" | ./wgd.sh update >/dev/null 2>&1
|
||||||
$STD ./wgd.sh start
|
$STD ./wgd.sh start
|
||||||
msg_ok "WGDashboard updated"
|
msg_ok "WGDashboard updated"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_disk="${var_disk:-4}"
|
|||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -38,4 +38,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/guacamole${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/guacamole${CL}"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://www.authelia.com/
|
# Source: https://www.authelia.com/
|
||||||
|
|
||||||
APP="Authelia"
|
APP="Authelia"
|
||||||
TAGS=""
|
var_tags="${var_tags:-authenticator}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
@@ -25,7 +25,7 @@ function update_script() {
|
|||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d "/etc/authelia/" ]]; then
|
if [[ ! -d /etc/authelia/ ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -45,6 +45,8 @@ function update_script() {
|
|||||||
$STD npm run build --configuration=production
|
$STD npm run build --configuration=production
|
||||||
msg_ok "Built Frontend"
|
msg_ok "Built Frontend"
|
||||||
|
|
||||||
|
JAVA_VERSION="25" setup_java
|
||||||
|
|
||||||
msg_info "Building Backend"
|
msg_info "Building Backend"
|
||||||
cd /opt/booklore/booklore-api
|
cd /opt/booklore/booklore-api
|
||||||
APP_VERSION=$(curl -fsSL https://api.github.com/repos/booklore-app/BookLore/releases/latest | yq '.tag_name' | sed 's/^v//')
|
APP_VERSION=$(curl -fsSL https://api.github.com/repos/booklore-app/BookLore/releases/latest | yq '.tag_name' | sed 's/^v//')
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ function update_script() {
|
|||||||
msg_ok "Updated $APP LXC"
|
msg_ok "Updated $APP LXC"
|
||||||
|
|
||||||
if command -v xcaddy >/dev/null 2>&1; then
|
if command -v xcaddy >/dev/null 2>&1; then
|
||||||
install_go
|
setup_go
|
||||||
msg_info "Updating xCaddy"
|
msg_info "Updating xCaddy"
|
||||||
cd /opt
|
cd /opt
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/caddyserver/xcaddy/releases/latest | grep "tag_name" | awk -F '"' '{print $4}')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/caddyserver/xcaddy/releases/latest | grep "tag_name" | awk -F '"' '{print $4}')
|
||||||
|
|||||||
@@ -36,6 +36,8 @@ function update_script() {
|
|||||||
msg_ok "Updated Dependencies"
|
msg_ok "Updated Dependencies"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
NODE_VERSION="24" setup_nodejs
|
||||||
|
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating ${APP}"
|
||||||
$STD pip3 install changedetection.io --upgrade
|
$STD pip3 install changedetection.io --upgrade
|
||||||
msg_ok "Updated ${APP}"
|
msg_ok "Updated ${APP}"
|
||||||
@@ -49,6 +51,7 @@ function update_script() {
|
|||||||
$STD git -C /opt/browserless/ fetch --all
|
$STD git -C /opt/browserless/ fetch --all
|
||||||
$STD git -C /opt/browserless/ reset --hard origin/main
|
$STD git -C /opt/browserless/ reset --hard origin/main
|
||||||
$STD npm update --prefix /opt/browserless
|
$STD npm update --prefix /opt/browserless
|
||||||
|
$STD npm ci --include=optional --include=dev --prefix /opt/browserless
|
||||||
$STD /opt/browserless/node_modules/playwright-core/cli.js install --with-deps
|
$STD /opt/browserless/node_modules/playwright-core/cli.js install --with-deps
|
||||||
# Update Chrome separately, as it has to be done with the force option. Otherwise the installation of other browsers will not be done if Chrome is already installed.
|
# Update Chrome separately, as it has to be done with the force option. Otherwise the installation of other browsers will not be done if Chrome is already installed.
|
||||||
$STD /opt/browserless/node_modules/playwright-core/cli.js install --force chrome
|
$STD /opt/browserless/node_modules/playwright-core/cli.js install --force chrome
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -36,15 +36,15 @@ function update_script() {
|
|||||||
|
|
||||||
if [ "$UPD" == "1" ]; then
|
if [ "$UPD" == "1" ]; then
|
||||||
msg_info "Updating ${APP} LXC"
|
msg_info "Updating ${APP} LXC"
|
||||||
$STD apt-get update
|
$STD apt update
|
||||||
$STD apt-get -y upgrade
|
$STD apt -y upgrade
|
||||||
msg_ok "Updated ${APP} LXC"
|
msg_ok "Updated ${APP} LXC"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$UPD" == "2" ]; then
|
if [ "$UPD" == "2" ]; then
|
||||||
msg_info "Installing dependencies (patience)"
|
msg_info "Installing dependencies (patience)"
|
||||||
$STD apt-get install -y \
|
$STD apt install -y \
|
||||||
attr \
|
attr \
|
||||||
nfs-kernel-server \
|
nfs-kernel-server \
|
||||||
samba \
|
samba \
|
||||||
@@ -56,7 +56,7 @@ function update_script() {
|
|||||||
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
||||||
FILE=$(basename "$URL")
|
FILE=$(basename "$URL")
|
||||||
curl -fsSL "$URL" -o "$FILE"
|
curl -fsSL "$URL" -o "$FILE"
|
||||||
$STD dpkg -i "$FILE" || $STD apt-get install -f -y
|
$STD dpkg -i "$FILE" || $STD apt install -f -y
|
||||||
rm -f "$FILE"
|
rm -f "$FILE"
|
||||||
msg_ok "Installed Cockpit file sharing"
|
msg_ok "Installed Cockpit file sharing"
|
||||||
exit
|
exit
|
||||||
@@ -64,7 +64,7 @@ function update_script() {
|
|||||||
|
|
||||||
if [ "$UPD" == "3" ]; then
|
if [ "$UPD" == "3" ]; then
|
||||||
msg_info "Installing dependencies (patience)"
|
msg_info "Installing dependencies (patience)"
|
||||||
$STD apt-get install -y \
|
$STD apt install -y \
|
||||||
psmisc \
|
psmisc \
|
||||||
samba \
|
samba \
|
||||||
samba-common-bin
|
samba-common-bin
|
||||||
@@ -73,7 +73,7 @@ function update_script() {
|
|||||||
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
||||||
FILE=$(basename "$URL")
|
FILE=$(basename "$URL")
|
||||||
curl -fsSL "$URL" -o "$FILE"
|
curl -fsSL "$URL" -o "$FILE"
|
||||||
$STD dpkg -i "$FILE" || $STD apt-get install -f -y
|
$STD dpkg -i "$FILE" || $STD apt install -f -y
|
||||||
rm -f "$FILE"
|
rm -f "$FILE"
|
||||||
msg_ok "Installed Cockpit identities"
|
msg_ok "Installed Cockpit identities"
|
||||||
exit
|
exit
|
||||||
@@ -81,7 +81,7 @@ function update_script() {
|
|||||||
|
|
||||||
if [ "$UPD" == "4" ]; then
|
if [ "$UPD" == "4" ]; then
|
||||||
msg_info "Installing dependencies"
|
msg_info "Installing dependencies"
|
||||||
$STD apt-get install -y \
|
$STD apt install -y \
|
||||||
rsync \
|
rsync \
|
||||||
zip
|
zip
|
||||||
msg_ok "Installed dependencies"
|
msg_ok "Installed dependencies"
|
||||||
@@ -89,7 +89,7 @@ function update_script() {
|
|||||||
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
||||||
FILE=$(basename "$URL")
|
FILE=$(basename "$URL")
|
||||||
curl -fsSL "$URL" -o "$FILE"
|
curl -fsSL "$URL" -o "$FILE"
|
||||||
$STD dpkg -i "$FILE" || $STD apt-get install -f -y
|
$STD dpkg -i "$FILE" || $STD apt install -f -y
|
||||||
rm -f "$FILE"
|
rm -f "$FILE"
|
||||||
msg_ok "Installed Cockpit navigator"
|
msg_ok "Installed Cockpit navigator"
|
||||||
exit
|
exit
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-3}"
|
|||||||
var_ram="${var_ram:-4096}"
|
var_ram="${var_ram:-4096}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
variables
|
variables
|
||||||
|
|||||||
@@ -31,7 +31,13 @@ function update_script() {
|
|||||||
msg_ok "Stopped EMQX"
|
msg_ok "Stopped EMQX"
|
||||||
|
|
||||||
msg_info "Removing old EMQX"
|
msg_info "Removing old EMQX"
|
||||||
$STD apt-get remove --purge -y emqx
|
if dpkg -l | grep -q "^ii\s\+emqx\s"; then
|
||||||
|
$STD apt-get remove --purge -y emqx
|
||||||
|
elif dpkg -l | grep -q "^ii\s\+emqx-enterprise\s"; then
|
||||||
|
$STD apt-get remove --purge -y emqx-enterprise
|
||||||
|
else
|
||||||
|
msg_ok "No old EMQX package found"
|
||||||
|
fi
|
||||||
msg_ok "Removed old EMQX"
|
msg_ok "Removed old EMQX"
|
||||||
|
|
||||||
msg_info "Downloading EMQX v${RELEASE}"
|
msg_info "Downloading EMQX v${RELEASE}"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://github.com/excalidraw/excalidraw
|
# Source: https://github.com/excalidraw/excalidraw
|
||||||
|
|
||||||
APP="Excalidraw"
|
APP="Excalidraw"
|
||||||
TAGS="diagrams"
|
var_tags="${var_tags:-diagrams}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-3072}"
|
var_ram="${var_ram:-3072}"
|
||||||
var_disk="${var_disk:-10}"
|
var_disk="${var_disk:-10}"
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "3.3.5"; then
|
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "3.3.25"; then
|
||||||
msg_info "Stopping service"
|
msg_info "Stopping service"
|
||||||
systemctl stop flaresolverr
|
systemctl stop flaresolverr
|
||||||
msg_ok "Stopped service"
|
msg_ok "Stopped service"
|
||||||
|
|||||||
@@ -27,8 +27,16 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
msg_error "FreshRSS should be updated via the user interface."
|
|
||||||
exit
|
if [ ! -x /opt/freshrss/cli/sensitive-log.sh ]; then
|
||||||
|
msg_info "Fixing wrong permissions"
|
||||||
|
chmod +x /opt/freshrss/cli/sensitive-log.sh
|
||||||
|
systemctl restart apache2
|
||||||
|
msg_ok "Fixed wrong permissions"
|
||||||
|
else
|
||||||
|
msg_error "FreshRSS should be updated via the user interface."
|
||||||
|
exit
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
@@ -38,4 +46,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
||||||
|
|||||||
75
ct/ghostfolio.sh
Normal file
75
ct/ghostfolio.sh
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
#!/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: lucasfell
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://ghostfol.io/
|
||||||
|
|
||||||
|
APP="Ghostfolio"
|
||||||
|
var_tags="${var_tags:-finance;investment}"
|
||||||
|
var_cpu="${var_cpu:-2}"
|
||||||
|
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
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
|
||||||
|
if [[ ! -f /opt/ghostfolio/dist/apps/api/main.js ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if check_for_gh_release "ghostfolio" "ghostfolio/ghostfolio"; then
|
||||||
|
msg_info "Stopping Service"
|
||||||
|
systemctl stop ghostfolio
|
||||||
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
|
msg_info "Creating Backup"
|
||||||
|
tar -czf "/opt/ghostfolio_backup_$(date +%F).tar.gz" \
|
||||||
|
-C /opt \
|
||||||
|
--exclude="ghostfolio/node_modules" \
|
||||||
|
--exclude="ghostfolio/dist" \
|
||||||
|
ghostfolio
|
||||||
|
mv /opt/ghostfolio/.env /opt/env.backup
|
||||||
|
msg_ok "Backup Created"
|
||||||
|
|
||||||
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ghostfolio" "ghostfolio/ghostfolio" "tarball" "latest" "/opt/ghostfolio"
|
||||||
|
|
||||||
|
msg_info "Updating Ghostfolio"
|
||||||
|
mv /opt/env.backup /opt/ghostfolio/.env
|
||||||
|
cd /opt/ghostfolio
|
||||||
|
$STD npm ci
|
||||||
|
$STD npm run build:production
|
||||||
|
$STD npx prisma migrate deploy
|
||||||
|
msg_ok "Updated Ghostfolio"
|
||||||
|
|
||||||
|
msg_info "Starting Service"
|
||||||
|
systemctl start ghostfolio
|
||||||
|
msg_ok "Started Service"
|
||||||
|
|
||||||
|
msg_info "Cleaning Up"
|
||||||
|
$STD npm cache clean --force
|
||||||
|
msg_ok "Cleanup Completed"
|
||||||
|
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}:3333${CL}"
|
||||||
54
ct/goaway.sh
Normal file
54
ct/goaway.sh
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: Slaviša Arežina (tremor021)
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://github.com/pommee/goaway
|
||||||
|
|
||||||
|
APP="GoAway"
|
||||||
|
var_tags="${var_tags:-network}"
|
||||||
|
var_cpu="${var_cpu:-1}"
|
||||||
|
var_ram="${var_ram:-1024}"
|
||||||
|
var_disk="${var_disk:-4}"
|
||||||
|
var_os="${var_os:-debian}"
|
||||||
|
var_version="${var_version:-13}"
|
||||||
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
if [[ ! -d /opt/goaway ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if check_for_gh_release "goaway" "pommee/goaway"; then
|
||||||
|
msg_info "Stopping Services"
|
||||||
|
systemctl stop goaway
|
||||||
|
msg_ok "Stopped Services"
|
||||||
|
|
||||||
|
fetch_and_deploy_gh_release "goaway" "pommee/goaway" "prebuild" "latest" "/opt/goaway" "goaway_*_linux_amd64.tar.gz"
|
||||||
|
|
||||||
|
msg_info "Starting Services"
|
||||||
|
systemctl start goaway
|
||||||
|
msg_ok "Started Services"
|
||||||
|
|
||||||
|
msg_ok "Updated Successfully"
|
||||||
|
fi
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}"
|
||||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://graylog.org/
|
# Source: https://graylog.org/
|
||||||
|
|
||||||
APP="Graylog"
|
APP="Graylog"
|
||||||
TAGS="logging"
|
var_tags="${var_tags:-logging}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-8192}"
|
var_ram="${var_ram:-8192}"
|
||||||
var_disk="${var_disk:-30}"
|
var_disk="${var_disk:-30}"
|
||||||
@@ -54,4 +54,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000${CL}"
|
||||||
|
|||||||
6
ct/headers/ghostfolio
Normal file
6
ct/headers/ghostfolio
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
________ __ ____ ___
|
||||||
|
/ ____/ /_ ____ _____/ /_/ __/___ / (_)___
|
||||||
|
/ / __/ __ \/ __ \/ ___/ __/ /_/ __ \/ / / __ \
|
||||||
|
/ /_/ / / / / /_/ (__ ) /_/ __/ /_/ / / / /_/ /
|
||||||
|
\____/_/ /_/\____/____/\__/_/ \____/_/_/\____/
|
||||||
|
|
||||||
6
ct/headers/goaway
Normal file
6
ct/headers/goaway
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
______ ___
|
||||||
|
/ ____/___ / |_ ______ ___ __
|
||||||
|
/ / __/ __ \/ /| | | /| / / __ `/ / / /
|
||||||
|
/ /_/ / /_/ / ___ | |/ |/ / /_/ / /_/ /
|
||||||
|
\____/\____/_/ |_|__/|__/\__,_/\__, /
|
||||||
|
/____/
|
||||||
6
ct/headers/myip
Normal file
6
ct/headers/myip
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
__ ___ ________
|
||||||
|
/ |/ /_ __/ _/ __ \
|
||||||
|
/ /|_/ / / / // // /_/ /
|
||||||
|
/ / / / /_/ // // ____/
|
||||||
|
/_/ /_/\__, /___/_/
|
||||||
|
/____/
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
____ __ _
|
|
||||||
/ __ \___ / /_(_)___
|
|
||||||
/ /_/ / _ \/ __/ / __ \
|
|
||||||
/ ____/ __/ /_/ / /_/ /
|
|
||||||
/_/ \___/\__/_/\____/
|
|
||||||
|
|
||||||
6
ct/headers/pve-scripts-local
Normal file
6
ct/headers/pve-scripts-local
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
____ _ ________ _____ _ __ __ __
|
||||||
|
/ __ \ | / / ____/ / ___/__________(_)___ / /______ / / ____ _________ _/ /
|
||||||
|
/ /_/ / | / / __/______\__ \/ ___/ ___/ / __ \/ __/ ___/_____/ / / __ \/ ___/ __ `/ /
|
||||||
|
/ ____/| |/ / /__/_____/__/ / /__/ / / / /_/ / /_(__ )_____/ /___/ /_/ / /__/ /_/ / /
|
||||||
|
/_/ |___/_____/ /____/\___/_/ /_/ .___/\__/____/ /_____/\____/\___/\__,_/_/
|
||||||
|
/_/
|
||||||
6
ct/headers/verdaccio
Normal file
6
ct/headers/verdaccio
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
_ __ __ _
|
||||||
|
| | / /__ _________/ /___ ___________(_)___
|
||||||
|
| | / / _ \/ ___/ __ / __ `/ ___/ ___/ / __ \
|
||||||
|
| |/ / __/ / / /_/ / /_/ / /__/ /__/ / /_/ /
|
||||||
|
|___/\___/_/ \__,_/\__,_/\___/\___/_/\____/
|
||||||
|
|
||||||
6
ct/headers/warracker
Normal file
6
ct/headers/warracker
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
_ __ __
|
||||||
|
| | / /___ _______________ ______/ /_____ _____
|
||||||
|
| | /| / / __ `/ ___/ ___/ __ `/ ___/ //_/ _ \/ ___/
|
||||||
|
| |/ |/ / /_/ / / / / / /_/ / /__/ ,< / __/ /
|
||||||
|
|__/|__/\__,_/_/ /_/ \__,_/\___/_/|_|\___/_/
|
||||||
|
|
||||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://github.com/heiher/hev-socks5-server
|
# Source: https://github.com/heiher/hev-socks5-server
|
||||||
|
|
||||||
APP="hev-socks5-server"
|
APP="hev-socks5-server"
|
||||||
TAGS="proxy,socks5"
|
var_tags="${var_tags:-proxy;socks5}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
@@ -61,4 +61,4 @@ msg_ok "Completed Successfully!\n"
|
|||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it with a SOCKS5 client using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it with a SOCKS5 client using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}${IP}:1080${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}${IP}:1080${CL}"
|
||||||
echo -e "${INFO}${YW} and the credentials stored at /root/hev.creds${CL}"
|
echo -e "${INFO}${YW} and the credentials stored at /root/hev.creds${CL}"
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ function update_script() {
|
|||||||
done
|
done
|
||||||
msg_ok "Image-processing libraries up to date"
|
msg_ok "Image-processing libraries up to date"
|
||||||
fi
|
fi
|
||||||
RELEASE="1.143.1"
|
RELEASE="2.0.1"
|
||||||
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
|
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
|
||||||
msg_info "Stopping Services"
|
msg_info "Stopping Services"
|
||||||
systemctl stop immich-web
|
systemctl stop immich-web
|
||||||
@@ -158,6 +158,7 @@ EOF
|
|||||||
|
|
||||||
cd "$SRC_DIR"/machine-learning
|
cd "$SRC_DIR"/machine-learning
|
||||||
mkdir -p "$ML_DIR" && chown -R immich:immich "$ML_DIR"
|
mkdir -p "$ML_DIR" && chown -R immich:immich "$ML_DIR"
|
||||||
|
chown immich:immich ./uv.lock
|
||||||
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
|
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
|
||||||
if [[ -f ~/.openvino ]]; then
|
if [[ -f ~/.openvino ]]; then
|
||||||
msg_info "Updating HW-accelerated machine-learning"
|
msg_info "Updating HW-accelerated machine-learning"
|
||||||
@@ -190,6 +191,7 @@ EOF
|
|||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
$STD apt-get -y autoremove
|
$STD apt-get -y autoremove
|
||||||
$STD apt-get -y autoclean
|
$STD apt-get -y autoclean
|
||||||
|
$STD apt clean -y
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
systemctl restart immich-ml immich-web
|
systemctl restart immich-ml immich-web
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://github.com/Kometa-Team/Kometa
|
# Source: https://github.com/Kometa-Team/Kometa
|
||||||
|
|
||||||
APP="Kometa"
|
APP="Kometa"
|
||||||
TAGS="media;streaming"
|
var_tags="${var_tags:-media;streaming}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-4096}"
|
var_ram="${var_ram:-4096}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
|
|||||||
119
ct/metube.sh
119
ct/metube.sh
@@ -29,59 +29,53 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Stopping ${APP} Service"
|
if [[ $(echo ":$PATH:" != *":/usr/local/bin:"*) ]]; then
|
||||||
systemctl stop metube
|
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc
|
||||||
msg_ok "Stopped ${APP} Service"
|
source ~/.bashrc
|
||||||
|
if ! command -v deno &>/dev/null; then
|
||||||
msg_info "Backing up Old Installation"
|
export DENO_INSTALL="/usr/local"
|
||||||
if [[ -d /opt/metube_bak ]]; then
|
curl -fsSL https://deno.land/install.sh | $STD sh -s -- -y
|
||||||
rm -rf /opt/metube_bak
|
else
|
||||||
|
$STD deno upgrade
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
mv /opt/metube /opt/metube_bak
|
|
||||||
msg_ok "Backup created"
|
|
||||||
|
|
||||||
msg_info "Cloning Latest ${APP} Release"
|
if check_for_gh_release "metube" "alexta69/metube"; then
|
||||||
$STD git clone https://github.com/alexta69/metube /opt/metube
|
msg_info "Stopping ${APP} Service"
|
||||||
msg_ok "Cloned ${APP}"
|
systemctl stop metube
|
||||||
|
msg_ok "Stopped ${APP} Service"
|
||||||
|
|
||||||
msg_info "Building Frontend"
|
msg_info "Backing up Old Installation"
|
||||||
cd /opt/metube/ui
|
if [[ -d /opt/metube_bak ]]; then
|
||||||
$STD npm install
|
rm -rf /opt/metube_bak
|
||||||
$STD node_modules/.bin/ng build
|
fi
|
||||||
msg_ok "Built Frontend"
|
mv /opt/metube /opt/metube_bak
|
||||||
|
msg_ok "Backup created"
|
||||||
|
|
||||||
PYTHON_VERSION="3.13" setup_uv
|
fetch_and_deploy_gh_release "metube" "alexta69/metube" "tarball" "latest"
|
||||||
|
|
||||||
msg_info "Setting up Python Environment (uv)"
|
msg_info "Building Frontend"
|
||||||
$STD uv venv /opt/metube/.venv
|
cd /opt/metube/ui
|
||||||
$STD /opt/metube/.venv/bin/python -m ensurepip --upgrade
|
$STD npm install
|
||||||
$STD /opt/metube/.venv/bin/python -m pip install --upgrade pip
|
$STD node_modules/.bin/ng build
|
||||||
$STD /opt/metube/.venv/bin/python -m pip install pipenv
|
msg_ok "Built Frontend"
|
||||||
msg_ok "Python Environment Ready"
|
|
||||||
|
|
||||||
msg_info "Installing Backend Requirements"
|
|
||||||
cd /opt/metube
|
|
||||||
$STD /opt/metube/.venv/bin/pipenv install
|
|
||||||
msg_ok "Installed Backend"
|
|
||||||
|
|
||||||
msg_info "Restoring Environment File"
|
|
||||||
if [[ -f /opt/metube_bak/.env ]]; then
|
|
||||||
cp /opt/metube_bak/.env /opt/metube/.env
|
|
||||||
fi
|
|
||||||
msg_ok "Restored .env"
|
|
||||||
|
|
||||||
if [[ ! -d /opt/metube/.venv ]]; then
|
|
||||||
msg_info "Migrating to uv-based environment"
|
|
||||||
PYTHON_VERSION="3.13" setup_uv
|
PYTHON_VERSION="3.13" setup_uv
|
||||||
$STD uv venv /opt/metube/.venv
|
|
||||||
$STD /opt/metube/.venv/bin/python -m ensurepip --upgrade
|
|
||||||
$STD /opt/metube/.venv/bin/python -m pip install --upgrade pip
|
|
||||||
$STD /opt/metube/.venv/bin/python -m pip install pipenv
|
|
||||||
$STD /opt/metube/.venv/bin/pipenv install
|
|
||||||
$STD /opt/metube/.venv/bin/pipenv update yt-dlp
|
|
||||||
|
|
||||||
msg_info "Patching systemd Service"
|
msg_info "Installing Backend Requirements"
|
||||||
cat <<EOF >/etc/systemd/system/metube.service
|
cd /opt/metube
|
||||||
|
$STD uv sync
|
||||||
|
msg_ok "Installed Backend"
|
||||||
|
|
||||||
|
msg_info "Restoring Environment File"
|
||||||
|
if [[ -f /opt/metube_bak/.env ]]; then
|
||||||
|
cp /opt/metube_bak/.env /opt/metube/.env
|
||||||
|
fi
|
||||||
|
msg_ok "Restored .env"
|
||||||
|
|
||||||
|
if grep -q 'pipenv' /etc/systemd/system/metube.service; then
|
||||||
|
msg_info "Patching systemd Service"
|
||||||
|
cat <<EOF >/etc/systemd/system/metube.service
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Metube - YouTube Downloader
|
Description=Metube - YouTube Downloader
|
||||||
After=network.target
|
After=network.target
|
||||||
@@ -90,30 +84,31 @@ After=network.target
|
|||||||
Type=simple
|
Type=simple
|
||||||
WorkingDirectory=/opt/metube
|
WorkingDirectory=/opt/metube
|
||||||
EnvironmentFile=/opt/metube/.env
|
EnvironmentFile=/opt/metube/.env
|
||||||
ExecStart=/opt/metube/.venv/bin/pipenv run python3 app/main.py
|
ExecStart=/opt/metube/.venv/bin/python3 app/main.py
|
||||||
Restart=always
|
Restart=always
|
||||||
User=root
|
User=root
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOF
|
EOF
|
||||||
msg_ok "Patched systemd Service"
|
msg_ok "Patched systemd Service"
|
||||||
|
fi
|
||||||
|
$STD systemctl daemon-reload
|
||||||
|
msg_ok "Service Updated"
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf /opt/metube_bak
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned Up"
|
||||||
|
|
||||||
|
msg_info "Starting ${APP} Service"
|
||||||
|
systemctl start metube
|
||||||
|
sleep 1
|
||||||
|
msg_ok "Started ${APP} Service"
|
||||||
|
|
||||||
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
$STD systemctl daemon-reload
|
|
||||||
msg_ok "Service Updated"
|
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
|
||||||
rm -rf /opt/metube_bak
|
|
||||||
$STD apt-get -y autoremove
|
|
||||||
$STD apt-get -y autoclean
|
|
||||||
msg_ok "Cleaned Up"
|
|
||||||
|
|
||||||
msg_info "Starting ${APP} Service"
|
|
||||||
systemctl enable -q --now metube
|
|
||||||
sleep 1
|
|
||||||
msg_ok "Started ${APP} Service"
|
|
||||||
|
|
||||||
msg_ok "Updated Successfully!"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
|
|||||||
55
ct/myip.sh
Normal file
55
ct/myip.sh
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
#!/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://ipcheck.ing/
|
||||||
|
|
||||||
|
APP="MyIP"
|
||||||
|
var_tags="${var_tags:-network}"
|
||||||
|
var_cpu="${var_cpu:-2}"
|
||||||
|
var_ram="${var_ram:-1024}"
|
||||||
|
var_disk="${var_disk:-4}"
|
||||||
|
var_os="${var_os:-debian}"
|
||||||
|
var_version="${var_version:-13}"
|
||||||
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
if [[ ! -d /opt/myip ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if check_for_gh_release "myip" "jason5ng32/MyIP"; then
|
||||||
|
msg_info "Stopping Services"
|
||||||
|
systemctl stop myip
|
||||||
|
msg_ok "Stopped Services"
|
||||||
|
|
||||||
|
cp /opt/myip/.env /opt
|
||||||
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "myip" "jason5ng32/MyIP" "tarball"
|
||||||
|
mv /opt/.env /opt/myip
|
||||||
|
|
||||||
|
msg_info "Starting Services"
|
||||||
|
systemctl start myip
|
||||||
|
msg_ok "Started Services"
|
||||||
|
msg_ok "Updated Successfully"
|
||||||
|
fi
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:18966${CL}"
|
||||||
@@ -41,7 +41,8 @@ EOF
|
|||||||
NODE_VERSION="22" setup_nodejs
|
NODE_VERSION="22" setup_nodejs
|
||||||
|
|
||||||
msg_info "Updating ${APP} LXC"
|
msg_info "Updating ${APP} LXC"
|
||||||
$STD npm update -g n8n
|
rm -rf /usr/lib/node_modules/.n8n-* /usr/lib/node_modules/n8n
|
||||||
|
$STD npm install -g n8n --force
|
||||||
systemctl restart n8n
|
systemctl restart n8n
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
exit
|
exit
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -32,25 +32,20 @@ function update_script() {
|
|||||||
"2" "Install Themes" OFF \
|
"2" "Install Themes" OFF \
|
||||||
3>&1 1>&2 2>&3)
|
3>&1 1>&2 2>&3)
|
||||||
if [ "$UPD" == "1" ]; then
|
if [ "$UPD" == "1" ]; then
|
||||||
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
|
NODE_VERSION="22" setup_nodejs
|
||||||
if ! command -v npm >/dev/null 2>&1; then
|
|
||||||
msg_info "Installing NPM"
|
msg_info "Stopping Service"
|
||||||
$STD apt-get install -y npm
|
|
||||||
msg_ok "Installed NPM"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
msg_info "Stopping ${APP}"
|
|
||||||
systemctl stop nodered
|
systemctl stop nodered
|
||||||
msg_ok "Stopped ${APP}"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating Node-Red"
|
||||||
$STD npm install -g --unsafe-perm node-red
|
$STD npm install -g --unsafe-perm node-red
|
||||||
msg_ok "Updated ${APP}"
|
msg_ok "Updated Node-Red"
|
||||||
|
|
||||||
msg_info "Starting ${APP}"
|
msg_info "Starting Service"
|
||||||
systemctl start nodered
|
systemctl start nodered
|
||||||
msg_ok "Started ${APP}"
|
msg_ok "Started Service"
|
||||||
msg_ok "Update Successful"
|
msg_ok "Update Successfully!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if [ "$UPD" == "2" ]; then
|
if [ "$UPD" == "2" ]; then
|
||||||
@@ -99,4 +94,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:1880${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:1880${CL}"
|
||||||
|
|||||||
32
ct/ntfy.sh
32
ct/ntfy.sh
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
# Copyright (c) 2021-2025 tteck
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
# Author: tteck (tteckster)
|
# Author: CrazyWolf13
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
# Source: https://ntfy.sh/
|
# Source: https://ntfy.sh/
|
||||||
|
|
||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -23,13 +23,31 @@ function update_script() {
|
|||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d /var ]]; then
|
if [[ ! -d /etc/ntfy ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f /etc/apt/keyrings/archive.heckel.io.gpg ]; then
|
||||||
|
msg_info "Correcting old Ntfy Repository"
|
||||||
|
rm -f /etc/apt/keyrings/archive.heckel.io.gpg
|
||||||
|
rm -f /etc/apt/sources.list.d/archive.heckel.io.list
|
||||||
|
rm -f /etc/apt/sources.list.d/archive.heckel.io.list.bak
|
||||||
|
rm -f /etc/apt/sources.list.d/archive.heckel.io.sources
|
||||||
|
curl -fsSL -o /etc/apt/keyrings/ntfy.gpg https://archive.ntfy.sh/apt/keyring.gpg
|
||||||
|
cat <<'EOF' >/etc/apt/sources.list.d/ntfy.sources
|
||||||
|
Types: deb
|
||||||
|
URIs: https://archive.ntfy.sh/apt/
|
||||||
|
Suites: stable
|
||||||
|
Components: main
|
||||||
|
Signed-By: /etc/apt/keyrings/ntfy.gpg
|
||||||
|
EOF
|
||||||
|
msg_ok "Corrected old Ntfy Repository"
|
||||||
|
fi
|
||||||
|
|
||||||
msg_info "Updating $APP LXC"
|
msg_info "Updating $APP LXC"
|
||||||
$STD apt-get update
|
$STD apt update
|
||||||
$STD apt-get -y upgrade
|
$STD apt -y upgrade
|
||||||
msg_ok "Updated $APP LXC"
|
msg_ok "Updated $APP LXC"
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
@@ -41,4 +59,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
||||||
|
|||||||
@@ -28,6 +28,13 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
if ! [[ $(dpkg -s python3-lxml-html-clean 2>/dev/null) ]]; then
|
||||||
|
$STD apt-get install python3-lxml
|
||||||
|
curl -fsSL "http://archive.ubuntu.com/ubuntu/pool/universe/l/lxml-html-clean/python3-lxml-html-clean_0.1.1-1_all.deb" -o /opt/python3-lxml-html-clean.deb
|
||||||
|
$STD dpkg -i /opt/python3-lxml-html-clean.deb
|
||||||
|
rm -f /opt/python3-lxml-html-clean.deb
|
||||||
|
fi
|
||||||
|
|
||||||
RELEASE=$(curl -fsSL https://nightly.odoo.com/ | grep -oE 'href="[0-9]+\.[0-9]+/nightly"' | head -n1 | cut -d'"' -f2 | cut -d/ -f1)
|
RELEASE=$(curl -fsSL https://nightly.odoo.com/ | grep -oE 'href="[0-9]+\.[0-9]+/nightly"' | head -n1 | cut -d'"' -f2 | cut -d/ -f1)
|
||||||
LATEST_VERSION=$(curl -fsSL "https://nightly.odoo.com/${RELEASE}/nightly/deb/" |
|
LATEST_VERSION=$(curl -fsSL "https://nightly.odoo.com/${RELEASE}/nightly/deb/" |
|
||||||
grep -oP "odoo_${RELEASE}\.\d+_all\.deb" |
|
grep -oP "odoo_${RELEASE}\.\d+_all\.deb" |
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
systemctl stop open-webui.service
|
systemctl stop open-webui.service
|
||||||
$STD npm install --force
|
$STD npm install --force
|
||||||
export NODE_OPTIONS="--max-old-space-size=3584"
|
export NODE_OPTIONS="--max-old-space-size=6000"
|
||||||
$STD npm run build
|
$STD npm run build
|
||||||
cd ./backend
|
cd ./backend
|
||||||
$STD pip install -r requirements.txt -U
|
$STD pip install -r requirements.txt -U
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
APP="Overseerr"
|
APP="Overseerr"
|
||||||
var_tags="${var_tags:-media}"
|
var_tags="${var_tags:-media}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-4096}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-12}"
|
||||||
|
|||||||
45
ct/petio.sh
45
ct/petio.sh
@@ -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 tteck
|
|
||||||
# Author: tteck (tteckster)
|
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
|
||||||
# Source: https://petio.tv/
|
|
||||||
|
|
||||||
APP="Petio"
|
|
||||||
var_tags="${var_tags:-media}"
|
|
||||||
var_cpu="${var_cpu:-2}"
|
|
||||||
var_ram="${var_ram:-1024}"
|
|
||||||
var_disk="${var_disk:-4}"
|
|
||||||
var_os="${var_os:-ubuntu}"
|
|
||||||
var_version="${var_version:-20.04}"
|
|
||||||
|
|
||||||
header_info "$APP"
|
|
||||||
variables
|
|
||||||
color
|
|
||||||
catch_errors
|
|
||||||
|
|
||||||
function update_script() {
|
|
||||||
header_info
|
|
||||||
check_container_storage
|
|
||||||
check_container_resources
|
|
||||||
if [[ ! -d /opt/Petio ]]; then
|
|
||||||
msg_error "No ${APP} Installation Found!"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
msg_info "Updating $APP"
|
|
||||||
systemctl stop petio.service
|
|
||||||
curl -fsSL https://petio.tv/releases/latest -o petio-latest.zip
|
|
||||||
$STD unzip petio-latest.zip -d /opt/Petio
|
|
||||||
systemctl start petio.service
|
|
||||||
msg_ok "Updated $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}:7777${CL}"
|
|
||||||
@@ -32,8 +32,10 @@ function update_script() {
|
|||||||
systemctl stop plant-it
|
systemctl stop plant-it
|
||||||
msg_ok "Stopped $APP"
|
msg_ok "Stopped $APP"
|
||||||
|
|
||||||
USE_ORIGINAL_FILENAME="true" fetch_and_deploy_gh_release "plant-it" "MDeLuise/plant-it" "singlefile" "latest" "/opt/plant-it/backend" "server.jar"
|
USE_ORIGINAL_FILENAME="true" fetch_and_deploy_gh_release "plant-it" "MDeLuise/plant-it" "singlefile" "0.10.0" "/opt/plant-it/backend" "server.jar"
|
||||||
fetch_and_deploy_gh_release "plant-it-front" "MDeLuise/plant-it" "prebuild" "latest" "/opt/plant-it/frontend" "client.tar.gz"
|
fetch_and_deploy_gh_release "plant-it-front" "MDeLuise/plant-it" "prebuild" "0.10.0" "/opt/plant-it/frontend" "client.tar.gz"
|
||||||
|
msg_warn "Application is updated to latest Web version (v0.10.0). There will be no more updates available."
|
||||||
|
msg_warn "Please read: https://github.com/MDeLuise/plant-it/releases/tag/1.0.0"
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
msg_info "Starting $APP"
|
||||||
systemctl start plant-it
|
systemctl start plant-it
|
||||||
|
|||||||
@@ -40,7 +40,10 @@ function update_script() {
|
|||||||
|
|
||||||
fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "*-linux-amd64.tar.gz"
|
fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "*-linux-amd64.tar.gz"
|
||||||
ln -sf /opt/pulse/bin/pulse /usr/local/bin/pulse
|
ln -sf /opt/pulse/bin/pulse /usr/local/bin/pulse
|
||||||
chown -R pulse:pulse /etc/pulse /opt/pulse
|
mkdir -p /etc/pulse
|
||||||
|
chown pulse:pulse /etc/pulse
|
||||||
|
chown -R pulse:pulse /opt/pulse
|
||||||
|
chmod 700 /etc/pulse
|
||||||
if [[ -f "$SERVICE_PATH"/pulse-backend.service ]]; then
|
if [[ -f "$SERVICE_PATH"/pulse-backend.service ]]; then
|
||||||
mv "$SERVICE_PATH"/pulse-backend.service "$SERVICE_PATH"/pulse.service
|
mv "$SERVICE_PATH"/pulse-backend.service "$SERVICE_PATH"/pulse.service
|
||||||
fi
|
fi
|
||||||
|
|||||||
75
ct/pve-scripts-local.sh
Normal file
75
ct/pve-scripts-local.sh
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
#!/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://www.debian.org/
|
||||||
|
|
||||||
|
APP="PVE-Scripts-Local"
|
||||||
|
var_tags="${var_tags:-pve-scripts-local}"
|
||||||
|
var_cpu="${var_cpu:-2}"
|
||||||
|
var_ram="${var_ram:-4096}"
|
||||||
|
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/ProxmoxVE-Local ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if check_for_gh_release "ProxmoxVE-Local" "community-scripts/ProxmoxVE-Local"; then
|
||||||
|
msg_info "Stopping Services"
|
||||||
|
systemctl stop pvescriptslocal
|
||||||
|
msg_ok "Stopped Services"
|
||||||
|
|
||||||
|
msg_info "Backup Data"
|
||||||
|
cp /opt/ProxmoxVE-Local/.env /opt/.env.bak
|
||||||
|
cp -r /opt/ProxmoxVE-Local/data /opt/data.bak
|
||||||
|
msg_ok "Backed up Data"
|
||||||
|
|
||||||
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ProxmoxVE-Local" "community-scripts/ProxmoxVE-Local"
|
||||||
|
|
||||||
|
msg_info "Restoring Data"
|
||||||
|
if [[ -f /opt/.env.bak ]]; then
|
||||||
|
mv /opt/.env.bak /opt/ProxmoxVE-Local/.env
|
||||||
|
fi
|
||||||
|
if [[ -d /opt/data.bak ]]; then
|
||||||
|
rm -rf /opt/ProxmoxVE-Local/data
|
||||||
|
mv /opt/data.bak /opt/ProxmoxVE-Local/data
|
||||||
|
fi
|
||||||
|
msg_ok "Restored Data"
|
||||||
|
|
||||||
|
msg_info "Updating PVE Scripts local"
|
||||||
|
cd /opt/ProxmoxVE-Local
|
||||||
|
chmod 755 data
|
||||||
|
$STD npm install
|
||||||
|
$STD npm run build
|
||||||
|
msg_ok "Updated PVE Scripts local"
|
||||||
|
|
||||||
|
msg_info "Starting Services"
|
||||||
|
systemctl start pvescriptslocal
|
||||||
|
msg_ok "Started Services"
|
||||||
|
msg_ok "Updated Successfully"
|
||||||
|
fi
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
||||||
@@ -6,7 +6,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://github.com/rustdesk/rustdesk-server
|
# Source: https://github.com/rustdesk/rustdesk-server
|
||||||
|
|
||||||
APP="RustDesk Server"
|
APP="RustDesk Server"
|
||||||
TAGS="remote-desktop"
|
var_tags="${var_tags:-remote-desktop}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-4}"
|
|||||||
var_ram="${var_ram:-6144}"
|
var_ram="${var_ram:-6144}"
|
||||||
var_disk="${var_disk:-20}"
|
var_disk="${var_disk:-20}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -42,14 +42,14 @@ function update_script() {
|
|||||||
3>&1 1>&2 2>&3)
|
3>&1 1>&2 2>&3)
|
||||||
|
|
||||||
if [ "$UPD" == "1" ]; then
|
if [ "$UPD" == "1" ]; then
|
||||||
msg_info "Stopping Vaultwarden"
|
msg_info "Stopping Service"
|
||||||
systemctl stop vaultwarden.service
|
systemctl stop vaultwarden
|
||||||
msg_ok "Stopped Vaultwarden"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Updating VaultWarden to $VAULT (Patience)"
|
msg_info "Updating VaultWarden to $VAULT (Patience)"
|
||||||
cd ~ && rm -rf vaultwarden
|
cd ~ && rm -rf vaultwarden
|
||||||
$STD git clone https://github.com/dani-garcia/vaultwarden
|
$STD git clone https://github.com/dani-garcia/vaultwarden
|
||||||
cd vaultwarden
|
cd vaultwarden || exit
|
||||||
$STD cargo build --features "sqlite,mysql,postgresql" --release
|
$STD cargo build --features "sqlite,mysql,postgresql" --release
|
||||||
DIR=/usr/bin/vaultwarden
|
DIR=/usr/bin/vaultwarden
|
||||||
if [ -d "$DIR" ]; then
|
if [ -d "$DIR" ]; then
|
||||||
@@ -63,17 +63,17 @@ function update_script() {
|
|||||||
cd ~ && rm -rf vaultwarden
|
cd ~ && rm -rf vaultwarden
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|
||||||
msg_info "Starting Vaultwarden"
|
msg_info "Starting Service"
|
||||||
systemctl start vaultwarden.service
|
systemctl start vaultwarden
|
||||||
msg_ok "Started Vaultwarden"
|
msg_ok "Started Service"
|
||||||
|
|
||||||
msg_ok "$VAULT Update Successful"
|
msg_ok "$VAULT Update Successful"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if [ "$UPD" == "2" ]; then
|
if [ "$UPD" == "2" ]; then
|
||||||
msg_info "Stopping Vaultwarden"
|
msg_info "Stopping Service"
|
||||||
systemctl stop vaultwarden.service
|
systemctl stop vaultwarden
|
||||||
msg_ok "Stopped Vaultwarden"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Updating Web-Vault to $WVRELEASE"
|
msg_info "Updating Web-Vault to $WVRELEASE"
|
||||||
$STD curl -fsSLO https://github.com/dani-garcia/bw_web_builds/releases/download/"$WVRELEASE"/bw_web_"$WVRELEASE".tar.gz
|
$STD curl -fsSLO https://github.com/dani-garcia/bw_web_builds/releases/download/"$WVRELEASE"/bw_web_"$WVRELEASE".tar.gz
|
||||||
@@ -84,9 +84,9 @@ function update_script() {
|
|||||||
rm bw_web_"$WVRELEASE".tar.gz
|
rm bw_web_"$WVRELEASE".tar.gz
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|
||||||
msg_info "Starting Vaultwarden"
|
msg_info "Starting Service"
|
||||||
systemctl start vaultwarden.service
|
systemctl start vaultwarden
|
||||||
msg_ok "Started Vaultwarden"
|
msg_ok "Started Service"
|
||||||
msg_ok "$WVRELEASE Update Successful"
|
msg_ok "$WVRELEASE Update Successful"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|||||||
49
ct/verdaccio.sh
Normal file
49
ct/verdaccio.sh
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
#!/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: BrynnJKnight
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://verdaccio.org/
|
||||||
|
|
||||||
|
APP="Verdaccio"
|
||||||
|
var_tags="${var_tags:-dev-tools;npm;registry}"
|
||||||
|
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/verdaccio.service ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
msg_info "Updating LXC Container"
|
||||||
|
$STD apt update
|
||||||
|
$STD apt -y upgrade
|
||||||
|
msg_ok "Updated LXC Container"
|
||||||
|
|
||||||
|
NODE_VERSION="22" NODE_MODULE="verdaccio" setup_nodejs
|
||||||
|
systemctl restart verdaccio
|
||||||
|
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}:4873${CL}"
|
||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-16}"
|
var_disk="${var_disk:-16}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -29,10 +29,10 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "victoriametrics" "VictoriaMetrics/VictoriaMetrics"; then
|
if check_for_gh_release "victoriametrics" "VictoriaMetrics/VictoriaMetrics"; then
|
||||||
msg_info "Stopping $APP"
|
msg_info "Stopping Service"
|
||||||
systemctl stop victoriametrics
|
systemctl stop victoriametrics
|
||||||
[[ -f /etc/systemd/system/victoriametrics-logs.service ]] && systemctl stop victoriametrics-logs
|
[[ -f /etc/systemd/system/victoriametrics-logs.service ]] && systemctl stop victoriametrics-logs
|
||||||
msg_ok "Stopped $APP"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
victoriametrics_filename=$(curl -fsSL "https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest" |
|
victoriametrics_filename=$(curl -fsSL "https://api.github.com/repos/VictoriaMetrics/VictoriaMetrics/releases/latest" |
|
||||||
jq -r '.assets[].name' |
|
jq -r '.assets[].name' |
|
||||||
@@ -50,11 +50,11 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
chmod +x /opt/victoriametrics/*
|
chmod +x /opt/victoriametrics/*
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
msg_info "Starting Service"
|
||||||
systemctl start victoriametrics
|
systemctl start victoriametrics
|
||||||
[[ -f /etc/systemd/system/victoriametrics-logs.service ]] && systemctl start victoriametrics-logs
|
[[ -f /etc/systemd/system/victoriametrics-logs.service ]] && systemctl start victoriametrics-logs
|
||||||
msg_ok "Started $APP"
|
msg_ok "Started Service"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -29,25 +29,25 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
RELEASE=$(curl -fsSL https://dl.vikunja.io/vikunja/ | grep -oP 'href="/vikunja/\K[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1)
|
RELEASE=$(curl -fsSL https://dl.vikunja.io/vikunja/ | grep -oP 'href="/vikunja/\K[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1)
|
||||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||||
msg_info "Stopping ${APP}"
|
msg_info "Stopping Service"
|
||||||
systemctl stop vikunja
|
systemctl stop vikunja
|
||||||
msg_ok "Stopped ${APP}"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Updating ${APP} to ${RELEASE}"
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
cd /opt
|
cd /opt || exit
|
||||||
rm -rf /opt/vikunja/vikunja
|
rm -rf /opt/vikunja/vikunja
|
||||||
curl -fsSL "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb" -o $(basename "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb")
|
curl -fsSL "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb" -o $(basename "https://dl.vikunja.io/vikunja/$RELEASE/vikunja-$RELEASE-amd64.deb")
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
$STD dpkg -i vikunja-$RELEASE-amd64.deb
|
$STD dpkg -i vikunja-"$RELEASE"-amd64.deb
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
msg_ok "Updated ${APP}"
|
msg_ok "Updated ${APP}"
|
||||||
|
|
||||||
msg_info "Starting ${APP}"
|
msg_info "Starting Service"
|
||||||
systemctl start vikunja
|
systemctl start vikunja
|
||||||
msg_ok "Started ${APP}"
|
msg_ok "Started Service"
|
||||||
|
|
||||||
msg_info "Cleaning Up"
|
msg_info "Cleaning Up"
|
||||||
rm -rf /opt/vikunja-$RELEASE-amd64.deb
|
rm -rf /opt/vikunja-"$RELEASE"-amd64.deb
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
else
|
else
|
||||||
|
|||||||
11
ct/wallos.sh
11
ct/wallos.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-5}"
|
var_disk="${var_disk:-5}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -35,10 +35,9 @@ function update_script() {
|
|||||||
mv /opt/wallos/images/uploads/logos /opt/logos/
|
mv /opt/wallos/images/uploads/logos /opt/logos/
|
||||||
msg_ok "Backup created"
|
msg_ok "Backup created"
|
||||||
|
|
||||||
rm -rf /opt/wallos
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wallos" "ellite/Wallos" "tarball"
|
||||||
fetch_and_deploy_gh_release "wallos" "ellite/Wallos" "tarball"
|
|
||||||
|
|
||||||
msg_info "Configuring ${APP}"
|
msg_info "Configuring Wallos"
|
||||||
rm -rf /opt/wallos/db/wallos.empty.db
|
rm -rf /opt/wallos/db/wallos.empty.db
|
||||||
mv /opt/wallos.db /opt/wallos/db/wallos.db
|
mv /opt/wallos.db /opt/wallos/db/wallos.db
|
||||||
mv /opt/logos/* /opt/wallos/images/uploads/logos
|
mv /opt/logos/* /opt/wallos/images/uploads/logos
|
||||||
@@ -49,12 +48,12 @@ function update_script() {
|
|||||||
chmod -R 755 /opt/wallos
|
chmod -R 755 /opt/wallos
|
||||||
mkdir -p /var/log/cron
|
mkdir -p /var/log/cron
|
||||||
$STD curl http://localhost/endpoints/db/migrate.php
|
$STD curl http://localhost/endpoints/db/migrate.php
|
||||||
msg_ok "Configured ${APP}"
|
msg_ok "Configured Wallos"
|
||||||
|
|
||||||
msg_info "Reload Apache2"
|
msg_info "Reload Apache2"
|
||||||
systemctl reload apache2
|
systemctl reload apache2
|
||||||
msg_ok "Apache2 Reloaded"
|
msg_ok "Apache2 Reloaded"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
63
ct/warracker.sh
Normal file
63
ct/warracker.sh
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
#!/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/sassanix/Warracker/
|
||||||
|
|
||||||
|
APP="Warracker"
|
||||||
|
var_tags="${var_tags:-warranty}"
|
||||||
|
var_cpu="${var_cpu:-1}"
|
||||||
|
var_ram="${var_ram:-512}"
|
||||||
|
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/warracker ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if check_for_gh_release "warracker" "sassanix/Warracker"; then
|
||||||
|
msg_info "Stopping Services"
|
||||||
|
systemctl stop warrackermigration
|
||||||
|
systemctl stop warracker
|
||||||
|
systemctl stop nginx
|
||||||
|
msg_ok "Stopped Services"
|
||||||
|
|
||||||
|
fetch_and_deploy_gh_release "warracker" "sassanix/Warracker" "tarball" "latest" "/opt/warracker"
|
||||||
|
|
||||||
|
msg_info "Updating Warracker"
|
||||||
|
cd /opt/warracker/backend
|
||||||
|
$STD uv venv .venv
|
||||||
|
$STD source .venv/bin/activate
|
||||||
|
$STD uv pip install -r requirements.txt
|
||||||
|
msg_ok "Updated Warracker"
|
||||||
|
|
||||||
|
msg_info "Starting Services"
|
||||||
|
systemctl start warracker
|
||||||
|
systemctl start nginx
|
||||||
|
msg_ok "Started Services"
|
||||||
|
msg_ok "Updated Successfully"
|
||||||
|
fi
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -28,8 +28,8 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if ! [[ $(dpkg -s zstd 2>/dev/null) ]]; then
|
if ! [[ $(dpkg -s zstd 2>/dev/null) ]]; then
|
||||||
$STD apt-get update
|
$STD apt update
|
||||||
$STD apt-get install -y zstd
|
$STD apt install -y zstd
|
||||||
fi
|
fi
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
# Dirty-Fix 03/2025 for missing APP_version.txt on old installations, set to pre-latest release
|
# Dirty-Fix 03/2025 for missing APP_version.txt on old installations, set to pre-latest release
|
||||||
@@ -69,7 +69,7 @@ EOF
|
|||||||
msg_info "Updating Wastebin"
|
msg_info "Updating Wastebin"
|
||||||
temp_file=$(mktemp)
|
temp_file=$(mktemp)
|
||||||
curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst" -o "$temp_file"
|
curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.tar.zst" -o "$temp_file"
|
||||||
tar -xf $temp_file
|
tar -xf "$temp_file"
|
||||||
cp -f wastebin* /opt/wastebin/
|
cp -f wastebin* /opt/wastebin/
|
||||||
chmod +x /opt/wastebin/wastebin
|
chmod +x /opt/wastebin/wastebin
|
||||||
chmod +x /opt/wastebin/wastebin-ctl
|
chmod +x /opt/wastebin/wastebin-ctl
|
||||||
@@ -81,7 +81,7 @@ EOF
|
|||||||
msg_ok "Started Wastebin"
|
msg_ok "Started Wastebin"
|
||||||
|
|
||||||
msg_info "Cleaning Up"
|
msg_info "Cleaning Up"
|
||||||
rm -f $temp_file
|
rm -f "$temp_file"
|
||||||
msg_ok "Cleanup Completed"
|
msg_ok "Cleanup Completed"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -29,29 +29,29 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "watcharr" "sbondCo/Watcharr"; then
|
if check_for_gh_release "watcharr" "sbondCo/Watcharr"; then
|
||||||
msg_info "Stopping $APP"
|
msg_info "Stopping Service"
|
||||||
systemctl stop watcharr
|
systemctl stop watcharr
|
||||||
msg_ok "Stopped $APP"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
rm -f /opt/watcharr/server/watcharr
|
rm -f /opt/watcharr/server/watcharr
|
||||||
rm -rf /opt/watcharr/server/ui
|
rm -rf /opt/watcharr/server/ui
|
||||||
fetch_and_deploy_gh_release "watcharr" "sbondCo/Watcharr" "tarball"
|
fetch_and_deploy_gh_release "watcharr" "sbondCo/Watcharr" "tarball"
|
||||||
|
|
||||||
msg_info "Updating $APP"
|
msg_info "Updating Watcharr"
|
||||||
cd /opt/watcharr
|
cd /opt/watcharr || exit
|
||||||
export GOOS=linux
|
export GOOS=linux
|
||||||
$STD npm i
|
$STD npm i
|
||||||
$STD npm run build
|
$STD npm run build
|
||||||
mv ./build ./server/ui
|
mv ./build ./server/ui
|
||||||
cd server
|
cd server || exit
|
||||||
$STD go mod download
|
$STD go mod download
|
||||||
$STD go build -o ./watcharr
|
$STD go build -o ./watcharr
|
||||||
msg_ok "Updated $APP"
|
msg_ok "Updated Watcharr"
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
msg_info "Starting Service"
|
||||||
systemctl start watcharr
|
systemctl start watcharr
|
||||||
msg_ok "Started $APP"
|
msg_ok "Started Service"
|
||||||
msg_ok "Update Successfully"
|
msg_ok "Update Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -30,7 +30,7 @@ function update_script() {
|
|||||||
|
|
||||||
if check_for_gh_release "watchyourlan" "aceberg/WatchYourLAN"; then
|
if check_for_gh_release "watchyourlan" "aceberg/WatchYourLAN"; then
|
||||||
msg_info "Stopping service"
|
msg_info "Stopping service"
|
||||||
systemctl stop watchyourlan.service
|
systemctl stop watchyourlan
|
||||||
msg_ok "Service stopped"
|
msg_ok "Service stopped"
|
||||||
|
|
||||||
cp -R /data/config.yaml ~/config.yaml
|
cp -R /data/config.yaml ~/config.yaml
|
||||||
@@ -45,7 +45,7 @@ function update_script() {
|
|||||||
msg_info "Starting service"
|
msg_info "Starting service"
|
||||||
systemctl enable -q --now watchyourlan
|
systemctl enable -q --now watchyourlan
|
||||||
msg_ok "Service started"
|
msg_ok "Service started"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-2}"
|
var_disk="${var_disk:-2}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -45,7 +45,7 @@ function update_script() {
|
|||||||
rm -rf /opt/wavelog
|
rm -rf /opt/wavelog
|
||||||
fetch_and_deploy_gh_release "wavelog" "wavelog/wavelog" "tarball"
|
fetch_and_deploy_gh_release "wavelog" "wavelog/wavelog" "tarball"
|
||||||
|
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating Wavelog"
|
||||||
rm -rf /opt/wavelog/install
|
rm -rf /opt/wavelog/install
|
||||||
mv /opt/config.php /opt/wavelog/application/config/config.php
|
mv /opt/config.php /opt/wavelog/application/config/config.php
|
||||||
mv /opt/database.php /opt/wavelog/application/config/database.php
|
mv /opt/database.php /opt/wavelog/application/config/database.php
|
||||||
@@ -57,12 +57,12 @@ function update_script() {
|
|||||||
chown -R www-data:www-data /opt/wavelog/
|
chown -R www-data:www-data /opt/wavelog/
|
||||||
find /opt/wavelog/ -type d -exec chmod 755 {} \;
|
find /opt/wavelog/ -type d -exec chmod 755 {} \;
|
||||||
find /opt/wavelog/ -type f -exec chmod 664 {} \;
|
find /opt/wavelog/ -type f -exec chmod 664 {} \;
|
||||||
msg_ok "Updated ${APP}"
|
msg_ok "Updated Wavelog"
|
||||||
|
|
||||||
msg_info "Starting Services"
|
msg_info "Starting Services"
|
||||||
systemctl start apache2
|
systemctl start apache2
|
||||||
msg_ok "Started Services"
|
msg_ok "Started Services"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,12 +6,12 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
# Source: https://github.com/Lissy93/web-check
|
# Source: https://github.com/Lissy93/web-check
|
||||||
|
|
||||||
APP="web-check"
|
APP="web-check"
|
||||||
TAGS="network;analysis"
|
var_tags="${var_tags:-network;analysis}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-12}"
|
var_disk="${var_disk:-12}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -20,15 +20,15 @@ color
|
|||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d /opt/web-check ]]; then
|
if [[ ! -d /opt/web-check ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
|
||||||
fi
|
|
||||||
msg_error "Currently we don't provide an update function for this ${APP}."
|
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
msg_error "Currently we don't provide an update function for this App."
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
@@ -38,4 +38,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
||||||
|
|||||||
19
ct/wger.sh
19
ct/wger.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-6}"
|
var_disk="${var_disk:-6}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -29,20 +29,20 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/wger-project/wger/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/wger-project/wger/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')
|
||||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||||
msg_info "Stopping $APP"
|
msg_info "Stopping Service"
|
||||||
systemctl stop wger
|
systemctl stop wger
|
||||||
msg_ok "Stopped $APP"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Updating $APP to v${RELEASE}"
|
msg_info "Updating $APP to v${RELEASE}"
|
||||||
temp_file=$(mktemp)
|
temp_file=$(mktemp)
|
||||||
curl -fsSL "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz" -o "$temp_file"
|
curl -fsSL "https://github.com/wger-project/wger/archive/refs/tags/$RELEASE.tar.gz" -o "$temp_file"
|
||||||
tar xzf "$temp_file"
|
tar xzf "$temp_file"
|
||||||
cp -rf wger-"$RELEASE"/* /home/wger/src
|
cp -rf wger-"$RELEASE"/* /home/wger/src
|
||||||
cd /home/wger/src
|
cd /home/wger/src || exit
|
||||||
python3 manage.py migrate &>/dev/null
|
$STD python3 manage.py migrate
|
||||||
yarn install &>/dev/null
|
$STD yarn install
|
||||||
yarn build:css:sass &>/dev/null
|
$STD yarn build:css:sass
|
||||||
python3 manage.py collectstatic --noinput &>/dev/null
|
$STD python3 manage.py collectstatic --noinput
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
msg_ok "Updated $APP to v${RELEASE}"
|
msg_ok "Updated $APP to v${RELEASE}"
|
||||||
|
|
||||||
@@ -53,8 +53,7 @@ function update_script() {
|
|||||||
msg_info "Cleaning Up"
|
msg_info "Cleaning Up"
|
||||||
rm -rf "$temp_file"
|
rm -rf "$temp_file"
|
||||||
msg_ok "Cleanup Completed"
|
msg_ok "Cleanup Completed"
|
||||||
|
msg_ok "Updated Successfully!"
|
||||||
msg_ok "Update Successful"
|
|
||||||
else
|
else
|
||||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -20,18 +20,19 @@ color
|
|||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d /var/lib/whisparr ]]; then
|
if [[ ! -d /var/lib/whisparr ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
|
||||||
fi
|
|
||||||
msg_info "Updating $APP LXC"
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get -y upgrade
|
|
||||||
msg_ok "Updated $APP LXC"
|
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
msg_info "Updating Whisparr"
|
||||||
|
$STD apt update
|
||||||
|
$STD apt -y upgrade
|
||||||
|
msg_ok "Updated Whisparr"
|
||||||
|
msg_ok "Updated Successfully!"
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
@@ -41,4 +42,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6969${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6969${CL}"
|
||||||
|
|||||||
19
ct/wikijs.sh
19
ct/wikijs.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-10}"
|
var_disk="${var_disk:-10}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -27,7 +27,9 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
NODE_VERSION="22" NODE_MODULE="yarn@latest,node-gyp" setup_nodejs
|
|
||||||
|
NODE_VERSION="22" NODE_MODULE="yarn,node-gyp" setup_nodejs
|
||||||
|
|
||||||
if check_for_gh_release "wikijs" "requarks/wiki"; then
|
if check_for_gh_release "wikijs" "requarks/wiki"; then
|
||||||
msg_info "Verifying whether ${APP}' new release is v3.x+ and current install uses SQLite."
|
msg_info "Verifying whether ${APP}' new release is v3.x+ and current install uses SQLite."
|
||||||
SQLITE_INSTALL=$([ -f /opt/wikijs/db.sqlite ] && echo "true" || echo "false")
|
SQLITE_INSTALL=$([ -f /opt/wikijs/db.sqlite ] && echo "true" || echo "false")
|
||||||
@@ -37,9 +39,9 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
msg_ok "There is an update path available for ${APP}"
|
msg_ok "There is an update path available for ${APP}"
|
||||||
|
|
||||||
msg_info "Stopping ${APP}"
|
msg_info "Stopping Service"
|
||||||
systemctl stop wikijs
|
systemctl stop wikijs
|
||||||
msg_ok "Stopped ${APP}"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Backing up Data"
|
msg_info "Backing up Data"
|
||||||
mkdir /opt/wikijs-backup
|
mkdir /opt/wikijs-backup
|
||||||
@@ -47,22 +49,21 @@ function update_script() {
|
|||||||
cp -R /opt/wikijs/{config.yml,/data} /opt/wikijs-backup
|
cp -R /opt/wikijs/{config.yml,/data} /opt/wikijs-backup
|
||||||
msg_ok "Backed up Data"
|
msg_ok "Backed up Data"
|
||||||
|
|
||||||
rm -rf /opt/wikijs/*
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "wikijs" "requarks/wiki" "prebuild" "latest" "/opt/wikijs" "wiki-js.tar.gz"
|
||||||
fetch_and_deploy_gh_release "wikijs" "requarks/wiki" "prebuild" "latest" "/opt/wikijs" "wiki-js.tar.gz"
|
|
||||||
|
|
||||||
msg_info "Restoring Data"
|
msg_info "Restoring Data"
|
||||||
cp -R /opt/wikijs-backup/* /opt/wikijs
|
cp -R /opt/wikijs-backup/* /opt/wikijs
|
||||||
$SQLITE_INSTALL && $STD npm rebuild sqlite3
|
$SQLITE_INSTALL && $STD npm rebuild sqlite3
|
||||||
msg_ok "Restored Data"
|
msg_ok "Restored Data"
|
||||||
|
|
||||||
msg_info "Starting ${APP}"
|
msg_info "Starting Service"
|
||||||
systemctl start wikijs
|
systemctl start wikijs
|
||||||
msg_ok "Started ${APP}"
|
msg_ok "Started Service"
|
||||||
|
|
||||||
msg_info "Cleaning Up"
|
msg_info "Cleaning Up"
|
||||||
rm -rf /opt/wikijs-backup
|
rm -rf /opt/wikijs-backup
|
||||||
msg_ok "Cleanup Completed"
|
msg_ok "Cleanup Completed"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
var_tun="${var_tun:-1}"
|
var_tun="${var_tun:-1}"
|
||||||
|
|
||||||
@@ -30,18 +30,19 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
if ! dpkg -s git >/dev/null 2>&1; then
|
if ! dpkg -s git >/dev/null 2>&1; then
|
||||||
msg_info "Installing git"
|
msg_info "Installing git"
|
||||||
$STD apt-get update
|
$STD apt update
|
||||||
$STD apt-get install -y git
|
$STD apt install -y git
|
||||||
msg_ok "Installed git"
|
msg_ok "Installed git"
|
||||||
fi
|
fi
|
||||||
apt-get update
|
apt update
|
||||||
apt-get -y upgrade
|
apt -y upgrade
|
||||||
if [[ -d /etc/wgdashboard ]]; then
|
if [[ -d /etc/wgdashboard ]]; then
|
||||||
sleep 2
|
sleep 2
|
||||||
cd /etc/wgdashboard/src
|
cd /etc/wgdashboard/src || exit
|
||||||
./wgd.sh update
|
./wgd.sh update
|
||||||
./wgd.sh start
|
./wgd.sh start
|
||||||
fi
|
fi
|
||||||
|
msg_ok "Updated Successfully!"
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
18
ct/wizarr.sh
18
ct/wizarr.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -32,9 +32,9 @@ function update_script() {
|
|||||||
setup_uv
|
setup_uv
|
||||||
|
|
||||||
if check_for_gh_release "wizarr" "wizarrrr/wizarr"; then
|
if check_for_gh_release "wizarr" "wizarrrr/wizarr"; then
|
||||||
msg_info "Stopping $APP"
|
msg_info "Stopping Service"
|
||||||
systemctl stop wizarr
|
systemctl stop wizarr
|
||||||
msg_ok "Stopped $APP"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Creating Backup"
|
msg_info "Creating Backup"
|
||||||
BACKUP_FILE="/opt/wizarr_backup_$(date +%F).tar.gz"
|
BACKUP_FILE="/opt/wizarr_backup_$(date +%F).tar.gz"
|
||||||
@@ -44,8 +44,8 @@ function update_script() {
|
|||||||
|
|
||||||
fetch_and_deploy_gh_release "wizarr" "wizarrrr/wizarr"
|
fetch_and_deploy_gh_release "wizarr" "wizarrrr/wizarr"
|
||||||
|
|
||||||
msg_info "Updating $APP"
|
msg_info "Updating Wizarr"
|
||||||
cd /opt/wizarr
|
cd /opt/wizarr || exit
|
||||||
$STD /usr/local/bin/uv sync --frozen
|
$STD /usr/local/bin/uv sync --frozen
|
||||||
$STD /usr/local/bin/uv run --frozen pybabel compile -d app/translations
|
$STD /usr/local/bin/uv run --frozen pybabel compile -d app/translations
|
||||||
$STD npm --prefix app/static install
|
$STD npm --prefix app/static install
|
||||||
@@ -56,16 +56,16 @@ function update_script() {
|
|||||||
if ! grep -q 'frozen' /opt/wizarr/start.sh; then
|
if ! grep -q 'frozen' /opt/wizarr/start.sh; then
|
||||||
sed -i 's/run/& --frozen/' /opt/wizarr/start.sh
|
sed -i 's/run/& --frozen/' /opt/wizarr/start.sh
|
||||||
fi
|
fi
|
||||||
msg_ok "Updated $APP"
|
msg_ok "Updated Wizarr"
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
msg_info "Starting Service"
|
||||||
systemctl start wizarr
|
systemctl start wizarr
|
||||||
msg_ok "Started $APP"
|
msg_ok "Started Service"
|
||||||
|
|
||||||
msg_info "Cleaning Up"
|
msg_info "Cleaning Up"
|
||||||
rm -rf "$BACKUP_FILE"
|
rm -rf "$BACKUP_FILE"
|
||||||
msg_ok "Cleanup Completed"
|
msg_ok "Cleanup Completed"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ var_disk="${var_disk:-5}"
|
|||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
variables
|
variables
|
||||||
@@ -20,15 +20,15 @@ color
|
|||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d /var/www/html/wordpress ]]; then
|
if [[ ! -d /var/www/html/wordpress ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
|
||||||
fi
|
|
||||||
msg_error "Wordpress should be updated via the user interface."
|
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
msg_error "Wordpress should be updated via the user interface."
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
@@ -38,4 +38,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN} ${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN} ${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/${CL}"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -29,9 +29,9 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "yt-dlp-webui" "marcopiovanello/yt-dlp-web-ui"; then
|
if check_for_gh_release "yt-dlp-webui" "marcopiovanello/yt-dlp-web-ui"; then
|
||||||
msg_info "Stopping $APP"
|
msg_info "Stopping Service"
|
||||||
systemctl stop yt-dlp-webui
|
systemctl stop yt-dlp-webui
|
||||||
msg_ok "Stopped $APP"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
msg_info "Updating yt-dlp"
|
msg_info "Updating yt-dlp"
|
||||||
$STD yt-dlp -U
|
$STD yt-dlp -U
|
||||||
@@ -40,9 +40,9 @@ function update_script() {
|
|||||||
rm -rf /usr/local/bin/yt-dlp-webui
|
rm -rf /usr/local/bin/yt-dlp-webui
|
||||||
fetch_and_deploy_gh_release "yt-dlp-webui" "marcopiovanello/yt-dlp-web-ui" "singlefile" "latest" "/usr/local/bin" "yt-dlp-webui_linux-amd64"
|
fetch_and_deploy_gh_release "yt-dlp-webui" "marcopiovanello/yt-dlp-web-ui" "singlefile" "latest" "/usr/local/bin" "yt-dlp-webui_linux-amd64"
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
msg_info "Starting Service"
|
||||||
systemctl start yt-dlp-webui
|
systemctl start yt-dlp-webui
|
||||||
msg_ok "Started $APP"
|
msg_ok "Started Service"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
|
|||||||
44
ct/zammad.sh
44
ct/zammad.sh
@@ -11,7 +11,7 @@ var_disk="${var_disk:-8}"
|
|||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-4096}"
|
var_ram="${var_ram:-4096}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -20,25 +20,29 @@ color
|
|||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d /opt/zammad ]]; then
|
if [[ ! -d /opt/zammad ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
|
||||||
fi
|
|
||||||
msg_info "Stopping Service"
|
|
||||||
$STD systemctl stop zammad
|
|
||||||
msg_info "Updating ${APP}"
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-mark hold zammad
|
|
||||||
$STD apt-get -y upgrade
|
|
||||||
$STD apt-mark unhold zammad
|
|
||||||
$STD apt-get -y upgrade
|
|
||||||
msg_info "Starting Service"
|
|
||||||
$STD systemctl start zammad
|
|
||||||
msg_ok "Updated ${APP} LXC"
|
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
msg_info "Stopping Service"
|
||||||
|
systemctl stop zammad
|
||||||
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
|
msg_info "Updating ${APP}"
|
||||||
|
$STD apt update
|
||||||
|
$STD apt-mark hold zammad
|
||||||
|
$STD apt -y upgrade
|
||||||
|
$STD apt-mark unhold zammad
|
||||||
|
$STD apt -y upgrade
|
||||||
|
msg_ok "Updated ${APP}"
|
||||||
|
|
||||||
|
msg_info "Starting Service"
|
||||||
|
systemctl start zammad
|
||||||
|
msg_ok "Updated ${APP} LXC"
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
@@ -48,4 +52,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -20,26 +20,28 @@ color
|
|||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
|
|
||||||
if [[ ! -f /usr/sbin/zerotier-one ]]; then
|
if [[ ! -f /usr/sbin/zerotier-one ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
|
||||||
fi
|
|
||||||
msg_info "Stopping Service"
|
|
||||||
systemctl stop zerotier-one
|
|
||||||
msg_ok "Stopping Service"
|
|
||||||
msg_info "Updating ${APP}"
|
|
||||||
$STD apt-get update
|
|
||||||
apt-get -y upgrade
|
|
||||||
msg_ok "Updated ${APP}"
|
|
||||||
|
|
||||||
msg_info "Starting Service"
|
|
||||||
systemctl start zerotier-one
|
|
||||||
msg_ok "Started Service"
|
|
||||||
exit
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
msg_info "Stopping Service"
|
||||||
|
systemctl stop zerotier-one
|
||||||
|
msg_ok "Stopping Service"
|
||||||
|
|
||||||
|
msg_info "Updating ${APP}"
|
||||||
|
$STD apt update
|
||||||
|
$STD apt -y upgrade
|
||||||
|
msg_ok "Updated ${APP}"
|
||||||
|
|
||||||
|
msg_info "Starting Service"
|
||||||
|
systemctl start zerotier-one
|
||||||
|
msg_ok "Started Service"
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
@@ -49,4 +51,4 @@ description
|
|||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
echo -e "${INFO}${YW} Access it using the following IP:${CL}"
|
echo -e "${INFO}${YW} Access it using the following IP:${CL}"
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:3443${CL}"
|
echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:3443${CL}"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-5}"
|
var_disk="${var_disk:-5}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-0}"
|
var_unprivileged="${var_unprivileged:-0}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -30,7 +30,6 @@ function update_script() {
|
|||||||
|
|
||||||
if check_for_gh_release "Zigbee2MQTT" "Koenkk/zigbee2mqtt"; then
|
if check_for_gh_release "Zigbee2MQTT" "Koenkk/zigbee2mqtt"; then
|
||||||
NODE_VERSION=24 NODE_MODULE="pnpm@$(curl -fsSL https://raw.githubusercontent.com/Koenkk/zigbee2mqtt/master/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
|
NODE_VERSION=24 NODE_MODULE="pnpm@$(curl -fsSL https://raw.githubusercontent.com/Koenkk/zigbee2mqtt/master/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
|
||||||
|
|
||||||
msg_info "Stopping Service"
|
msg_info "Stopping Service"
|
||||||
systemctl stop zigbee2mqtt
|
systemctl stop zigbee2mqtt
|
||||||
msg_ok "Stopped Service"
|
msg_ok "Stopped Service"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-5}"
|
var_disk="${var_disk:-5}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -26,12 +26,8 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
if ! command -v pnpm &>/dev/null; then
|
|
||||||
msg_info "Installing pnpm"
|
NODE_VERSION="22" NODE_MODULE="pnpm" setup_nodejs
|
||||||
#export NODE_OPTIONS=--openssl-legacy-provider
|
|
||||||
$STD npm install -g pnpm@latest
|
|
||||||
msg_ok "Installed pnpm"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if check_for_gh_release "zipline" "diced/zipline"; then
|
if check_for_gh_release "zipline" "diced/zipline"; then
|
||||||
msg_info "Stopping Service"
|
msg_info "Stopping Service"
|
||||||
@@ -47,7 +43,7 @@ function update_script() {
|
|||||||
fetch_and_deploy_gh_release "zipline" "diced/zipline" "tarball"
|
fetch_and_deploy_gh_release "zipline" "diced/zipline" "tarball"
|
||||||
|
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating ${APP}"
|
||||||
cd /opt/zipline
|
cd /opt/zipline || exit
|
||||||
mv /opt/.env /opt/zipline/.env
|
mv /opt/.env /opt/zipline/.env
|
||||||
$STD pnpm install
|
$STD pnpm install
|
||||||
$STD pnpm build
|
$STD pnpm build
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-6}"
|
var_disk="${var_disk:-6}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-5}"
|
var_disk="${var_disk:-5}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-0}"
|
var_unprivileged="${var_unprivileged:-0}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 512,
|
"ram": 512,
|
||||||
"hdd": 2,
|
"hdd": 2,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 7,
|
"hdd": 7,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 1024,
|
"ram": 1024,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
"website": null,
|
"website": null,
|
||||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
|
||||||
"config_path": "",
|
"config_path": "",
|
||||||
"description": "This script will add/remove a crontab schedule that updates all LXCs every Sunday at midnight.",
|
"description": "This script will add/remove a crontab schedule that updates the operating system of all LXCs every Sunday at midnight.",
|
||||||
"install_methods": [
|
"install_methods": [
|
||||||
{
|
{
|
||||||
"type": "default",
|
"type": "default",
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 4096,
|
"ram": 4096,
|
||||||
"hdd": 8,
|
"hdd": 8,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
52
frontend/public/json/ghostfolio.json
Normal file
52
frontend/public/json/ghostfolio.json
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
{
|
||||||
|
"name": "Ghostfolio",
|
||||||
|
"slug": "ghostfolio",
|
||||||
|
"categories": [
|
||||||
|
23
|
||||||
|
],
|
||||||
|
"date_created": "2025-09-29",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 3333,
|
||||||
|
"documentation": "https://github.com/ghostfolio/ghostfolio?tab=readme-ov-file#self-hosting",
|
||||||
|
"website": "https://ghostfol.io/",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/ghostfolio.webp",
|
||||||
|
"config_path": "/opt/ghostfolio/.env",
|
||||||
|
"description": "Ghostfolio is an open source wealth management software built with web technology. The application empowers busy people to keep track of stocks, ETFs or cryptocurrencies and make solid, data-driven investment decisions.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/ghostfolio.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 2,
|
||||||
|
"ram": 4096,
|
||||||
|
"hdd": 8,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "Create your first user account by visiting the web interface and clicking 'Get Started'. The first user will automatically get admin privileges.",
|
||||||
|
"type": "info"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Database and Redis credentials: `cat ~/ghostfolio.creds`",
|
||||||
|
"type": "info"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Optional: CoinGecko API keys can be added during installation or later in the .env file for enhanced cryptocurrency data.",
|
||||||
|
"type": "info"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Build process requires 4GB RAM (runtime: ~2GB). A temporary swap file will be created automatically if insufficient memory is detected.",
|
||||||
|
"type": "warning"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
40
frontend/public/json/goaway.json
Normal file
40
frontend/public/json/goaway.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "GoAway",
|
||||||
|
"slug": "goaway",
|
||||||
|
"categories": [
|
||||||
|
5
|
||||||
|
],
|
||||||
|
"date_created": "2025-09-25",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 8080,
|
||||||
|
"documentation": "https://github.com/pommee/goaway#configuration-file",
|
||||||
|
"config_path": "/opt/goaway/config/settings.yaml",
|
||||||
|
"website": "https://github.com/pommee/goaway",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/goaway.webp",
|
||||||
|
"description": "Lightweight DNS sinkhole written in Go with a modern dashboard client. Very good looking new alternative to Pi-Hole and Adguard Home.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/goaway.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 1,
|
||||||
|
"ram": 1024,
|
||||||
|
"hdd": 4,
|
||||||
|
"os": "Debian",
|
||||||
|
"version": "13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "Type `cat ~/goaway.creds` to see login credentials.",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,31 +1,186 @@
|
|||||||
{
|
{
|
||||||
"categories": [
|
"categories": [
|
||||||
{ "name": "Proxmox & Virtualization", "id": 1, "sort_order": 1.0, "description": "Tools and scripts to manage Proxmox VE and virtualization platforms effectively." },
|
{
|
||||||
{ "name": "Operating Systems", "id": 2, "sort_order": 2.0, "description": "Scripts for deploying and managing various operating systems." },
|
"name": "Proxmox & Virtualization",
|
||||||
{ "name": "Containers & Docker", "id": 3, "sort_order": 3.0, "description": "Solutions for containerization using Docker and related technologies." },
|
"id": 1,
|
||||||
{ "name": "Network & Firewall", "id": 4, "sort_order": 4.0, "description": "Enhance network security and configure firewalls with ease." },
|
"sort_order": 1.0,
|
||||||
{ "name": "Adblock & DNS", "id": 5, "sort_order": 5.0, "description": "Optimize your network with DNS and ad-blocking solutions." },
|
"description": "Tools and scripts to manage Proxmox VE and virtualization platforms effectively.",
|
||||||
{ "name": "Authentication & Security", "id": 6, "sort_order": 6.0, "description": "Secure your infrastructure with authentication and security tools." },
|
"icon": "server"
|
||||||
{ "name": "Backup & Recovery", "id": 7, "sort_order": 7.0, "description": "Reliable backup and recovery scripts to protect your data." },
|
},
|
||||||
{ "name": "Databases", "id": 8, "sort_order": 8.0, "description": "Deploy and manage robust database systems with ease." },
|
{
|
||||||
{ "name": "Monitoring & Analytics", "id": 9, "sort_order": 9.0, "description": "Monitor system performance and analyze data seamlessly." },
|
"name": "Operating Systems",
|
||||||
{ "name": "Dashboards & Frontends", "id": 10, "sort_order": 10.0, "description": "Create interactive dashboards and user-friendly frontends." },
|
"id": 2,
|
||||||
{ "name": "Files & Downloads", "id": 11, "sort_order": 11.0, "description": "Manage file sharing and downloading solutions efficiently." },
|
"sort_order": 2.0,
|
||||||
{ "name": "Documents & Notes", "id": 12, "sort_order": 12.0, "description": "Organize and manage documents and note-taking tools." },
|
"description": "Scripts for deploying and managing various operating systems.",
|
||||||
{ "name": "Media & Streaming", "id": 13, "sort_order": 13.0, "description": "Stream and manage media effortlessly across devices." },
|
"icon": "monitor"
|
||||||
{ "name": "*Arr Suite", "id": 14, "sort_order": 14.0, "description": "Automated media management with the popular *Arr suite tools." },
|
},
|
||||||
{ "name": "NVR & Cameras", "id": 15, "sort_order": 15.0, "description": "Manage network video recorders and camera setups." },
|
{
|
||||||
{ "name": "IoT & Smart Home", "id": 16, "sort_order": 16.0, "description": "Control and automate IoT devices and smart home systems." },
|
"name": "Containers & Docker",
|
||||||
{ "name": "ZigBee, Z-Wave & Matter", "id": 17, "sort_order": 17.0, "description": "Solutions for ZigBee, Z-Wave, and Matter-based device management." },
|
"id": 3,
|
||||||
{ "name": "MQTT & Messaging", "id": 18, "sort_order": 18.0, "description": "Set up reliable messaging and MQTT-based communication systems." },
|
"sort_order": 3.0,
|
||||||
{ "name": "Automation & Scheduling", "id": 19, "sort_order": 19.0, "description": "Automate tasks and manage scheduling with powerful tools." },
|
"description": "Solutions for containerization using Docker and related technologies.",
|
||||||
{ "name": "AI / Coding & Dev-Tools", "id": 20, "sort_order": 20.0, "description": "Leverage AI and developer tools for smarter coding workflows." },
|
"icon": "box"
|
||||||
{ "name": "Webservers & Proxies", "id": 21, "sort_order": 21.0, "description": "Deploy and configure web servers and proxy solutions." },
|
},
|
||||||
{ "name": "Bots & ChatOps", "id": 22, "sort_order": 22.0, "description": "Enhance collaboration with bots and ChatOps integrations." },
|
{
|
||||||
{ "name": "Finance & Budgeting", "id": 23, "sort_order": 23.0, "description": "Track expenses and manage budgets efficiently." },
|
"name": "Network & Firewall",
|
||||||
{ "name": "Gaming & Leisure", "id": 24, "sort_order": 24.0, "description": "Scripts for gaming servers and leisure-related tools." },
|
"id": 4,
|
||||||
{ "name": "Business & ERP", "id": 25, "sort_order": 25.0, "description": "Streamline business operations with ERP and management tools." },
|
"sort_order": 4.0,
|
||||||
{ "name": "Miscellaneous", "id": 0, "sort_order": 99.0, "description": "General scripts and tools that don't fit into other categories." }
|
"description": "Enhance network security and configure firewalls with ease.",
|
||||||
]
|
"icon": "shield"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Adblock & DNS",
|
||||||
|
"id": 5,
|
||||||
|
"sort_order": 5.0,
|
||||||
|
"description": "Optimize your network with DNS and ad-blocking solutions.",
|
||||||
|
"icon": "ban"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Authentication & Security",
|
||||||
|
"id": 6,
|
||||||
|
"sort_order": 6.0,
|
||||||
|
"description": "Secure your infrastructure with authentication and security tools.",
|
||||||
|
"icon": "lock"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Backup & Recovery",
|
||||||
|
"id": 7,
|
||||||
|
"sort_order": 7.0,
|
||||||
|
"description": "Reliable backup and recovery scripts to protect your data.",
|
||||||
|
"icon": "archive"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Databases",
|
||||||
|
"id": 8,
|
||||||
|
"sort_order": 8.0,
|
||||||
|
"description": "Deploy and manage robust database systems with ease.",
|
||||||
|
"icon": "database"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Monitoring & Analytics",
|
||||||
|
"id": 9,
|
||||||
|
"sort_order": 9.0,
|
||||||
|
"description": "Monitor system performance and analyze data seamlessly.",
|
||||||
|
"icon": "bar-chart"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Dashboards & Frontends",
|
||||||
|
"id": 10,
|
||||||
|
"sort_order": 10.0,
|
||||||
|
"description": "Create interactive dashboards and user-friendly frontends.",
|
||||||
|
"icon": "layout"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Files & Downloads",
|
||||||
|
"id": 11,
|
||||||
|
"sort_order": 11.0,
|
||||||
|
"description": "Manage file sharing and downloading solutions efficiently.",
|
||||||
|
"icon": "download"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Documents & Notes",
|
||||||
|
"id": 12,
|
||||||
|
"sort_order": 12.0,
|
||||||
|
"description": "Organize and manage documents and note-taking tools.",
|
||||||
|
"icon": "file-text"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Media & Streaming",
|
||||||
|
"id": 13,
|
||||||
|
"sort_order": 13.0,
|
||||||
|
"description": "Stream and manage media effortlessly across devices.",
|
||||||
|
"icon": "play"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "*Arr Suite",
|
||||||
|
"id": 14,
|
||||||
|
"sort_order": 14.0,
|
||||||
|
"description": "Automated media management with the popular *Arr suite tools.",
|
||||||
|
"icon": "tv"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "NVR & Cameras",
|
||||||
|
"id": 15,
|
||||||
|
"sort_order": 15.0,
|
||||||
|
"description": "Manage network video recorders and camera setups.",
|
||||||
|
"icon": "camera"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "IoT & Smart Home",
|
||||||
|
"id": 16,
|
||||||
|
"sort_order": 16.0,
|
||||||
|
"description": "Control and automate IoT devices and smart home systems.",
|
||||||
|
"icon": "home"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ZigBee, Z-Wave & Matter",
|
||||||
|
"id": 17,
|
||||||
|
"sort_order": 17.0,
|
||||||
|
"description": "Solutions for ZigBee, Z-Wave, and Matter-based device management.",
|
||||||
|
"icon": "radio"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "MQTT & Messaging",
|
||||||
|
"id": 18,
|
||||||
|
"sort_order": 18.0,
|
||||||
|
"description": "Set up reliable messaging and MQTT-based communication systems.",
|
||||||
|
"icon": "message-circle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Automation & Scheduling",
|
||||||
|
"id": 19,
|
||||||
|
"sort_order": 19.0,
|
||||||
|
"description": "Automate tasks and manage scheduling with powerful tools.",
|
||||||
|
"icon": "clock"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "AI / Coding & Dev-Tools",
|
||||||
|
"id": 20,
|
||||||
|
"sort_order": 20.0,
|
||||||
|
"description": "Leverage AI and developer tools for smarter coding workflows.",
|
||||||
|
"icon": "code"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Webservers & Proxies",
|
||||||
|
"id": 21,
|
||||||
|
"sort_order": 21.0,
|
||||||
|
"description": "Deploy and configure web servers and proxy solutions.",
|
||||||
|
"icon": "globe"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Bots & ChatOps",
|
||||||
|
"id": 22,
|
||||||
|
"sort_order": 22.0,
|
||||||
|
"description": "Enhance collaboration with bots and ChatOps integrations.",
|
||||||
|
"icon": "bot"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Finance & Budgeting",
|
||||||
|
"id": 23,
|
||||||
|
"sort_order": 23.0,
|
||||||
|
"description": "Track expenses and manage budgets efficiently.",
|
||||||
|
"icon": "dollar-sign"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Gaming & Leisure",
|
||||||
|
"id": 24,
|
||||||
|
"sort_order": 24.0,
|
||||||
|
"description": "Scripts for gaming servers and leisure-related tools.",
|
||||||
|
"icon": "gamepad-2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Business & ERP",
|
||||||
|
"id": 25,
|
||||||
|
"sort_order": 25.0,
|
||||||
|
"description": "Streamline business operations with ERP and management tools.",
|
||||||
|
"icon": "building"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Miscellaneous",
|
||||||
|
"id": 0,
|
||||||
|
"sort_order": 99.0,
|
||||||
|
"description": "General scripts and tools that don't fit into other categories.",
|
||||||
|
"icon": "more-horizontal"
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
35
frontend/public/json/myip.json
Normal file
35
frontend/public/json/myip.json
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"name": "MyIP",
|
||||||
|
"slug": "myip",
|
||||||
|
"categories": [
|
||||||
|
4
|
||||||
|
],
|
||||||
|
"date_created": "2025-09-29",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"config_path": "/opt/myip/.env",
|
||||||
|
"interface_port": 18966,
|
||||||
|
"documentation": "https://github.com/jason5ng32/MyIP#-environment-variable",
|
||||||
|
"website": "https://ipcheck.ing/",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/myip.webp",
|
||||||
|
"description": "The best IP Toolbox. Easy to check what's your IPs, IP geolocation, check for DNS leaks, examine WebRTC connections, speed test, ping test, MTR test, check website availability, whois search and more!",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/myip.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 2,
|
||||||
|
"ram": 1024,
|
||||||
|
"hdd": 2,
|
||||||
|
"os": "Debian",
|
||||||
|
"version": "13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": []
|
||||||
|
}
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 1024,
|
"ram": 1024,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 1024,
|
"ram": 1024,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 1024,
|
"ram": 1024,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 512,
|
"ram": 512,
|
||||||
"hdd": 2,
|
"hdd": 2,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
"script": "ct/overseerr.sh",
|
"script": "ct/overseerr.sh",
|
||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 2,
|
"cpu": 2,
|
||||||
"ram": 2048,
|
"ram": 4096,
|
||||||
"hdd": 8,
|
"hdd": 8,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "12"
|
||||||
|
|||||||
@@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Petio",
|
|
||||||
"slug": "petio",
|
|
||||||
"categories": [
|
|
||||||
13
|
|
||||||
],
|
|
||||||
"date_created": "2024-06-12",
|
|
||||||
"type": "ct",
|
|
||||||
"updateable": true,
|
|
||||||
"privileged": false,
|
|
||||||
"interface_port": 7777,
|
|
||||||
"documentation": "https://docs.petio.tv/",
|
|
||||||
"website": "https://petio.tv/",
|
|
||||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/petio.webp",
|
|
||||||
"config_path": "",
|
|
||||||
"description": "Petio is a third party companion app available to Plex server owners to allow their users to request, review and discover content.",
|
|
||||||
"install_methods": [
|
|
||||||
{
|
|
||||||
"type": "default",
|
|
||||||
"script": "ct/petio.sh",
|
|
||||||
"resources": {
|
|
||||||
"cpu": 2,
|
|
||||||
"ram": 1024,
|
|
||||||
"hdd": 4,
|
|
||||||
"os": "ubuntu",
|
|
||||||
"version": "20.04"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"default_credentials": {
|
|
||||||
"username": null,
|
|
||||||
"password": null
|
|
||||||
},
|
|
||||||
"notes": []
|
|
||||||
}
|
|
||||||
44
frontend/public/json/phpmyadmin.json
Normal file
44
frontend/public/json/phpmyadmin.json
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
{
|
||||||
|
"name": "PhpMyAdmin",
|
||||||
|
"slug": "phpmyadmin",
|
||||||
|
"categories": [
|
||||||
|
8
|
||||||
|
],
|
||||||
|
"date_created": "2025-10-01",
|
||||||
|
"type": "addon",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": null,
|
||||||
|
"documentation": "https://www.phpmyadmin.net/docs/",
|
||||||
|
"config_path": "Debian/Ubuntu: /var/www/html/phpMyAdmin | Alpine: /usr/share/phpmyadmin",
|
||||||
|
"website": "https://www.phpmyadmin.net/",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/phpmyadmin.webp",
|
||||||
|
"description": "phpMyAdmin is a free software tool written in PHP, intended to handle the administration of MySQL over the Web. phpMyAdmin supports a wide range of operations on MySQL and MariaDB. Frequently used operations (managing databases, tables, columns, relations, indexes, users, permissions, etc) can be performed via the user interface, while you still have the ability to directly execute any SQL statement.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "tools/addon/phpmyadmin.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": null,
|
||||||
|
"ram": null,
|
||||||
|
"hdd": null,
|
||||||
|
"os": null,
|
||||||
|
"version": null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "Execute within an existing LXC Console",
|
||||||
|
"type": "warning"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "To update or uninstall run bash call again",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -46,6 +46,10 @@
|
|||||||
{
|
{
|
||||||
"text": "Set a password after installation for postgres user by running `echo \"ALTER USER postgres with encrypted password 'your_password';\" | sudo -u postgres psql`",
|
"text": "Set a password after installation for postgres user by running `echo \"ALTER USER postgres with encrypted password 'your_password';\" | sudo -u postgres psql`",
|
||||||
"type": "info"
|
"type": "info"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "Debian script offers versions `15, 16, 17, 18`, while Alpine script offers versions `15, 16, 17`.",
|
||||||
|
"type": "info"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
35
frontend/public/json/pve-scripts-local.json
Normal file
35
frontend/public/json/pve-scripts-local.json
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"name": "PVEScriptsLocal",
|
||||||
|
"slug": "pve-scripts-local",
|
||||||
|
"categories": [
|
||||||
|
1
|
||||||
|
],
|
||||||
|
"date_created": "2025-10-03",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 3000,
|
||||||
|
"documentation": "https://github.com/community-scripts/ProxmoxVE-Local",
|
||||||
|
"config_path": "/opt/PVEScripts-Local/.env",
|
||||||
|
"website": "https://community-scripts.github.io/ProxmoxVE",
|
||||||
|
"logo": "https://raw.githubusercontent.com/community-scripts/ProxmoxVE-Local/refs/heads/main/.github/logo.png",
|
||||||
|
"description": "A modern web-based management interface for Proxmox VE (PVE) helper scripts. This tool provides a user-friendly way to discover, download, and execute community-sourced Proxmox scripts locally with real-time terminal output streaming.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/pve-scripts-local.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 2,
|
||||||
|
"ram": 4096,
|
||||||
|
"hdd": 4,
|
||||||
|
"os": "Debian",
|
||||||
|
"version": "13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": []
|
||||||
|
}
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
"website": null,
|
"website": null,
|
||||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/linuxcontainers.webp",
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/linuxcontainers.webp",
|
||||||
"config_path": "",
|
"config_path": "",
|
||||||
"description": "This script has been created to simplify and speed up the process of updating all LXC containers across various Linux distributions, such as Ubuntu, Debian, Devuan, Alpine Linux, CentOS-Rocky-Alma, Fedora, and ArchLinux. It's designed to automatically skip templates and specific containers during the update, enhancing its convenience and usability.",
|
"description": "This script has been created to simplify and speed up the process of updating the operating system running inside LXC containers across various Linux distributions, such as Ubuntu, Debian, Devuan, Alpine Linux, CentOS-Rocky-Alma, Fedora, and ArchLinux. It's designed to automatically skip templates and specific containers during the update, enhancing its convenience and usability.",
|
||||||
"install_methods": [
|
"install_methods": [
|
||||||
{
|
{
|
||||||
"type": "default",
|
"type": "default",
|
||||||
@@ -35,6 +35,10 @@
|
|||||||
{
|
{
|
||||||
"text": "Execute within the Proxmox shell",
|
"text": "Execute within the Proxmox shell",
|
||||||
"type": "info"
|
"type": "info"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "The script updates only the operating system of the LXC container. It DOES NOT update the application installed within the container!",
|
||||||
|
"type": "warning"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 6144,
|
"ram": 6144,
|
||||||
"hdd": 20,
|
"hdd": 20,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
40
frontend/public/json/verdaccio.json
Normal file
40
frontend/public/json/verdaccio.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "Verdaccio",
|
||||||
|
"slug": "verdaccio",
|
||||||
|
"categories": [
|
||||||
|
20
|
||||||
|
],
|
||||||
|
"date_created": "2025-09-29",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 4873,
|
||||||
|
"documentation": "https://verdaccio.org/docs/what-is-verdaccio",
|
||||||
|
"website": "https://verdaccio.org/",
|
||||||
|
"logo": "https://verdaccio.org/img/logo/symbol/png/verdaccio-tiny.png",
|
||||||
|
"config_path": "/opt/verdaccio/config/config.yaml",
|
||||||
|
"description": "Verdaccio is a lightweight private npm proxy registry built with Node.js. It allows you to host your own npm registry with minimal configuration, providing a private npm repository for your projects. Verdaccio supports npm, yarn, and pnpm, and can cache packages from the public npm registry, allowing for faster installs and protection against npm registry outages. It includes a web interface for browsing packages, authentication and authorization features, and can be easily integrated into your development workflow.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/verdaccio.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 2,
|
||||||
|
"ram": 2048,
|
||||||
|
"hdd": 8,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "To create the first user, run: npm adduser --registry http://<container-ip>:4873",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 16,
|
"hdd": 16,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 1024,
|
"ram": 1024,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 1024,
|
"ram": 1024,
|
||||||
"hdd": 5,
|
"hdd": 5,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
40
frontend/public/json/warracker.json
Normal file
40
frontend/public/json/warracker.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "Warracker",
|
||||||
|
"slug": "warracker",
|
||||||
|
"categories": [
|
||||||
|
12
|
||||||
|
],
|
||||||
|
"date_created": "2025-09-29",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 80,
|
||||||
|
"documentation": null,
|
||||||
|
"config_path": "/opt/.env",
|
||||||
|
"website": "https://warracker.com/",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/warracker.webp",
|
||||||
|
"description": "Warracker is an open source, self-hostable warranty tracker to monitor expirations, store receipts, files. You own the data, your rules!",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/warracker.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 1,
|
||||||
|
"ram": 512,
|
||||||
|
"hdd": 4,
|
||||||
|
"os": "Debian",
|
||||||
|
"version": "13"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "The first user you register will be the admin user.",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user