Compare commits

...

65 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
ad8462bc10 Update CHANGELOG.md (#5307)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-20 01:15:37 +01:00
community-scripts-pr-app[bot]
39b18ea011 Update versions.json (#5306)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-20 02:15:04 +02:00
CanbiZ
76c99518b1 remove wrong package-lock.json in main path 2025-06-19 19:03:06 +02:00
community-scripts-pr-app[bot]
8fb0a16568 Update CHANGELOG.md (#5296)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 17:55:45 +01:00
community-scripts-pr-app[bot]
9bbc0c90e3 Update CHANGELOG.md (#5295)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 17:50:25 +01:00
CanbiZ
b5012c4225 Feat: Quorum Status (#5278) 2025-06-19 18:50:23 +02:00
community-scripts-pr-app[bot]
204ec64f14 Update CHANGELOG.md (#5294)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 17:49:54 +01:00
community-scripts-pr-app[bot]
451608b445 Update CHANGELOG.md (#5293)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 17:49:00 +01:00
CanbiZ
94ad4f2e40 Ubuntu 25.04 VM (#5284) 2025-06-19 18:48:51 +02:00
CanbiZ
5db3d92286 Add hostname validation and replace recursion for invalid inputs in advanced settings (#5291) 2025-06-19 18:48:35 +02:00
CanbiZ
796aaaa1d4 improve .gitattributes for linguist 2025-06-19 17:39:30 +02:00
community-scripts-pr-app[bot]
5042f6edb0 Update CHANGELOG.md (#5287)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 13:21:39 +01:00
Chris
0c1fad54b6 immich-install.sh: restore pgvector module install (#5286) 2025-06-19 14:21:12 +02:00
community-scripts-pr-app[bot]
fe1df0b344 Update versions.json (#5285)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 14:07:49 +02:00
community-scripts-pr-app[bot]
3ca014b757 Update .app files (#5281)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-06-19 13:13:36 +02:00
community-scripts-pr-app[bot]
db7a13fced Update CHANGELOG.md (#5282)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 12:11:56 +01:00
community-scripts-pr-app[bot]
ab1f4c1196 Update CHANGELOG.md (#5280)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 12:09:58 +01:00
community-scripts-pr-app[bot]
14ffff4c6a Update date in json (#5279)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-06-19 12:09:53 +01:00
push-app-to-main[bot]
bada204f64 planka (#5277)
* 'Add new script'

* Update planka.sh

* Update planka.sh

* Update planka.json

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
2025-06-19 13:09:16 +02:00
community-scripts-pr-app[bot]
1c42a2016e Update CHANGELOG.md (#5276)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 08:51:19 +01:00
community-scripts-pr-app[bot]
0cd347d3b6 Update CHANGELOG.md (#5275)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 08:49:55 +01:00
community-scripts-pr-app[bot]
63713c6489 Update date in json (#5274)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-06-19 08:49:52 +01:00
push-app-to-main[bot]
49153887dc 'Add new script' (#5273)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-06-19 09:49:27 +02:00
community-scripts-pr-app[bot]
c46d543c43 Update CHANGELOG.md (#5272)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 07:28:27 +01:00
Luka Žagar
dbd2af91b5 fix typo (#5263) 2025-06-19 08:27:43 +02:00
community-scripts-pr-app[bot]
86183c638d Update .app files (#5269)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-06-19 08:08:09 +02:00
community-scripts-pr-app[bot]
aec9af49a0 Update CHANGELOG.md (#5268)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 06:56:04 +01:00
Chris
791eca99b9 immich: prepare for new version (#5025)
- Remove pgvecto.rs > vchord migration operation
- Check for vchord update - only apply if Immich has update
- Additional operations for vchord 0.3.0 to 0.4.x
- Use UV

- Move libopencl to dependencies
- Use vchord 0.3.0 only if Immich <= 1.134.0
- vchord 0.4.x for 1.134.1+
- Use UV
2025-06-19 07:55:39 +02:00
CanbiZ
4190582659 fix small typos after refactor 2025-06-19 07:29:00 +02:00
community-scripts-pr-app[bot]
601e1853e9 Update CHANGELOG.md (#5266)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 01:15:57 +01:00
community-scripts-pr-app[bot]
14077eddcd Update versions.json (#5265)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-19 02:15:24 +02:00
community-scripts-pr-app[bot]
2255600c3b Update CHANGELOG.md (#5261)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 21:08:59 +01:00
CanbiZ
badd63d4a7 Refactor all VM's to same logic & functions (#5254) 2025-06-18 22:08:23 +02:00
CanbiZ
6c345af691 quickfix after failed mig 2025-06-18 22:02:02 +02:00
community-scripts-pr-app[bot]
2f326ffb97 Update CHANGELOG.md (#5257)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 17:19:15 +01:00
community-scripts-pr-app[bot]
e7bb270c34 Update date in json (#5256)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-06-18 17:18:15 +01:00
CanbiZ
fc4a46b72d FileBrowser Quantum (#5248) 2025-06-18 18:17:40 +02:00
community-scripts-pr-app[bot]
a402b45b17 Update versions.json (#5253)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 15:51:02 +02:00
community-scripts-pr-app[bot]
9ab2089d01 Update date in json (#5251)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-06-18 14:17:22 +01:00
community-scripts-pr-app[bot]
0dc533cb82 Update CHANGELOG.md (#5250)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 14:17:18 +01:00
push-app-to-main[bot]
4351218f8b 'Add new script' (#5249)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-06-18 15:16:48 +02:00
community-scripts-pr-app[bot]
3ee4ece04d Update versions.json (#5247)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 14:07:56 +02:00
community-scripts-pr-app[bot]
a377640d16 Update CHANGELOG.md (#5246)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 11:35:09 +01:00
Chris
bece1c574f Immich: fix prompt clobber issue (#5231)
* Immich: fix prompt clobber issue

* change functions to new tools.func

* duplicate

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-06-18 12:34:33 +02:00
community-scripts-pr-app[bot]
e9afe958b1 Update CHANGELOG.md (#5244)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 11:07:44 +01:00
CanbiZ
93f9291d7c tools.func: Standardized and Renamed Setup Functions (#5241)
* Upgrade Tools.func

* Update tools.func

* Update tools.func
2025-06-18 12:07:08 +02:00
community-scripts-pr-app[bot]
8f0751442d Update CHANGELOG.md (#5243)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 11:03:27 +01:00
CanbiZ
003422934a upgrade old Scriptcalls to new tools.func calls (#5242)
* Upgraded Function Names related to #5241

* change gh calls

* add 2 missing
2025-06-18 12:03:00 +02:00
Slaviša Arežina
c11636562c Update libretranslate.json (#5236) 2025-06-18 07:43:31 +02:00
community-scripts-pr-app[bot]
654508eb94 Update CHANGELOG.md (#5239)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 01:15:31 +01:00
community-scripts-pr-app[bot]
acfb9d6ea1 Update versions.json (#5238)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-18 02:14:53 +02:00
community-scripts-pr-app[bot]
0d56db2d3d Update CHANGELOG.md (#5237)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 22:06:45 +01:00
Tobias
4a1ae51446 gitea-mirror: increase build ressources (#5235) 2025-06-17 23:06:06 +02:00
community-scripts-pr-app[bot]
6520b7f4d4 Update CHANGELOG.md (#5230)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 15:57:51 +01:00
community-scripts-pr-app[bot]
48da94f77a Update CHANGELOG.md (#5229)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 15:57:35 +01:00
Chris
2ea372f034 Immich: ensure in proper working dir when updating (#5227) 2025-06-17 16:57:08 +02:00
community-scripts-pr-app[bot]
5773459a39 Update CHANGELOG.md (#5228)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 15:57:05 +01:00
Desert Gamer
40f083ea40 Resolve issue #5212 (#5226) 2025-06-17 16:56:27 +02:00
community-scripts-pr-app[bot]
219a7853e1 Update CHANGELOG.md (#5221)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 13:36:02 +01:00
TJ
6d1d903345 trilium: fix update function after db changes folder (#5207)
* Update trilium.sh

Fixed issue with db location

* Update ct/trilium.sh

Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>

* Update trilium.sh

---------

Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>
2025-06-17 14:35:17 +02:00
community-scripts-pr-app[bot]
ef9ca48477 Update versions.json (#5220)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 14:07:50 +02:00
community-scripts-pr-app[bot]
8ac24981a6 Update CHANGELOG.md (#5219)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 13:02:31 +01:00
CanbiZ
7e046d830d IPTag: Better explanation (#5213) 2025-06-17 14:01:46 +02:00
community-scripts-pr-app[bot]
1691fafcc1 Update CHANGELOG.md (#5218)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-17 12:45:47 +01:00
Slaviša Arežina
4400cd2b97 Add .env (#5216) 2025-06-17 13:45:20 +02:00
160 changed files with 3906 additions and 1516 deletions

BIN
.gitattributes vendored

Binary file not shown.

View File

@@ -5,10 +5,10 @@
1) [adguard.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/ct/adguard.sh): This script collects system parameters. (Also holds the function to update the application.)
2) [build.func](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/build.func): Adds user settings and integrates collected information.
3) [create_lxc.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/ct/create_lxc.sh): Constructs the LXC container.
3) [create_lxc.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/create_lxc.sh): Constructs the LXC container.
4) [adguard-install.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/install/adguard-install.sh): Executes functions from [install.func](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/install.func), and installs the application.
5) [adguard.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/ct/adguard.sh) (again): To display the completion message.
The installation process uses reusable scripts: [build.func](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/build.func), [create_lxc.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/ct/create_lxc.sh), and [install.func](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/install.func), which are not specific to any particular application.
The installation process uses reusable scripts: [build.func](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/build.func), [create_lxc.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/create_lxc.sh), and [install.func](https://github.com/community-scripts/ProxmoxVE/blob/main/misc/install.func), which are not specific to any particular application.
To gain a better understanding, focus on reviewing [adguard-install.sh](https://github.com/community-scripts/ProxmoxVE/blob/main/install/adguard-install.sh). This script contains the commands and configurations for installing and configuring AdGuard Home within the LXC container.

61
.github/autolabeler-config.json generated vendored
View File

@@ -2,21 +2,43 @@
"new script": [
{
"fileStatus": "added",
"includeGlobs": ["ct/**", "install/**", "misc/**", "turnkey/**", "vm/**"],
"includeGlobs": [
"ct/**",
"install/**",
"misc/**",
"turnkey/**",
"vm/**"
],
"excludeGlobs": []
}
],
"update script": [
{
"fileStatus": "modified",
"includeGlobs": ["ct/**", "install/**", "misc/**", "turnkey/**", "vm/**"],
"excludeGlobs": ["misc/build.func", "misc/install.func", "misc/api.func"]
"includeGlobs": [
"ct/**",
"install/**",
"misc/**",
"turnkey/**",
"vm/**"
],
"excludeGlobs": [
"misc/build.func",
"misc/install.func",
"misc/api.func"
]
}
],
"delete script": [
{
"fileStatus": "removed",
"includeGlobs": ["ct/**", "install/**", "misc/**", "turnkey/**", "vm/**"],
"includeGlobs": [
"ct/**",
"install/**",
"misc/**",
"turnkey/**",
"vm/**"
],
"excludeGlobs": []
}
],
@@ -27,7 +49,7 @@
"*.md",
".github/**",
"misc/*.func",
"ct/create_lxc.sh",
"misc/create_lxc.sh",
"api/**"
],
"excludeGlobs": []
@@ -36,46 +58,57 @@
"core": [
{
"fileStatus": null,
"includeGlobs": ["misc/*.func", "ct/create_lxc.sh"],
"includeGlobs": [
"misc/*.func",
"misc/create_lxc.sh"
],
"excludeGlobs": []
}
],
"website": [
{
"fileStatus": null,
"includeGlobs": ["frontend/**"],
"includeGlobs": [
"frontend/**"
],
"excludeGlobs": []
}
],
"api": [
{
"fileStatus": null,
"includeGlobs": ["api/**", "misc/api.func"],
"includeGlobs": [
"api/**",
"misc/api.func"
],
"excludeGlobs": []
}
],
"github": [
{
"fileStatus": null,
"includeGlobs": [".github/**"],
"includeGlobs": [
".github/**"
],
"excludeGlobs": []
}
],
"json": [
{
"fileStatus": "modified",
"includeGlobs": ["frontend/public/json/**"],
"includeGlobs": [
"frontend/public/json/**"
],
"excludeGlobs": []
}
],
"high risk": [
{
"fileStatus": null,
"includeGlobs": [
"misc/build.func",
"misc/install.func",
"ct/create_lxc.sh"
"misc/create_lxc.sh"
],
"excludeGlobs": []
}
@@ -83,7 +116,9 @@
"documentation": [
{
"fileStatus": null,
"includeGlobs": ["*.md"],
"includeGlobs": [
"*.md"
],
"excludeGlobs": []
}
]

View File

@@ -51,8 +51,8 @@ jobs:
NON_COMPLIANT_FILES=""
for FILE in $CHANGED_FILES; do
# Datei "ct/create_lxc.sh" explizit überspringen
if [[ "$FILE" == "ct/create_lxc.sh" ]]; then
# Skip File "misc/create_lxc.sh"
if [[ "$FILE" == "misc/create_lxc.sh" ]]; then
continue
fi
BASENAME=$(echo "$(basename "${FILE%.*}")")

View File

@@ -14,8 +14,77 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
## 2025-06-20
## 2025-06-19
### 🆕 New Scripts
- Ubuntu 25.04 VM [@MickLesk](https://github.com/MickLesk) ([#5284](https://github.com/community-scripts/ProxmoxVE/pull/5284))
- PLANKA ([#5277](https://github.com/community-scripts/ProxmoxVE/pull/5277))
- Wizarr ([#5273](https://github.com/community-scripts/ProxmoxVE/pull/5273))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- immich-install.sh: restore pgvector module install [@vhsdream](https://github.com/vhsdream) ([#5286](https://github.com/community-scripts/ProxmoxVE/pull/5286))
- Immich: prepare for v1.135.0 [@vhsdream](https://github.com/vhsdream) ([#5025](https://github.com/community-scripts/ProxmoxVE/pull/5025))
### 🧰 Maintenance
- #### ✨ New Features
- [core]: Feature - Check Quorum Status in create_lxc to prevent issues [@MickLesk](https://github.com/MickLesk) ([#5278](https://github.com/community-scripts/ProxmoxVE/pull/5278))
- [core]: add validation and replace recursion for invalid inputs in adv. settings [@MickLesk](https://github.com/MickLesk) ([#5291](https://github.com/community-scripts/ProxmoxVE/pull/5291))
### 🌐 Website
- #### 📝 Script Information
- cloudflare-ddns: fix typo in info-text [@LukaZagar](https://github.com/LukaZagar) ([#5263](https://github.com/community-scripts/ProxmoxVE/pull/5263))
## 2025-06-18
### 🆕 New Scripts
- FileBrowser Quantum [@MickLesk](https://github.com/MickLesk) ([#5248](https://github.com/community-scripts/ProxmoxVE/pull/5248))
- Huntarr ([#5249](https://github.com/community-scripts/ProxmoxVE/pull/5249))
### 🚀 Updated Scripts
- tools.func: Standardized and Renamed Setup Functions [@MickLesk](https://github.com/MickLesk) ([#5241](https://github.com/community-scripts/ProxmoxVE/pull/5241))
- #### 🐞 Bug Fixes
- Immich: fix prompt clobber issue [@vhsdream](https://github.com/vhsdream) ([#5231](https://github.com/community-scripts/ProxmoxVE/pull/5231))
- #### 🔧 Refactor
- Refactor all VM's to same logic & functions [@MickLesk](https://github.com/MickLesk) ([#5254](https://github.com/community-scripts/ProxmoxVE/pull/5254))
- upgrade old Scriptcalls to new tools.func calls [@MickLesk](https://github.com/MickLesk) ([#5242](https://github.com/community-scripts/ProxmoxVE/pull/5242))
## 2025-06-17
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- gitea-mirror: increase build ressources [@CrazyWolf13](https://github.com/CrazyWolf13) ([#5235](https://github.com/community-scripts/ProxmoxVE/pull/5235))
- Immich: ensure in proper working dir when updating [@vhsdream](https://github.com/vhsdream) ([#5227](https://github.com/community-scripts/ProxmoxVE/pull/5227))
- Update IP-Tag [@DesertGamer](https://github.com/DesertGamer) ([#5226](https://github.com/community-scripts/ProxmoxVE/pull/5226))
- trilium: fix update function after db changes folder [@tjcomserv](https://github.com/tjcomserv) ([#5207](https://github.com/community-scripts/ProxmoxVE/pull/5207))
- #### ✨ New Features
- LibreTranslate: Add .env for easier configuration [@tremor021](https://github.com/tremor021) ([#5216](https://github.com/community-scripts/ProxmoxVE/pull/5216))
### 🌐 Website
- #### 📝 Script Information
- IPTag: Better explanation [@MickLesk](https://github.com/MickLesk) ([#5213](https://github.com/community-scripts/ProxmoxVE/pull/5213))
## 2025-06-16
### 🆕 New Scripts

View File

@@ -29,7 +29,7 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat /opt/2fauth_version.txt)" ]] || [[ ! -f /opt/2fauth_version.txt ]]; then
if [[ "${RELEASE}" != "$(cat ~/.2fauth 2>/dev/null || cat /opt/2fauth_version.txt 2>/dev/null)" ]]; then
msg_info "Updating $APP to ${RELEASE}"
$STD apt-get update
$STD apt-get -y upgrade
@@ -45,10 +45,10 @@ function update_script() {
$STD apt-get install -y \
lsb-release \
gnupg2
PHP_VERSION="8.3" PHP_MODULE="common,ctype,fileinfo,fpm,mysql,cli" install_php
PHP_VERSION="8.3" PHP_MODULE="common,ctype,fileinfo,fpm,mysql,cli" setup_php
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/2fauth.conf
fi
fetch_and_deploy_gh_release "Bubka/2FAuth"
fetch_and_deploy_gh_release "2fauth" "Bubka/2FAuth"
mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env"
mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage"
cd "/opt/2fauth" || return

View File

@@ -29,7 +29,7 @@ function update_script() {
exit
fi
NODE_VERSION="22"
install_node_and_modules
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) }')
if [[ -f /opt/actualbudget-data/config.json ]]; then
if [[ ! -f /opt/actualbudget_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/actualbudget_version.txt)" ]]; then

View File

@@ -28,7 +28,7 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/raydak-labs/configarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat /opt/configarr_version.txt)" ]] || [[ ! -f /opt/configarr_version.txt ]]; then
if [[ "${RELEASE}" != "$(cat ~/.configarr 2>/dev/null || cat /opt/configarr_version.txt 2>/dev/null)" ]]; then
msg_info "Stopping $APP"
systemctl stop configarr-task.timer
msg_ok "Stopped $APP"
@@ -37,7 +37,7 @@ function update_script() {
mkdir -p /opt/backup/
mv /opt/configarr/{config.yml,secrets.yml,.env} "/opt/backup/"
rm -rf /opt/configarr
fetch_and_deploy_gh_release "raydak-labs/configarr"
fetch_and_deploy_gh_release "configarr" "raydak-labs/configarr"
mv /opt/backup/* /opt/configarr/
cd /opt/configarr
$STD pnpm install

View File

@@ -34,7 +34,7 @@ function update_script() {
exit 1
fi
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
PROJECT_NAME=$(</opt/fumadocs/.projectname)
PROJECT_DIR="/opt/fumadocs/${PROJECT_NAME}"
SERVICE_NAME="fumadocs_${PROJECT_NAME}.service"

View File

@@ -7,9 +7,9 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="gitea-mirror"
var_tags="${var_tags:-mirror;gitea}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-5}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
@@ -29,7 +29,7 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/arunavo4/gitea-mirror/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
if [[ "${RELEASE}" != "$(cat ~/.${APP} 2>/dev/null || cat /opt/${APP}_version.txt 2>/dev/null)" ]]; then
msg_info "Stopping Services"
systemctl stop gitea-mirror
@@ -48,7 +48,7 @@ function update_script() {
msg_ok "Installed Bun"
rm -rf /opt/gitea-mirror
fetch_and_deploy_gh_release "arunavo4/gitea-mirror"
fetch_and_deploy_gh_release "gitea-mirror" "arunavo4/gitea-mirror"
msg_info "Updating and rebuilding ${APP} to v${RELEASE}"
cd /opt/gitea-mirror

6
ct/headers/huntarr Normal file
View File

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

6
ct/headers/planka Normal file
View File

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

6
ct/headers/wizarr Normal file
View File

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

View File

@@ -81,7 +81,7 @@ EOF
systemctl daemon-reload
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/homarr-labs/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
if [[ "${RELEASE}" != "$(cat ~/.${APP} 2>/dev/null || cat /opt/${APP}_version.txt 2>/dev/null)" ]]; then
msg_info "Stopping Services (Patience)"
systemctl stop homarr
@@ -100,10 +100,10 @@ EOF
$STD command -v jq || $STD apt-get update && $STD apt-get install -y jq
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.packageManager | split("@")[1]')"
install_node_and_modules
setup_nodejs
rm -rf /opt/homarr
fetch_and_deploy_gh_release "homarr-labs/homarr"
fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr"
msg_info "Updating and rebuilding ${APP} to v${RELEASE} (Patience)"
rm /opt/run_homarr.sh

63
ct/huntarr.sh Normal file
View 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: BiluliB
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/plexguide/Huntarr.io
APP="huntarr"
var_tags="${var_tags:-arr}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_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/huntarr/main.py ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
setup_uv
RELEASE=$(curl -fsSL https://api.github.com/repos/plexguide/Huntarr.io/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')
if [[ -f ~/.huntarr && "${RELEASE}" == "$(cat ~/.huntarr)" ]]; then
msg_ok "No update required. ${APP} is already at ${RELEASE}"
exit
fi
msg_info "Stopping huntarr service"
systemctl stop huntarr
msg_ok "Stopped huntarr service"
fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io"
msg_info "Updating $APP to v${RELEASE}"
cd /opt/huntarr
$STD uv pip install -r requirements.txt --python /opt/huntarr/.venv/bin/python
msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP"
systemctl start huntarr
msg_ok "Started $APP"
msg_ok "Updated $APP to v${RELEASE}"
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}:9705${CL}"

View File

@@ -27,9 +27,13 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
setup_uv
STAGING_DIR=/opt/staging
BASE_DIR=${STAGING_DIR}/base-images
SOURCE_DIR=${STAGING_DIR}/image-source
cd /root
if [[ -f ~/.intel_version ]]; then
curl -fsSLO https://raw.githubusercontent.com/immich-app/immich/refs/heads/main/machine-learning/Dockerfile
readarray -t INTEL_URLS < <(sed -n "/intel/p" ./Dockerfile | awk '{print $3}')
@@ -39,7 +43,7 @@ function update_script() {
for url in "${INTEL_URLS[@]}"; do
curl -fsSLO "$url"
done
$STD dpkg -i ./*.deb
$STD apt install -y ./*.deb
rm ./*.deb
msg_ok "Intel iGPU dependencies updated"
fi
@@ -176,54 +180,42 @@ function update_script() {
msg_ok "Image-processing libraries compiled"
fi
fi
RELEASE=$(curl -s https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
RELEASE=$(curl -fsSL https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
msg_info "Stopping ${APP} services"
systemctl stop immich-web
systemctl stop immich-ml
msg_ok "Stopped ${APP}"
if [[ "$(cat /opt/${APP}_version.txt)" < "1.133.0" ]]; then
msg_info "Upgrading to the VectorChord PostgreSQL extension"
NUMBER="$(
sed -n '2p' <(
sudo -u postgres psql -A -d immich <<EOF
SELECT atttypmod as dimsize
FROM pg_attribute f
JOIN pg_class c ON c.oid = f.attrelid
WHERE c.relkind = 'r'::char
AND f.attnum > 0
AND c.relname = 'smart_search'::text
AND f.attname = 'embedding'::text;
EOF
)
)"
$STD sudo -u postgres psql -d immich <<EOF
DROP INDEX IF EXISTS clip_index;
DROP INDEX IF EXISTS face_index;
ALTER TABLE smart_search ALTER COLUMN embedding SET DATA TYPE real[];
ALTER TABLE face_search ALTER COLUMN embedding SET DATA TYPE real[];
EOF
$STD apt-get update
$STD apt-get install postgresql-16-pgvector -y
curl -fsSL https://github.com/tensorchord/VectorChord/releases/download/0.3.0/postgresql-16-vchord_0.3.0-1_amd64.deb -o vchord.deb
$STD dpkg -i vchord.deb
rm vchord.deb
sed -i "s|vectors.so|vchord.so|" /etc/postgresql/16/main/postgresql.conf
systemctl restart postgresql.service
$STD sudo -u postgres psql -d immich <<EOF
CREATE EXTENSION IF NOT EXISTS vchord CASCADE;
ALTER TABLE smart_search ALTER COLUMN embedding SET DATA TYPE vector($NUMBER);
ALTER TABLE face_search ALTER COLUMN embedding SET DATA TYPE vector(512);
EOF
$STD apt purge vectors-pg16 -y
msg_ok "Database upgrade complete"
fi
INSTALL_DIR="/opt/${APP}"
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
SRC_DIR="${INSTALL_DIR}/source"
APP_DIR="${INSTALL_DIR}/app"
ML_DIR="${APP_DIR}/machine-learning"
GEO_DIR="${INSTALL_DIR}/geodata"
VCHORD_RELEASE="$(curl -fsSL https://api.github.com/repos/tensorchord/vectorchord/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')"
if [[ ! -f ~/.vchord_version ]] || [[ "$VCHORD_RELEASE" != "$(cat ~/.vchord_version)" ]]; then
msg_info "Updating VectorChord"
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres pg_dumpall --clean --if-exists --username=postgres | gzip >/etc/postgresql/immich-db-vchord0.3.0.sql.gz
chown postgres /etc/postgresql/immich-db-vchord0.3.0.sql.gz
$STD sudo -u postgres gunzip --stdout /etc/postgresql/immich-db-vchord0.3.0.sql.gz |
sed -e "s/SELECT pg_catalog.set_config('search_path', '', false);/SELECT pg_catalog.set_config('search_path', 'public, pg_catalog', true);/g" \
-e "/vchordrq.prewarm_dim/d" |
sudo -u postgres psql
fi
curl -fsSL "https://github.com/tensorchord/vectorchord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
$STD apt install -y ./vchord.deb
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
systemctl restart postgresql
if [[ ! -f ~/.vchord-version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres psql -d immich -c "REINDEX DATABASE;"
fi
echo "$VCHORD_RELEASE" >~/.vchord_version
rm ./vchord.deb
msg_ok "Updated VectorChord to v${VCHORD_RELEASE}"
fi
cp "$ML_DIR"/ml_start.sh "$INSTALL_DIR"
rm -rf "${APP_DIR:?}"/*
rm -rf "$SRC_DIR"
@@ -251,28 +243,21 @@ EOF
msg_ok "Updated ${APP} web and microservices"
cd "$SRC_DIR"/machine-learning
$STD python3 -m venv "$ML_DIR"/ml-venv
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
$STD /usr/local/bin/uv venv "$VIRTUAL_ENV"
if [[ -f ~/.openvino ]]; then
msg_info "Updating HW-accelerated machine-learning"
(
source "$ML_DIR"/ml-venv/bin/activate
$STD pip3 install -U uv
uv -q sync --extra openvino --no-cache --active
)
patchelf --clear-execstack "$ML_DIR"/ml-venv/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so
/usr/local/bin/uv -q sync --extra openvino --no-cache --active
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
msg_ok "Updated HW-accelerated machine-learning"
else
msg_info "Updating machine-learning"
(
source "$ML_DIR"/ml-venv/bin/activate
$STD pip3 install -U uv
uv -q sync --extra cpu --no-cache --active
)
/usr/local/bin/uv -q sync --extra cpu --no-cache --active
msg_ok "Updated machine-learning"
fi
cd "$SRC_DIR"
cp -a machine-learning/{ann,immich_ml} "$ML_DIR"
cp "$INSTALL_DIR"/ml_start.sh "$ML_DIR"
mv "$INSTALL_DIR"/ml_start.sh "$ML_DIR"
if [[ -f ~/.openvino ]]; then
sed -i "/intra_op/s/int = 0/int = os.cpu_count() or 0/" "$ML_DIR"/immich_ml/config.py
fi
@@ -291,8 +276,6 @@ EOF
$STD npm i -g @immich/cli
msg_ok "Updated Immich CLI"
sed -i "s|pgvecto.rs|vectorchord|" /opt/"${APP}"/.env
chown -R immich:immich "$INSTALL_DIR"
echo "$RELEASE" >/opt/"${APP}"_version.txt
msg_ok "Updated ${APP} to v${RELEASE}"

View File

@@ -53,10 +53,10 @@ function update_script() {
if [ -z "$pnpm_current" ]; then
msg_error "pnpm not found. Installing version $pnpm_desired..."
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
elif ! node -e "const semver = require('semver'); process.exit(semver.satisfies('$pnpm_current', '$pnpm_desired') ? 0 : 1)"; then
msg_error "Updating pnpm from version $pnpm_current to $pnpm_desired..."
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
else
msg_ok "pnpm is already installed and satisfies version $pnpm_desired."
fi

View File

@@ -28,17 +28,17 @@ function update_script() {
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat /opt/linkwarden_version.txt)" ]] || [[ ! -f /opt/linkwarden_version.txt ]]; then
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
msg_info "Stopping ${APP}"
systemctl stop linkwarden
msg_ok "Stopped ${APP}"
RUST_CRATES="monolith" install_rust_and_crates
RUST_CRATES="monolith" setup_rust
msg_info "Updating ${APP} to ${RELEASE}"
mv /opt/linkwarden/.env /opt/.env
rm -rf /opt/linkwarden
fetch_and_deploy_gh_release "linkwarden/linkwarden"
fetch_and_deploy_gh_release "linkwarden" "linkwarden/linkwarden"
cd /opt/linkwarden
$STD yarn
$STD npx playwright install-deps

View File

@@ -20,19 +20,17 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /root/Matterbridge ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
$STD apt-get update
$STD apt-get upgrade -y
NODE_VERSION="22"
NODE_MODULE="matterbridge"
install_node_and_modules
header_info
check_container_storage
check_container_resources
if [[ ! -d /root/Matterbridge ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
$STD apt-get update
$STD apt-get upgrade -y
NODE_VERSION="22" NODE_MODULE="matterbridge" setup_nodejs
exit
}
start

77
ct/planka.sh Normal file
View File

@@ -0,0 +1,77 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/refs/heads/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/plankanban/planka
APP="PLANKA"
var_tags="${var_tags:-Arr}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_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/planka.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -s https://api.github.com/repos/plankanban/planka/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.planka 2>/dev/null)" ]] || [[ ! -f ~/.planka ]]; then
msg_info "Stopping $APP"
systemctl stop planka
msg_ok "Stopped $APP"
msg_info "Updating $APP to ${RELEASE}"
mkdir -p /opt/planka-backup
mkdir -p /opt/planka-backup/favicons
mkdir -p /opt/planka-backup/user-avatars
mkdir -p /opt/planka-backup/background-images
mkdir -p /opt/planka-backup/attachments
mv /opt/planka/planka/.env /opt/planka-backup
mv /opt/planka/planka/public/favicons/* /opt/planka-backup/favicons/
mv /opt/planka/planka/public/user-avatars/* /opt/planka-backup/user-avatars/
mv /opt/planka/planka/public/background-images/* /opt/planka-backup/background-images/
mv /opt/planka/planka/private/attachments/* /opt/planka-backup/attachments/
rm -rf /opt/planka
fetch_and_deploy_gh_release "planka" "plankanban/planka" "prebuild" "latest" "/opt/planka" "planka-prebuild.zip"
cd /opt/planka/planka
$STD npm install
mv /opt/planka-backup/.env /opt/planka/planka/
mv /opt/planka-backup/favicons/* /opt/planka/planka/public/favicons/
mv /opt/planka-backup/user-avatars/* /opt/planka/planka/public/user-avatars/
mv /opt/planka-backup/background-images/* /opt/planka/planka/public/background-images/
mv /opt/planka-backup/attachments/* /opt/planka/planka/private/attachments/
msg_ok "Updated $APP to ${RELEASE}"
msg_info "Starting $APP"
systemctl start planka
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
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}:1337${CL}"

View File

@@ -28,7 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if fetch_and_deploy_gh_release "YuukanOO/seelf"; then
if fetch_and_deploy_gh_release "seelf" "YuukanOO/seelf"; then
msg_ok "$APP already at the latest version. No update required."
else
msg_info "Stopping $APP"

View File

@@ -30,7 +30,7 @@ function update_script() {
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/CrazyWolf13/streamlink-webui/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 ~/.${APP} 2>/dev/null || cat /opt/${APP}_version.txt 2>/dev/null)" ]]; then
msg_info "Starting Update"
msg_info "Stopping $APP"
@@ -40,9 +40,9 @@ function update_script() {
rm -rf /opt/${APP}
NODE_VERSION="22"
NODE_MODULE="npm,yarn"
install_node_and_modules
setup_nodejs
setup_uv
fetch_and_deploy_gh_release "CrazyWolf13/streamlink-webui"
fetch_and_deploy_gh_release "streamlink-webui" "CrazyWolf13/streamlink-webui"
msg_info "Updating $APP to v${RELEASE}"
$STD uv venv /opt/"${APP}"/backend/src/.venv

View File

@@ -31,7 +31,7 @@ function update_script() {
if dpkg -l | grep -q "openjdk-17-jre"; then
$STD apt-get remove -y openjdk-17-jre
fi
JAVA_VERSION=21 install_java
JAVA_VERSION=21 setup_java
RELEASE=$(curl -fsSL https://api.github.com/repos/Suwayomi/Suwayomi-Server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat /opt/suwayomi-server_version.txt)" ]] || [[ ! -f /opt/suwayomi-server_version.txt ]]; then
msg_info "Updating $APP"

View File

@@ -29,38 +29,55 @@ function update_script() {
fi
if [[ ! -f /opt/${APP}_version.txt ]]; then touch /opt/${APP}_version.txt; fi
RELEASE=$(curl -fsSL https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "v${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
msg_info "Stopping ${APP}"
systemctl stop trilium
sleep 1
msg_ok "Stopped ${APP}"
if [[ "v${RELEASE}" != "$(cat /opt/${APP}_version.txt 2>/dev/null)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
msg_info "Updating to ${RELEASE}"
mkdir -p /opt/trilium_backup
mv /opt/trilium/db /opt/trilium_backup/
rm -rf /opt/trilium
cd /tmp
curl -fsSL "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz" -o $(basename "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz")
tar -xf TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz
mv TriliumNextNotes-Server-$RELEASE-linux-x64 /opt/trilium
cp -r /opt/trilium_backup/db /opt/trilium/
echo "v${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated to ${RELEASE}"
msg_info "Cleaning up"
rm -rf /tmp/TriliumNextNotes-Server-${RELEASE}-linux-x64.tar.xz
rm -rf /opt/trilium_backup
msg_ok "Cleaned"
msg_info "Starting ${APP}"
systemctl start trilium
sleep 1
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
if [[ -d /opt/trilium/db ]]; then
DB_PATH="/opt/trilium/db"
DB_RESTORE_PATH="/opt/trilium/db"
elif [[ -d /opt/trilium/assets/db ]]; then
DB_PATH="/opt/trilium/assets/db"
DB_RESTORE_PATH="/opt/trilium/assets/db"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
msg_error "Database not found in either /opt/trilium/db or /opt/trilium/assets/db"
exit 1
fi
exit
msg_info "Stopping ${APP}"
systemctl stop trilium
sleep 1
msg_ok "Stopped ${APP}"
msg_info "Updating to ${RELEASE}"
mkdir -p /opt/trilium_backup
cp -r "${DB_PATH}" /opt/trilium_backup/
rm -rf /opt/trilium
cd /tmp
curl -fsSL "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz" -o "TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz"
tar -xf "TriliumNextNotes-Server-v${RELEASE}-linux-x64.tar.xz"
mv "TriliumNextNotes-Server-${RELEASE}-linux-x64" /opt/trilium
# Restore database
mkdir -p "$(dirname "${DB_RESTORE_PATH}")"
cp -r /opt/trilium_backup/$(basename "${DB_PATH}") "${DB_RESTORE_PATH}"
echo "v${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated to ${RELEASE}"
msg_info "Cleaning up"
rm -rf "/tmp/TriliumNextNotes-Server-${RELEASE}-linux-x64.tar.xz"
rm -rf /opt/trilium_backup
msg_ok "Cleaned"
msg_info "Starting ${APP}"
systemctl start trilium
sleep 1
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}
start

79
ct/wizarr.sh Normal file
View File

@@ -0,0 +1,79 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/wizarrrr/wizarr
APP="Wizarr"
var_tags="${var_tags:-media;arr}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_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/wizarr ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/wizarrrr/wizarr/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.wizarr 2>/dev/null)" ]] || [[ ! -f ~/.wizarr ]]; then
msg_info "Stopping $APP"
systemctl stop wizarr
msg_ok "Stopped $APP"
msg_info "Creating Backup"
BACKUP_FILE="/opt/wizarr_backup_$(date +%F).tar.gz"
$STD tar -czf "$BACKUP_FILE" /opt/wizarr/{.env,start.sh} /opt/wizarr/database/ &>/dev/null
msg_ok "Backup Created"
setup_uv
fetch_and_deploy_gh_release "wizarr" "wizarrrr/wizarr"
msg_info "Updating $APP to v${RELEASE}"
cd /opt/wizarr
uv -q sync --locked
$STD uv -q run pybabel compile -d app/translations
$STD npm --prefix app/static install
$STD npm --prefix app/static run build:css
mkdir -p ./.cache
$STD tar -xf "$BACKUP_FILE" --directory=/
$STD uv -q run flask db upgrade
msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP"
systemctl start wizarr
msg_ok "Started $APP"
msg_info "Cleaning Up"
rm -rf "$BACKUP_FILE"
rm /tmp/"$RELEASE".zip
msg_ok "Cleanup Completed"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
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}:5690${CL}"

View File

@@ -1,5 +1,5 @@
{
"name": "Proxmox VE LXC IP-Tag",
"name": "Proxmox VE LXC Tag",
"slug": "add-iptag",
"categories": [
1
@@ -12,8 +12,8 @@
"documentation": null,
"website": null,
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/proxmox.svg",
"config_path": "",
"description": "This script automatically adds IP address as tags to LXC containers using a Systemd service. The service also updates the tags if a LXC IP address is changed.",
"config_path": "/opt/iptag/iptag.conf",
"description": "This script automatically adds IP address as tags to LXC containers or VM's using a systemd service. The service also updates the tags if a LXC/VM IP address is changed.",
"install_methods": [
{
"type": "default",

View File

@@ -37,7 +37,7 @@
"type": "warning"
},
{
"text": "To update the configuration edit `/etc/systemd/system/cloudflare-ddns.service`. After edit please restard with `systemctl restart cloudflare-ddns`",
"text": "To update the configuration edit `/etc/systemd/system/cloudflare-ddns.service`. After edit please restart with `systemctl restart cloudflare-ddns`",
"type": "info"
}
]

View File

@@ -0,0 +1,47 @@
{
"name": "FileBrowser Quantum",
"slug": "filebrowser-quantum",
"categories": [
1,
11
],
"date_created": "2025-06-18",
"type": "addon",
"updateable": false,
"privileged": false,
"interface_port": 8080,
"documentation": "https://github.com/gtsteffaniak/filebrowser/wiki/Getting-Started",
"website": "https://github.com/gtsteffaniak/filebrowser",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/filebrowser-quantum.webp",
"config_path": "/usr/local/community-scripts/fq-config.yaml",
"description": "FileBrowser Quantum provides an easy way to access and manage your files from the web. It has has a web page interface that allows you to create secure shared links, users with their own specific permissions and settings, and offers a great viewing experience for many file types. This version is called Quantum because it packs tons of advanced features into a tiny easy to run file. Unlike the majority of alternative options, FileBrowser Quantum is simple to install and easy to configure.",
"install_methods": [
{
"type": "default",
"script": "tools/addon/filebrowser-quantum.sh",
"resources": {
"cpu": null,
"ram": null,
"hdd": null,
"os": null,
"version": null
}
},
{
"type": "alpine",
"script": "tools/addon/filebrowser-quantum.sh",
"resources": {
"cpu": null,
"ram": null,
"hdd": null,
"os": null,
"version": null
}
}
],
"default_credentials": {
"username": "admin",
"password": "helper-scripts.com"
},
"notes": []
}

View File

@@ -19,9 +19,9 @@
"type": "default",
"script": "ct/gitea-mirror.sh",
"resources": {
"cpu": 1,
"ram": 1024,
"hdd": 5,
"cpu": 2,
"ram": 2048,
"hdd": 6,
"os": "Debian",
"version": "12"
}

35
frontend/public/json/huntarr.json generated Normal file
View File

@@ -0,0 +1,35 @@
{
"name": "Huntarr",
"slug": "huntarr",
"categories": [
14
],
"date_created": "2025-06-18",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 9705,
"documentation": "https://github.com/plexguide/Huntarr.io/wiki",
"config_path": "/opt/huntarr",
"website": "https://github.com/plexguide/Huntarr.io",
"logo": "https://raw.githubusercontent.com/plexguide/Huntarr.io/refs/heads/main/frontend/static/logo/Huntarr.svg",
"description": "Huntarr is a tool that automates the search for missing or low-quality media content in your collection. It works seamlessly with applications like Sonarr, Radarr, Lidarr, Readarr, and Whisparr, enhancing their functionality with continuous background scans to identify and update missed or outdated content. Through a user-friendly web interface accessible on port 9705, Huntarr provides real-time statistics, log views, and extensive configuration options. The software is especially useful for users who want to keep their media library up to date by automatically searching for missing episodes or higher-quality versions. Huntarr is well-suited for self-hosted environments and can easily run in LXC containers or Docker setups.",
"install_methods": [
{
"type": "default",
"script": "ct/huntarr.sh",
"resources": {
"cpu": 2,
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@@ -43,6 +43,10 @@
{
"text": "To change upload location, edit 'IMMICH_MEDIA_LOCATION' in `/opt/immich/.env`, and create the symlink 'upload' in /opt/immich/app & /opt/immich/app/machine-learning to your new upload location",
"type": "info"
},
{
"text": "Logs: `/var/log/immich`",
"type": "info"
}
]
}

View File

@@ -12,7 +12,7 @@
"documentation": "https://github.com/LibreTranslate/LibreTranslate?tab=readme-ov-file#settings--flags",
"website": "https://libretranslate.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/libretranslate.webp",
"config_path": "",
"config_path": "/opt/libretranslate/.env",
"description": "Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations. Instead, its translation engine is powered by the open source Argos Translate library.",
"install_methods": [
{

40
frontend/public/json/planka.json generated Normal file
View File

@@ -0,0 +1,40 @@
{
"name": "PLANKA",
"slug": "planka",
"categories": [
12
],
"date_created": "2025-06-19",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 1337,
"documentation": "https://docs.planka.cloud/",
"website": "https://planka.app/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/planka.webp",
"config_path": "/opt/planka/planka/.env",
"description": "Planka is a powerful, project management platform that transforms how teams collaborate. Create projects with multiple boards, organize tasks with intuitive drag-and-drop cards, attach files, write rich markdown descriptions, set due dates, assign team members, and keep conversations flowing with comments and labels—all with seamless real-time updates and smart notifications.",
"install_methods": [
{
"type": "default",
"script": "ct/planka.sh",
"resources": {
"cpu": 1,
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Type `cat ~/planka.creds` inside LXC to see admin user and database credentials.",
"type": "info"
}
]
}

40
frontend/public/json/ubuntu2504-vm.json generated Normal file
View File

@@ -0,0 +1,40 @@
{
"name": "Ubuntu 25.04",
"slug": "ubuntu2504-vm",
"categories": [
2
],
"date_created": "2025-06-19",
"type": "vm",
"updateable": false,
"privileged": false,
"interface_port": null,
"documentation": null,
"website": "https://ubuntu.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/ubuntu.webp",
"config_path": "",
"description": "Ubuntu is a distribution based on Debian, designed to have regular releases and a consistent user experience.",
"install_methods": [
{
"type": "default",
"script": "vm/ubuntu2504-vm.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 8,
"os": null,
"version": null
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "after installation, checkout: ´https://github.com/community-scripts/ProxmoxVE/discussions/272´",
"type": "info"
}
]
}

View File

@@ -1,4 +1,239 @@
[
{
"name": "plexguide/Huntarr.io",
"version": "8.1.3",
"date": "2025-06-19T23:45:15Z"
},
{
"name": "go-gitea/gitea",
"version": "v1.24.1",
"date": "2025-06-19T19:38:29Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.17.1",
"date": "2025-06-19T19:35:01Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.4.0",
"date": "2025-06-19T18:30:11Z"
},
{
"name": "immich-app/immich",
"version": "v1.135.1",
"date": "2025-06-19T17:55:06Z"
},
{
"name": "rclone/rclone",
"version": "v1.70.1",
"date": "2025-06-19T13:19:02Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-dns-cache-manager",
"date": "2025-06-19T12:05:10Z"
},
{
"name": "icereed/paperless-gpt",
"version": "v0.21.0",
"date": "2025-06-19T11:54:59Z"
},
{
"name": "neo4j/neo4j",
"version": "2025.05.1",
"date": "2025-06-19T11:28:36Z"
},
{
"name": "mattermost/mattermost",
"version": "v9.11.17",
"date": "2025-06-18T08:12:05Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.98.2",
"date": "2025-06-18T18:20:16Z"
},
{
"name": "redis/redis",
"version": "8.2-m01-int2",
"date": "2025-06-12T08:52:10Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.2029",
"date": "2025-06-19T05:56:19Z"
},
{
"name": "prometheus-pve/prometheus-pve-exporter",
"version": "v3.5.5",
"date": "2025-06-19T05:43:47Z"
},
{
"name": "docmost/docmost",
"version": "v0.21.0",
"date": "2025-06-18T21:43:27Z"
},
{
"name": "ipfs/kubo",
"version": "v0.35.0",
"date": "2025-05-21T18:00:32Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.5",
"date": "2025-05-28T06:49:43Z"
},
{
"name": "pterodactyl/panel",
"version": "v1.11.11",
"date": "2025-06-18T18:04:50Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.22.0",
"date": "2025-06-18T16:21:38Z"
},
{
"name": "ollama/ollama",
"version": "v0.9.2",
"date": "2025-06-18T14:29:39Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v3.12.7",
"date": "2025-06-18T14:22:53Z"
},
{
"name": "clusterzx/paperless-ai",
"version": "v3.0.6",
"date": "2025-06-18T14:18:13Z"
},
{
"name": "openhab/openhab-core",
"version": "5.0.0.M3",
"date": "2025-06-18T14:18:12Z"
},
{
"name": "zabbix/zabbix",
"version": "7.2.8",
"date": "2025-06-18T13:46:00Z"
},
{
"name": "Bubka/2FAuth",
"version": "v5.6.0",
"date": "2025-06-18T12:19:54Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v10.7.0",
"date": "2025-06-18T11:57:05Z"
},
{
"name": "esphome/esphome",
"version": "2025.6.0",
"date": "2025-06-18T09:41:11Z"
},
{
"name": "forgejo/forgejo",
"version": "v11.0.2",
"date": "2025-06-18T09:38:19Z"
},
{
"name": "evcc-io/evcc",
"version": "0.204.3",
"date": "2025-06-18T08:31:58Z"
},
{
"name": "silverbulletmd/silverbullet",
"version": "2.0.0-pre3",
"date": "2025-06-18T08:01:24Z"
},
{
"name": "cross-seed/cross-seed",
"version": "v6.12.7",
"date": "2025-06-18T03:44:24Z"
},
{
"name": "rcourtman/Pulse",
"version": "v3.30.0",
"date": "2025-06-17T16:00:01Z"
},
{
"name": "grafana/grafana",
"version": "v11.5.6",
"date": "2025-06-17T22:00:40Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.515",
"date": "2025-06-17T19:17:56Z"
},
{
"name": "coder/code-server",
"version": "v4.100.3",
"date": "2025-06-03T21:06:41Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.36.6",
"date": "2025-06-17T18:12:31Z"
},
{
"name": "project-zot/zot",
"version": "v2.1.5",
"date": "2025-06-17T18:04:11Z"
},
{
"name": "BookStackApp/BookStack",
"version": "v25.05.1",
"date": "2025-06-17T14:38:04Z"
},
{
"name": "element-hq/synapse",
"version": "v1.132.0",
"date": "2025-06-17T13:49:30Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.6.1",
"date": "2025-06-17T12:45:39Z"
},
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.1",
"date": "2025-04-11T09:57:47Z"
},
{
"name": "arunavo4/gitea-mirror",
"version": "v2.16.2",
"date": "2025-06-17T11:59:34Z"
},
{
"name": "crowdsecurity/crowdsec",
"version": "v1.6.9",
"date": "2025-06-17T11:54:50Z"
},
{
"name": "glpi-project/glpi",
"version": "10.0.18",
"date": "2025-02-12T11:07:02Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.2",
"date": "2025-05-11T16:40:55Z"
},
{
"name": "donaldzou/WGDashboard",
"version": "v4.2.4",
"date": "2025-06-17T05:37:06Z"
},
{
"name": "webmin/webmin",
"version": "2.402",
"date": "2025-06-17T05:20:42Z"
},
{
"name": "kimai/kimai",
"version": "2.36.1",
@@ -9,26 +244,26 @@
"version": "testing",
"date": "2025-06-16T18:10:42Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.21.14",
"date": "2025-06-16T17:54:48Z"
},
{
"name": "goauthentik/authentik",
"version": "version/2025.6.2",
"date": "2025-06-16T17:54:39Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v2.8.20",
"date": "2025-06-16T17:03:52Z"
"name": "runtipi/runtipi",
"version": "v4.2.1",
"date": "2025-06-03T20:04:28Z"
},
{
"name": "emqx/emqx",
"version": "e5.9.1-alpha.1",
"date": "2025-06-16T15:34:01Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-openapi@9.0.12",
"date": "2025-06-16T15:09:27Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.15",
@@ -39,16 +274,6 @@
"version": "v8.1.16",
"date": "2025-06-16T13:49:37Z"
},
{
"name": "clusterzx/paperless-ai",
"version": "v3.0.5",
"date": "2025-06-16T13:25:55Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.95.3",
"date": "2025-06-03T11:09:42Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "6.3.0-rc.1",
@@ -64,16 +289,6 @@
"version": "v1.18.3",
"date": "2025-06-16T07:03:46Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.2020",
"date": "2025-06-16T05:56:11Z"
},
{
"name": "esphome/esphome",
"version": "2025.5.2",
"date": "2025-06-03T08:45:14Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.2.17",
@@ -149,11 +364,6 @@
"version": "v25.0",
"date": "2025-05-12T09:12:04Z"
},
{
"name": "ollama/ollama",
"version": "v0.9.1-rc1",
"date": "2025-06-12T21:18:54Z"
},
{
"name": "theonedev/onedev",
"version": "v11.11.0",
@@ -164,21 +374,11 @@
"version": "v2.15.0",
"date": "2025-06-14T10:48:57Z"
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-06-14T07:49:50Z"
},
{
"name": "FlareSolverr/FlareSolverr",
"version": "v3.3.25",
"date": "2025-06-14T02:52:44Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.5",
"date": "2025-05-28T06:49:43Z"
},
{
"name": "home-assistant/core",
"version": "2025.6.1",
@@ -195,14 +395,9 @@
"date": "2025-06-13T15:02:37Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.514",
"date": "2025-06-10T14:27:57Z"
},
{
"name": "grafana/grafana",
"version": "v12.0.1+security-01",
"date": "2025-06-13T04:15:18Z"
"name": "wazuh/wazuh",
"version": "coverity-w25-4.13.0",
"date": "2025-06-13T13:58:23Z"
},
{
"name": "FlowiseAI/Flowise",
@@ -214,6 +409,11 @@
"version": "v2025-06-12",
"date": "2025-06-12T20:59:47Z"
},
{
"name": "meilisearch/meilisearch",
"version": "latest",
"date": "2025-06-12T19:09:18Z"
},
{
"name": "Checkmk/checkmk",
"version": "v2.3.0p34",
@@ -224,21 +424,11 @@
"version": "v2.37.1",
"date": "2025-06-12T09:00:21Z"
},
{
"name": "redis/redis",
"version": "8.2-m01-int2",
"date": "2025-06-12T08:52:10Z"
},
{
"name": "zitadel/zitadel",
"version": "v3.3.0",
"date": "2025-06-12T06:54:48Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.2",
"date": "2025-05-11T16:40:55Z"
},
{
"name": "documenso/documenso",
"version": "v1.12.0-rc.4",
@@ -254,51 +444,26 @@
"version": "4.8.11.0",
"date": "2025-03-10T06:39:11Z"
},
{
"name": "crowdsecurity/crowdsec",
"version": "v1.6.8",
"date": "2025-03-25T13:33:10Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.50.3",
"date": "2025-06-11T15:19:52Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.6.0",
"date": "2025-06-11T11:13:21Z"
},
{
"name": "autobrr/autobrr",
"version": "v1.63.1",
"date": "2025-06-11T11:05:42Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-forceipv4-axios",
"date": "2025-06-11T09:16:40Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w24-4.13.0",
"date": "2025-06-11T04:04:55Z"
},
{
"name": "zabbix/zabbix",
"version": "7.2.8rc1",
"date": "2025-06-11T06:50:19Z"
"name": "steveiliop56/tinyauth",
"version": "v3.4.1",
"date": "2025-06-11T07:53:44Z"
},
{
"name": "openobserve/openobserve",
"version": "v0.15.0-rc2",
"date": "2025-06-11T04:29:22Z"
},
{
"name": "mattermost/mattermost",
"version": "server/public/v0.1.15",
"date": "2025-06-11T03:56:25Z"
},
{
"name": "node-red/node-red",
"version": "4.1.0-beta.1",
@@ -309,11 +474,6 @@
"version": "v0.107.62",
"date": "2025-05-27T12:10:19Z"
},
{
"name": "element-hq/synapse",
"version": "v1.131.0",
"date": "2025-06-03T14:13:00Z"
},
{
"name": "OctoPrint/OctoPrint",
"version": "1.11.2",
@@ -329,31 +489,16 @@
"version": "v0.8.4",
"date": "2025-06-10T07:57:14Z"
},
{
"name": "go-gitea/gitea",
"version": "v1.24.0",
"date": "2025-06-10T02:00:38Z"
},
{
"name": "Sonarr/Sonarr",
"version": "v4.0.14.2939",
"date": "2025-03-17T19:12:37Z"
},
{
"name": "cross-seed/cross-seed",
"version": "v6.12.6",
"date": "2025-05-28T00:13:19Z"
},
{
"name": "tailscale/tailscale",
"version": "v1.84.2",
"date": "2025-06-09T23:43:27Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.3.1",
"date": "2025-06-09T21:07:27Z"
},
{
"name": "pocketbase/pocketbase",
"version": "v0.28.3",
@@ -374,16 +519,6 @@
"version": "v0.10.0",
"date": "2025-06-09T13:37:07Z"
},
{
"name": "silverbulletmd/silverbullet",
"version": "0.10.4",
"date": "2025-02-25T18:13:42Z"
},
{
"name": "neo4j/neo4j",
"version": "5.26.8",
"date": "2025-06-08T22:50:58Z"
},
{
"name": "Forceu/Gokapi",
"version": "v2.0.1",
@@ -399,11 +534,6 @@
"version": "v1.5.8",
"date": "2025-06-07T11:39:10Z"
},
{
"name": "evcc-io/evcc",
"version": "0.204.2",
"date": "2025-06-07T11:38:28Z"
},
{
"name": "homebridge/homebridge",
"version": "v1.10.0",
@@ -434,11 +564,6 @@
"version": "10.1.42",
"date": "2025-06-05T22:39:40Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.16.3",
"date": "2025-06-05T21:16:59Z"
},
{
"name": "netbox-community/netbox",
"version": "v4.3.2",
@@ -459,11 +584,6 @@
"version": "mariadb-11.8.2",
"date": "2025-06-04T13:35:16Z"
},
{
"name": "donaldzou/WGDashboard",
"version": "v4.2.3",
"date": "2025-05-07T15:35:04Z"
},
{
"name": "actualbudget/actual",
"version": "v25.6.1",
@@ -480,25 +600,15 @@
"date": "2025-06-04T16:41:44Z"
},
{
"name": "glpi-project/glpi",
"version": "10.0.18",
"date": "2025-02-12T11:07:02Z"
"name": "intri-in/manage-my-damn-life-nextjs",
"version": "v0.7.1",
"date": "2025-06-04T04:39:36Z"
},
{
"name": "louislam/uptime-kuma",
"version": "2.0.0-beta.2-temp",
"date": "2025-03-28T08:45:58Z"
},
{
"name": "webmin/webmin",
"version": "2.401",
"date": "2025-06-04T02:53:03Z"
},
{
"name": "coder/code-server",
"version": "v4.100.3",
"date": "2025-06-03T21:06:41Z"
},
{
"name": "influxdata/influxdb",
"version": "v1.12.1rc3",
@@ -534,31 +644,31 @@
"version": "2.4.0",
"date": "2025-06-01T18:08:44Z"
},
{
"name": "TwiN/gatus",
"version": "v5.18.1",
"date": "2025-05-31T23:06:08Z"
},
{
"name": "prometheus/prometheus",
"version": "v3.4.1",
"date": "2025-05-31T13:45:40Z"
},
{
"name": "BookStackApp/BookStack",
"version": "v25.05",
"date": "2025-05-31T13:36:23Z"
},
{
"name": "blakeblackshear/frigate",
"version": "v0.14.1",
"date": "2024-08-29T22:32:51Z"
},
{
"name": "icereed/paperless-gpt",
"version": "v0.20.0",
"date": "2025-05-30T14:39:51Z"
},
{
"name": "binwiederhier/ntfy",
"version": "v2.12.0",
"date": "2025-05-30T00:26:27Z"
},
{
"name": "release-argus/Argus",
"version": "0.26.3",
"date": "2025-05-29T21:18:15Z"
},
{
"name": "gristlabs/grist-core",
"version": "v1.6.0",
@@ -569,21 +679,11 @@
"version": "v0.56.1",
"date": "2025-05-29T19:09:16Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.36.5",
"date": "2025-05-29T17:06:01Z"
},
{
"name": "readeck/readeck",
"version": "0.19.2",
"date": "2025-05-29T14:39:17Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v10.6.1",
"date": "2025-05-29T13:36:09Z"
},
{
"name": "duplicati/duplicati",
"version": "v2.1.0.119-2.1.0.119_canary_2025-05-29",
@@ -614,11 +714,6 @@
"version": "1.2.34",
"date": "2025-05-27T18:18:00Z"
},
{
"name": "immich-app/immich",
"version": "v1.134.0",
"date": "2025-05-27T17:28:27Z"
},
{
"name": "traefik/traefik",
"version": "v3.4.1",
@@ -664,16 +759,16 @@
"version": "v0.26.2",
"date": "2025-05-22T05:24:42Z"
},
{
"name": "CrazyWolf13/streamlink-webui",
"version": "0.5",
"date": "2025-05-21T20:19:14Z"
},
{
"name": "apache/tika",
"version": "3.2.0-rc2",
"date": "2025-05-21T20:09:07Z"
},
{
"name": "ipfs/kubo",
"version": "v0.35.0",
"date": "2025-05-21T18:00:32Z"
},
{
"name": "Stirling-Tools/Stirling-PDF",
"version": "v0.46.2",
@@ -764,6 +859,11 @@
"version": "v1.0.0-beta21",
"date": "2025-05-09T23:14:23Z"
},
{
"name": "getumbrel/umbrel",
"version": "1.4.2",
"date": "2025-05-09T08:54:49Z"
},
{
"name": "ZoeyVid/NPMplus",
"version": "2025-05-07-r1",
@@ -774,6 +874,11 @@
"version": "v0.19.0",
"date": "2025-05-06T18:05:42Z"
},
{
"name": "garethgeorge/backrest",
"version": "v1.8.1",
"date": "2025-05-06T04:27:00Z"
},
{
"name": "linkwarden/linkwarden",
"version": "v2.10.2",
@@ -790,30 +895,20 @@
"date": "2025-05-05T16:28:24Z"
},
{
"name": "forgejo/forgejo",
"version": "v11.0.1",
"date": "2025-05-02T17:10:30Z"
"name": "raydak-labs/configarr",
"version": "v1.13.5",
"date": "2025-05-03T09:48:44Z"
},
{
"name": "jhuckaby/Cronicle",
"version": "v0.9.80",
"date": "2025-05-02T16:48:15Z"
},
{
"name": "prometheus-pve/prometheus-pve-exporter",
"version": "v3.5.4",
"date": "2025-05-02T13:42:06Z"
},
{
"name": "WordPress/WordPress",
"version": "6.8.1",
"date": "2025-04-30T16:44:16Z"
},
{
"name": "docmost/docmost",
"version": "v0.20.4",
"date": "2025-04-30T14:15:16Z"
},
{
"name": "hivemq/hivemq-community-edition",
"version": "2025.3",
@@ -834,6 +929,11 @@
"version": "deluge-2.2.0",
"date": "2025-04-28T21:31:06Z"
},
{
"name": "oauth2-proxy/oauth2-proxy",
"version": "v7.9.0",
"date": "2025-04-28T16:28:42Z"
},
{
"name": "gotify/server",
"version": "v2.6.3",
@@ -844,11 +944,6 @@
"version": "release-5.1.0",
"date": "2025-04-27T08:53:48Z"
},
{
"name": "openhab/openhab-core",
"version": "4.3.5",
"date": "2025-04-26T13:52:07Z"
},
{
"name": "photoprism/photoprism",
"version": "250426-27ec7a128",
@@ -919,16 +1014,6 @@
"version": "v0.2.11",
"date": "2025-04-12T21:13:08Z"
},
{
"name": "Bubka/2FAuth",
"version": "v5.5.2",
"date": "2025-04-11T22:00:06Z"
},
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.1",
"date": "2025-04-11T09:57:47Z"
},
{
"name": "thomiceli/opengist",
"version": "v1.10.0",
@@ -989,6 +1074,11 @@
"version": "v1.34.0",
"date": "2025-03-26T08:48:34Z"
},
{
"name": "LibreTranslate/LibreTranslate",
"version": "v1.6.5",
"date": "2025-03-25T20:27:29Z"
},
{
"name": "nextcloud/nextcloudpi",
"version": "v1.55.4",
@@ -1054,6 +1144,11 @@
"version": "tc_v0.6.4",
"date": "2025-03-05T15:43:40Z"
},
{
"name": "bitmagnet-io/bitmagnet",
"version": "v0.10.0",
"date": "2025-03-02T15:13:47Z"
},
{
"name": "heiher/hev-socks5-server",
"version": "2.8.0",
@@ -1074,6 +1169,11 @@
"version": "v1.1.05",
"date": "2025-02-24T11:53:12Z"
},
{
"name": "babybuddy/babybuddy",
"version": "v2.7.1",
"date": "2025-02-22T01:14:41Z"
},
{
"name": "typesense/typesense",
"version": "v28.0",
@@ -1109,6 +1209,11 @@
"version": "1.7.6",
"date": "2025-02-01T09:50:52Z"
},
{
"name": "AmruthPillai/Reactive-Resume",
"version": "v4.4.4",
"date": "2025-01-30T16:57:47Z"
},
{
"name": "rustdesk/rustdesk-server",
"version": "1.1.14",
@@ -1119,6 +1224,11 @@
"version": "v0.5.7",
"date": "2025-01-17T15:57:17Z"
},
{
"name": "PCJones/UmlautAdaptarr",
"version": "0.7.2",
"date": "2025-01-13T22:17:18Z"
},
{
"name": "ErsatzTV/ErsatzTV",
"version": "v25.1.0",
@@ -1129,6 +1239,11 @@
"version": "v0.24.6",
"date": "2024-12-22T20:24:35Z"
},
{
"name": "favonia/cloudflare-ddns",
"version": "v1.15.1",
"date": "2024-12-16T13:00:05Z"
},
{
"name": "ArchiveBox/ArchiveBox",
"version": "v0.7.3",
@@ -1159,11 +1274,6 @@
"version": "0.6.24",
"date": "2024-11-16T06:47:56Z"
},
{
"name": "pterodactyl/panel",
"version": "v1.11.10",
"date": "2024-11-15T02:29:18Z"
},
{
"name": "sabre-io/Baikal",
"version": "0.10.1",
@@ -1238,15 +1348,5 @@
"name": "thelounge/thelounge-deb",
"version": "v4.4.3",
"date": "2024-04-06T12:24:35Z"
},
{
"name": "deepch/RTSPtoWeb",
"version": "v2.4.3",
"date": "2023-03-29T12:05:02Z"
},
{
"name": "Shinobi-Systems/Shinobi",
"version": "furrykitten-3",
"date": "2022-07-15T05:20:17Z"
}
]

36
frontend/public/json/wizarr.json generated Normal file
View File

@@ -0,0 +1,36 @@
{
"name": "Wizarr",
"slug": "wizarr",
"categories": [
14,
13
],
"date_created": "2025-06-19",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 5690,
"documentation": "https://docs.wizarr.dev/",
"website": "https://docs.wizarr.dev/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/wizarr.webp",
"config_path": "/opt/wizarr/.env",
"description": "Wizarr is an automatic user invitation system for Plex, Jellyfin and Emby. Create a unique link and share it to a user and they will automatically be invited to your media Server",
"install_methods": [
{
"type": "default",
"script": "ct/wizarr.sh",
"resources": {
"cpu": 1,
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": []
}

View File

@@ -19,9 +19,9 @@ $STD apt-get install -y \
nginx
msg_ok "Installed Dependencies"
PHP_VERSION="8.3" PHP_MODULE="common,ctype,fileinfo,fpm,mysql,cli" install_php
install_composer
install_mariadb
PHP_VERSION="8.3" PHP_MODULE="common,ctype,fileinfo,fpm,mysql,cli" setup_php
setup_composer
setup_mariadb
msg_info "Setting up Database"
DB_NAME=2fauth_db
@@ -38,7 +38,7 @@ $STD mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUS
} >>~/2FAuth.creds
msg_ok "Set up Database"
fetch_and_deploy_gh_release "Bubka/2FAuth"
fetch_and_deploy_gh_release "2fauth" "Bubka/2FAuth"
msg_info "Setup 2FAuth"
cd /opt/2fauth

View File

@@ -22,7 +22,7 @@ msg_info "Installing Actual Budget"
cd /opt
RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
NODE_VERSION="22"
install_node_and_modules
setup_nodejs
mkdir -p /opt/actualbudget-data/{server-files,upload,migrate,user-files,migrations,config}
chown -R root:root /opt/actualbudget-data
chmod -R 755 /opt/actualbudget-data

View File

@@ -23,8 +23,8 @@ $STD apt-get install -y \
python3-pip
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
PG_VERSION="16" PG_MODULES="postgis" install_postgresql
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
PG_VERSION="16" PG_MODULES="postgis" setup_postgresql
msg_info "Set up PostgreSQL Database"
DB_NAME="adventurelog_db"

View File

@@ -38,7 +38,7 @@ $STD apt-get install -y \
default-jdk
msg_ok "Installed Dependencies"
install_mariadb
setup_mariadb
msg_info "Setup Apache Tomcat"
RELEASE=$(curl -fsSL https://dlcdn.apache.org/tomcat/tomcat-9/ | grep -oP '(?<=href=")v[^"/]+(?=/")' | sed 's/^v//' | sort -V | tail -n1)

View File

@@ -33,7 +33,7 @@ $STD apt-get install -y \
python3-regex
msg_ok "Installed Python Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing Playwright"
$STD pip install playwright

View File

@@ -20,7 +20,7 @@ $STD apt-get install -y \
php-{pgsql,dom}
msg_ok "Installed Dependencies"
PG_VERSION="16" install_postgresql
PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL Database"
DB_NAME=baikal

View File

@@ -20,8 +20,8 @@ $STD apt-get install -y \
musl-dev
msg_ok "Installed Dependencies"
PG_VERSION="16" install_postgresql
install_go
PG_VERSION="16" setup_postgresql
setup_go
RELEASE=$(curl -fsSL https://api.github.com/repos/bitmagnet-io/bitmagnet/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
msg_info "Installing bitmagnet v${RELEASE}"

View File

@@ -22,7 +22,7 @@ $STD apt-get install -y \
make
msg_ok "Installed Dependencies"
install_mariadb
setup_mariadb
msg_info "Setting up Database"
DB_NAME=bookstack

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing ByteStash"
JWT_SECRET=$(openssl rand -base64 32 | tr -d '/+=')

View File

@@ -29,7 +29,7 @@ msg_ok "Installed Caddy"
read -r -p "${TAB3}Would you like to install xCaddy Addon? <y/N> " prompt
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
install_go
setup_go
msg_info "Setup xCaddy"
$STD apt-get install -y git
cd /opt

View File

@@ -51,7 +51,7 @@ $STD apt-get install -y \
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Setup Python3"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing Change Detection"
mkdir /opt/changedetection

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
install_go
setup_go
msg_info "Configure Application"
var_cf_api_token="default"

View File

@@ -18,8 +18,8 @@ $STD apt-get install -y \
git
msg_ok "Installed Dependencies"
NODE_MODULE="pnpm@latest" install_node_and_modules
fetch_and_deploy_gh_release "raydak-labs/configarr"
NODE_MODULE="pnpm@latest" setup_nodejs
fetch_and_deploy_gh_release "configarr" "raydak-labs/configarr"
msg_info "Setup ${APPLICATION}"
cat <<EOF >/opt/configarr/.env

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing Cronicle Primary Server"
LATEST=$(curl -fsSL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4)

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Setup Cross-Seed"
$STD npm install cross-seed@latest -g

View File

@@ -18,7 +18,7 @@ $STD apt-get install -y \
git
msg_ok "Installed Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
read -p "${TAB3}Install OnlyOffice components instead of CKEditor? (Y/N): " onlyoffice

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
RELEASE=$(curl -fsSL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
msg_info "Installing Dashy ${RELEASE} (Patience)"

View File

@@ -20,8 +20,8 @@ $STD apt-get install -y \
make
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" install_node_and_modules
PG_VERSION="16" install_postgresql
NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL"
DB_NAME="docmost_db"

View File

@@ -28,8 +28,8 @@ $STD apt-get install -y \
python3-bcrypt
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="turbo@1.9.3" install_node_and_modules
PG_VERSION="16" install_postgresql
NODE_VERSION="22" NODE_MODULE="turbo@1.9.3" setup_nodejs
PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL"
DB_NAME="documenso_db"

View File

@@ -19,7 +19,7 @@ $STD apt-get install -y \
debconf-utils
msg_ok "Installed Dependencies"
install_mariadb
setup_mariadb
msg_info "Setting up Database"
ROOT_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)

View File

@@ -20,7 +20,7 @@ $STD apt-get install -y \
debconf-utils
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
read -p "${TAB3}Please enter the name for your server: " servername
@@ -57,8 +57,8 @@ cd /opt/synapse-admin
$STD yarn global add serve
$STD yarn install --ignore-engines
$STD yarn build
mv ./dist ../ && \
rm -rf * && \
mv ./dist ../ &&
rm -rf * &&
mv ../dist ./
msg_ok "Installed Element Synapse"

View File

@@ -18,7 +18,7 @@ $STD apt-get install -y \
xdg-utils
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
msg_info "Setup Excalidraw"
temp_file=$(mktemp)

View File

@@ -24,7 +24,7 @@ $STD apt-get install -y \
composer
msg_ok "Installed Dependencies"
install_mariadb
setup_mariadb
msg_info "Setting up database"
DB_NAME=firefly

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="20" install_node_and_modules
NODE_VERSION="20" setup_nodejs
msg_info "Installing FlowiseAI (Patience)"
$STD npm install -g flowise \

View File

@@ -20,7 +20,7 @@ $STD apt-get install -y \
libapache2-mod-php
msg_ok "Installed Dependencies"
PG_VERSION="16" install_postgresql
PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL"
DB_NAME=freshrss

View File

@@ -23,7 +23,7 @@ $STD apt-get install -y {python3,python3-dev,python3-setuptools,python3-distutil
$STD pip install --upgrade pip
msg_ok "Setup Python3"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing go2rtc"
mkdir -p /usr/local/go2rtc/bin

View File

@@ -17,7 +17,7 @@ $STD apt-get install -y \
ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
msg_info "Installing Fumadocs"
mkdir -p /opt/fumadocs

View File

@@ -19,7 +19,7 @@ $STD apt-get install -y \
libcap2-bin
msg_ok "Installed Dependencies"
install_go
setup_go
RELEASE=$(curl -s https://api.github.com/repos/TwiN/gatus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
msg_info "Setting up gatus v${RELEASE}"

View File

@@ -19,7 +19,7 @@ $STD apt-get install -y \
ca-certificates
msg_ok "Installed Dependencies"
install_mariadb
setup_mariadb
msg_info "Configuring Database"
DB_NAME=ghost
@@ -37,7 +37,7 @@ $STD mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUS
} >>~/ghost.creds
msg_ok "Configured MySQL"
NODE_VERSION="20" install_node_and_modules
NODE_VERSION="20" setup_nodejs
msg_info "Installing Ghost CLI"
$STD npm install ghost-cli@latest -g

View File

@@ -28,7 +28,7 @@ ln -sf /opt/bun/bin/bun /usr/local/bin/bun
ln -sf /opt/bun/bin/bun /usr/local/bin/bunx
msg_ok "Installed Bun"
fetch_and_deploy_gh_release "arunavo4/gitea-mirror"
fetch_and_deploy_gh_release "gitea-mirror" "arunavo4/gitea-mirror"
msg_info "Installing gitea-mirror"
cd /opt/gitea-mirror

View File

@@ -22,7 +22,7 @@ $STD apt-get install -y \
libapache2-mod-php
msg_ok "Installed Dependencies"
install_mariadb
setup_mariadb
msg_info "Setting up database"
DB_NAME=glpi_db

View File

@@ -22,8 +22,8 @@ $STD apt-get install -y \
build-essential
msg_ok "Installed Dependencies"
install_go
NODE_VERSION="22" install_node_and_modules
setup_go
NODE_VERSION="22" setup_nodejs
msg_info "Setup ${APPLICATION} (Patience)"
temp_file=$(mktemp)

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
MONGO_VERSION="7.0" install_mongodb
MONGO_VERSION="7.0" setup_mongodb
msg_info "Setup Graylog Data Node"
PASSWORD_SECRET=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16)

View File

@@ -20,7 +20,7 @@ $STD apt-get install -y \
python3.11-venv
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
msg_info "Installing Grist"
RELEASE=$(curl -fsSL https://api.github.com/repos/gristlabs/grist-core/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')

View File

@@ -22,7 +22,7 @@ curl -fsSL "http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1
$STD dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
msg_ok "Installed Dependencies"
NODE_VERSION="20" install_node_and_modules
NODE_VERSION="20" setup_nodejs
msg_info "Setup ${APPLICATION}"
temp_file=$(mktemp)

View File

@@ -28,8 +28,8 @@ msg_ok "Installed Dependencies"
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.packageManager | split("@")[1]')"
install_node_and_modules
fetch_and_deploy_gh_release "homarr-labs/homarr"
setup_nodejs
fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr"
msg_info "Installing Homarr (Patience)"
cd /opt

View File

@@ -17,7 +17,7 @@ msg_info "Installing Dependencies"
$STD apt-get install -y jq
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
LOCAL_IP=$(hostname -I | awk '{print $1}')
RELEASE=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')

View File

@@ -0,0 +1,49 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: BiluliB
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/plexguide/Huntarr.io
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y jq
msg_ok "Installed Dependencies"
setup_uv
fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io"
msg_info "Configure Huntarr"
$STD uv venv /opt/huntarr/.venv
$STD uv pip install --python /opt/huntarr/.venv/bin/python -r /opt/huntarr/requirements.txt
msg_ok "Configured Huntrarr"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/huntarr.service
[Unit]
Description=Huntarr Service
After=network.target
[Service]
WorkingDirectory=/opt/huntarr
ExecStart=/opt/huntarr/.venv/bin/python /opt/huntarr/main.py
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now huntarr
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -13,6 +13,8 @@ setting_up_container
network_check
update_os
setup_uv
msg_info "Configuring apt and installing dependencies"
echo "deb http://deb.debian.org/debian testing main contrib" >/etc/apt/sources.list.d/immich.list
cat <<EOF >/etc/apt/preferences.d/immich
@@ -27,7 +29,6 @@ $STD apt-get install --no-install-recommends -y \
redis \
autoconf \
build-essential \
python3-venv \
python3-dev \
cmake \
jq \
@@ -63,6 +64,7 @@ $STD apt-get install --no-install-recommends -y \
mesa-utils \
mesa-va-drivers \
mesa-vulkan-drivers \
ocl-icd-libopencl1 \
tini \
zlib1g
$STD apt-get install -y \
@@ -84,21 +86,17 @@ ln -s /usr/lib/jellyfin-ffmpeg/ffmpeg /usr/bin/ffmpeg
ln -s /usr/lib/jellyfin-ffmpeg/ffprobe /usr/bin/ffprobe
msg_ok "Dependencies Installed"
NODE_VERSION="22" install_node_and_modules
PG_VERSION="16" install_postgresql
read -r -p "${TAB3}Install OpenVINO dependencies for Intel HW-accelerated machine-learning? " prompt
read -r -p "Install OpenVINO dependencies for Intel HW-accelerated machine-learning? y/N " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing OpenVINO dependencies"
touch ~/.openvino
$STD apt-get -y install --no-install-recommends ocl-icd-libopencl1
tmp_dir=$(mktemp -d)
$STD pushd "$tmp_dir"
curl -fsSL https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-core_1.0.17384.11_amd64.deb -O
curl -fsSL https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-opencl_1.0.17384.11_amd64.deb -O
curl -fsSL https://github.com/intel/compute-runtime/releases/download/24.31.30508.7/intel-opencl-icd_24.31.30508.7_amd64.deb -O
curl -fsSL https://github.com/intel/compute-runtime/releases/download/24.31.30508.7/libigdgmm12_22.4.1_amd64.deb -O
$STD dpkg -i ./*.deb
curl -fsSLO https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-core_1.0.17384.11_amd64.deb
curl -fsSLO https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-opencl_1.0.17384.11_amd64.deb
curl -fsSLO https://github.com/intel/compute-runtime/releases/download/24.31.30508.7/intel-opencl-icd_24.31.30508.7_amd64.deb
curl -fsSLO https://github.com/intel/compute-runtime/releases/download/24.31.30508.7/libigdgmm12_22.4.1_amd64.deb
$STD apt install -y ./*.deb
$STD popd
rm -rf "$tmp_dir"
dpkg -l | grep "intel-opencl-icd" | awk '{print $3}' >~/.intel_version
@@ -112,11 +110,15 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_ok "Installed OpenVINO dependencies"
fi
NODE_VERSION="22" setup_nodejs
PG_VERSION="16" PG_MODULES="pgvector" setup_postgresql
msg_info "Setting up Postgresql Database"
$STD apt-get install postgresql-16-pgvector
curl -fsSL https://github.com/tensorchord/VectorChord/releases/download/0.3.0/postgresql-16-vchord_0.3.0-1_amd64.deb -o vchord.deb
$STD dpkg -i vchord.deb
VCHORD_RELEASE="$(curl -fsSL https://api.github.com/repos/tensorchord/vectorchord/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')"
curl -fsSL "https://github.com/tensorchord/VectorChord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
$STD apt install -y ./vchord.deb
rm vchord.deb
echo "$VCHORD_RELEASE" >~/.vchord_version
DB_NAME="immich"
DB_USER="immich"
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c18)
@@ -273,7 +275,7 @@ msg_ok "Custom Photo-processing Library Compiled"
msg_info "Installing ${APPLICATION} (more patience please)"
tmp_file=$(mktemp)
RELEASE=$(curl -s https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
RELEASE=$(curl -fsSL https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/immich-app/immich/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file"
unzip -q "$tmp_file"
INSTALL_DIR="/opt/${APPLICATION}"
@@ -304,23 +306,16 @@ cp LICENSE "$APP_DIR"
msg_ok "Installed Immich Web Components"
cd "$SRC_DIR"/machine-learning
$STD python3 -m venv "$ML_DIR/ml-venv"
export VIRTUAL_ENV="${ML_DIR}/ml-venv"
$STD uv venv "$VIRTUAL_ENV"
if [[ -f ~/.openvino ]]; then
msg_info "Installing HW-accelerated machine-learning"
(
source "$ML_DIR"/ml-venv/bin/activate
$STD pip3 install uv
uv -q sync --extra openvino --no-cache --active
)
patchelf --clear-execstack "$ML_DIR"/ml-venv/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so
uv -q sync --extra openvino --no-cache --active
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
msg_ok "Installed HW-accelerated machine-learning"
else
msg_info "Installing machine-learning"
(
source "$ML_DIR"/ml-venv/bin/activate
$STD pip3 install uv
uv -q sync --extra cpu --no-cache --active
)
uv -q sync --extra cpu --no-cache --active
msg_ok "Installed machine-learning"
fi
cd "$SRC_DIR"
@@ -351,7 +346,9 @@ URL_LIST=(
https://download.geonames.org/export/dump/cities500.zip
https://raw.githubusercontent.com/nvkelso/natural-earth-vector/v5.1.2/geojson/ne_10m_admin_0_countries.geojson
)
echo "${URL_LIST[@]}" | xargs -n1 -P 8 wget -q
for geo in "${URL_LIST[@]}"; do
curl -fsSLO "$geo"
done
unzip -q cities500.zip
date --iso-8601=seconds | tr -d "\n" >geodata-date.txt
rm cities500.zip
@@ -390,13 +387,13 @@ cat <<EOF >"${ML_DIR}"/ml_start.sh
#!/usr/bin/env bash
cd ${ML_DIR}
. ml-venv/bin/activate
. ${VIRTUAL_ENV}/bin/activate
set -a
. ${INSTALL_DIR}/.env
set +a
python -m immich_ml
python3 -m immich_ml
EOF
chmod +x "$ML_DIR"/ml_start.sh
cat <<EOF >/etc/systemd/system/"${APPLICATION}"-web.service

View File

@@ -17,7 +17,7 @@ msg_info "Installing Dependencies"
$STD apt-get install -y ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing ioBroker (Patience)"
$STD bash <(curl -fsSL https://iobroker.net/install.sh)

View File

@@ -19,14 +19,12 @@ $STD apt-get install -y \
build-essential
msg_ok "Installed Dependencies"
git clone -q https://github.com/Fallenbagel/jellyseerr.git /opt/jellyseerr
cd /opt/jellyseerr
$STD git checkout main
pnpm_desired=$(grep -Po '"pnpm":\s*"\K[^"]+' /opt/jellyseerr/package.json)
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@$pnpm_desired" setup_nodejs
msg_info "Installing Jellyseerr (Patience)"
export CYPRESS_INSTALL_BINARY=0

View File

@@ -48,7 +48,7 @@ sed -i \
/etc/meilisearch.toml
msg_ok "Installed Meilisearch"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
$STD npm install -g corepack@0.31.0
msg_info "Installing karakeep"

View File

@@ -23,7 +23,7 @@ $STD apt-get install -y \
lsb-release
msg_ok "Installed Dependencies"
install_mysql
setup_mysql
msg_info "Adding PHP8.4 Repository"
$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb

View File

@@ -19,8 +19,8 @@ $STD apt-get install -y \
lsb-release
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
PG_VERSION="16" install_postgresql
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
PG_VERSION="16" setup_postgresql
msg_info "Setup PHP8.4 Repository"
$STD curl -fsSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb

View File

@@ -29,7 +29,7 @@ $STD apt-get install -y \
msg_ok "Setup Python3"
setup_uv
fetch_and_deploy_gh_release "LibreTranslate/LibreTranslate"
fetch_and_deploy_gh_release "libretranslate" "LibreTranslate/LibreTranslate"
msg_info "Setup LibreTranslate (Patience)"
cd /opt/libretranslate
@@ -43,6 +43,10 @@ $STD uv pip install "numpy<2"
$STD uv pip install .
$STD uv pip install libretranslate
$STD .venv/bin/python scripts/install_models.py
cat <<EOF >/opt/libretranslate/.env
LT_PORT=5000
EOF
msg_ok "Installed LibreTranslate"
msg_info "Creating Service"
@@ -56,6 +60,7 @@ User=root
Type=idle
Restart=always
Environment="PATH=/usr/local/lib/python3.11/dist-packages/libretranslate"
EnvironmentFile=/opt/libretranslate/.env
ExecStart=/opt/libretranslate/.venv/bin/python3 /opt/libretranslate/.venv/bin/libretranslate --host * --update-models
ExecReload=/bin/kill -s HUP
KillMode=mixed

View File

@@ -19,9 +19,9 @@ $STD apt-get install -y \
build-essential
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
PG_VERSION="16" install_postgresql
RUST_CRATES="monolith" install_rust_and_crates
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
PG_VERSION="16" setup_postgresql
RUST_CRATES="monolith" setup_rust
msg_info "Setting up PostgreSQL DB"
DB_NAME=linkwardendb
@@ -48,7 +48,7 @@ if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
fi
msg_info "Installing Linkwarden (Patience)"
fetch_and_deploy_gh_release "linkwarden/linkwarden"
fetch_and_deploy_gh_release "linkwarden" "linkwarden/linkwarden"
cd /opt/linkwarden
$STD yarn
$STD npx playwright install-deps

View File

@@ -20,7 +20,7 @@ $STD apt-get install -y gcc
$STD apt-get install -y ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
RELEASE=$(curl -fsSL https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
msg_info "Installing Mafl v${RELEASE}"

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Setup MagicMirror"
temp_file=$(mktemp)

View File

@@ -13,8 +13,8 @@ setting_up_container
network_check
update_os
NODE_VERSION="20" install_node_and_modules
MYSQL_VERSION="8.0" install_mysql
NODE_VERSION="20" setup_nodejs
MYSQL_VERSION="8.0" setup_mysql
msg_info "Setting up Database"
DB_NAME="mmdl"

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
install_mariadb
setup_mariadb
msg_info "Setup MariaDB"
sed -i 's/^# *\(port *=.*\)/\1/' /etc/mysql/my.cnf

View File

@@ -17,7 +17,7 @@ msg_info "Install Matterbridge"
mkdir -p /root/Matterbridge
NODE_VERSION="22"
NODE_MODULE="matterbridge"
install_node_and_modules
setup_nodejs
msg_ok "Installed Matterbridge"
msg_info "Creating Service"

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
PG_VERSION="16" install_postgresql
PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL"
DB_NAME=mattermost

View File

@@ -35,7 +35,7 @@ msg_ok "Setup ${APPLICATION}"
read -r -p "${TAB3}Do you want add meilisearch-ui? [y/n]: " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
msg_info "Setup ${APPLICATION}-ui"
tmp_file=$(mktemp)

View File

@@ -21,8 +21,8 @@ $STD apt-get install -y \
tzdata
msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
install_go
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
setup_go
msg_info "Installing Memos (Patience)"
mkdir -p /opt/memos_data

View File

@@ -17,7 +17,7 @@ msg_info "Installing Dependencies"
$STD apt-get install -y ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing MeshCentral"
mkdir /opt/meshcentral

View File

@@ -36,7 +36,7 @@ $STD apt-get install -y \
python3-venv
msg_ok "Setup Python3"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing MeTube"
$STD git clone https://github.com/alexta69/metube /opt/metube

View File

@@ -21,8 +21,8 @@ $STD apt-get install -y \
composer
msg_ok "Installed Dependencies"
install_mariadb
NODE_VERSION="20" NODE_MODULE="yarn@latest" install_node_and_modules
setup_mariadb
NODE_VERSION="20" NODE_MODULE="yarn@latest" setup_nodejs
msg_info "Setting up MariaDB"
DB_NAME=monica

View File

@@ -19,7 +19,7 @@ $STD apt-get install -y \
ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing MySpeed"
RELEASE=$(curl -fsSL https://github.com/gnmyt/myspeed/releases/latest | grep "title>Release" | cut -d " " -f 5)

View File

@@ -18,7 +18,7 @@ $STD apt-get install -y \
ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing n8n (Patience)"
$STD npm install --global patch-package

View File

@@ -26,7 +26,7 @@ $STD apt-get install -y \
zlib1g-dev
msg_ok "Installed Dependencies"
PG_VERSION="16" install_postgresql
PG_VERSION="16" setup_postgresql
msg_info "Installing Python"
$STD apt-get install -y \

View File

@@ -19,7 +19,7 @@ $STD apt-get install -y \
ca-certificates
msg_ok "Installed Dependencies"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing Node-Red"
$STD npm install -g --unsafe-perm node-red

View File

@@ -21,8 +21,8 @@ $STD apt-get install -y \
ca-certificates
msg_ok "Installed Dependencies"
install_mongodb
NODE_VERSION="22" install_node_and_modules
setup_mongodb
NODE_VERSION="22" setup_nodejs
msg_info "Configure MongoDB"
MONGO_ADMIN_USER="admin"

View File

@@ -26,7 +26,7 @@ $STD apt-get install -y --no-install-recommends \
python3-pip
msg_ok "Setup Python3"
NODE_VERSION="22" install_node_and_modules
NODE_VERSION="22" setup_nodejs
msg_info "Installing Open WebUI (Patience)"
$STD git clone https://github.com/open-webui/open-webui.git /opt/open-webui

View File

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

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