Compare commits

...

29 Commits

Author SHA1 Message Date
CanbiZ
1d703f2f2f Add external installer warnings and user confirmation
Added explicit warnings and user confirmation prompts to install scripts that run external installers from third-party sources. Updated JSON metadata to remove warning notes about external sources, as the scripts now handle user notification and consent directly. This improves transparency and user safety during installation.
2025-09-10 11:19:47 +02:00
community-scripts-pr-app[bot]
63f6d772ea Update CHANGELOG.md (#7536)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-10 07:44:30 +00:00
CanbiZ
652df1f370 Set updateable to true for all JSON app configs (#7534) 2025-09-10 09:44:09 +02:00
community-scripts-pr-app[bot]
f4b5baf308 Update CHANGELOG.md (#7535)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-10 07:15:02 +00:00
Michel Roegl-Brunner
cc36fd5434 Booklore: Add Bookdrop location to .env (#7533) 2025-09-10 09:14:41 +02:00
CanbiZ
3e182978ad Improve npmplus credential retrieval and messaging (#7532)
* Improve npmplus credential retrieval and messaging

Enhanced the install script to attempt live log monitoring for credentials if not found initially, and updated the info message in npmplus.json to guide users to check docker logs if the credentials file is missing.

* Update npmplus.json

* Change updateable status to true in npmplus.json
2025-09-10 09:14:15 +02:00
community-scripts-pr-app[bot]
e7adf1a9b5 Update CHANGELOG.md (#7529)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-10 00:12:25 +00:00
community-scripts-pr-app[bot]
36fb86eaf8 Update versions.json (#7528)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-10 02:12:00 +02:00
community-scripts-pr-app[bot]
495c47224e Update CHANGELOG.md (#7525)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 21:23:22 +00:00
community-scripts-pr-app[bot]
7af71384b4 Update CHANGELOG.md (#7524)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 21:18:08 +00:00
dependabot[bot]
e318152ee3 Bump vite from 7.0.0 to 7.1.5 in /frontend (#7522)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.0.0 to 7.1.5.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.1.5/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 7.1.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-09 23:17:43 +02:00
community-scripts-pr-app[bot]
17dc7c90a1 Update CHANGELOG.md (#7521)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 20:35:29 +00:00
Chris
226a5bce8f Pulse: standardise install/update with Pulse repo script (#7519)
- revert the pulse => pulse-backend service name change
- remove message about older installs
- symlink pulse binary to /usr/local/bin
2025-09-09 22:35:04 +02:00
community-scripts-pr-app[bot]
ffd2ed01b9 Update CHANGELOG.md (#7518)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 17:13:00 +00:00
Chris
3348e2fff0 Tududi: v0.81 (#7517) 2025-09-09 19:12:27 +02:00
community-scripts-pr-app[bot]
def41f66f4 Update CHANGELOG.md (#7516)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 14:48:50 +00:00
Slaviša Arežina
02a1a732f8 WGDashboard: Revert back to old update method (#7500)
* Revert back to git clone

* Add git to sh
2025-09-09 16:48:12 +02:00
community-scripts-pr-app[bot]
2494af7e1c Update CHANGELOG.md (#7514)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 13:39:02 +00:00
CanbiZ
0c4711d99f Change category ID from 15 to 13 in swizzin.json (#7511) 2025-09-09 15:38:33 +02:00
community-scripts-pr-app[bot]
039f73a5ed Update versions.json (#7512)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 14:05:31 +02:00
CanbiZ
74b58d5b10 planka: fix copy issue 2025-09-09 11:40:59 +02:00
community-scripts-pr-app[bot]
61044104a2 Update CHANGELOG.md (#7510)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 09:25:29 +00:00
CanbiZ
fac612077a AdventureLog: remove folder during update process (#7507) 2025-09-09 11:24:58 +02:00
community-scripts-pr-app[bot]
135b3ff964 Update CHANGELOG.md (#7509)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 09:22:02 +00:00
Slaviša Arežina
393b853119 Fix backup and restore (#7505) 2025-09-09 11:21:38 +02:00
community-scripts-pr-app[bot]
6bb2938e34 Update CHANGELOG.md (#7503)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 07:52:08 +00:00
Slaviša Arežina
fbf16fd54d Fixes (#7502) 2025-09-09 09:51:38 +02:00
community-scripts-pr-app[bot]
d6d4fd034f Update CHANGELOG.md (#7501)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-09 07:28:55 +00:00
Bram Suurd
aa4999dac6 Refactor GitHubStarsButton to wrap in Link component for external navigation (#7492) 2025-09-09 09:28:32 +02:00
64 changed files with 517 additions and 302 deletions

View File

@@ -10,8 +10,54 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-09-10
### 🚀 Updated Scripts
- #### ✨ New Features
- Booklore: Add Bookdrop location to .env [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#7533](https://github.com/community-scripts/ProxmoxVE/pull/7533))
- #### 🔧 Refactor
- Improve npmplus credential retrieval and messaging [@MickLesk](https://github.com/MickLesk) ([#7532](https://github.com/community-scripts/ProxmoxVE/pull/7532))
### 🌐 Website
- #### 📝 Script Information
- set updateable to true for several lxc JSON-configs [@MickLesk](https://github.com/MickLesk) ([#7534](https://github.com/community-scripts/ProxmoxVE/pull/7534))
## 2025-09-09
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Tududi: v0.81 [@vhsdream](https://github.com/vhsdream) ([#7517](https://github.com/community-scripts/ProxmoxVE/pull/7517))
- WGDashboard: Revert back to old update method [@tremor021](https://github.com/tremor021) ([#7500](https://github.com/community-scripts/ProxmoxVE/pull/7500))
- AdventureLog: remove folder during update process [@MickLesk](https://github.com/MickLesk) ([#7507](https://github.com/community-scripts/ProxmoxVE/pull/7507))
- PLANKA: Fix backup and restore commands [@tremor021](https://github.com/tremor021) ([#7505](https://github.com/community-scripts/ProxmoxVE/pull/7505))
- Recyclarr: Suppress config creation output [@tremor021](https://github.com/tremor021) ([#7502](https://github.com/community-scripts/ProxmoxVE/pull/7502))
- #### 🔧 Refactor
- Pulse: standardise install/update with Pulse repo script [@vhsdream](https://github.com/vhsdream) ([#7519](https://github.com/community-scripts/ProxmoxVE/pull/7519))
### 🌐 Website
- #### 🐞 Bug Fixes
- Refactor GitHubStarsButton to wrap in Link component for external navigation [@BramSuurdje](https://github.com/BramSuurdje) ([#7492](https://github.com/community-scripts/ProxmoxVE/pull/7492))
- #### ✨ New Features
- Bump vite from 7.0.0 to 7.1.5 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#7522](https://github.com/community-scripts/ProxmoxVE/pull/7522))
- #### 📝 Script Information
- swizzin: Change category from nvr to media [@MickLesk](https://github.com/MickLesk) ([#7511](https://github.com/community-scripts/ProxmoxVE/pull/7511))
## 2025-09-08
### 🚀 Updated Scripts

View File

@@ -39,6 +39,7 @@ function update_script() {
msg_info "Backup Old Installation"
cp -r /opt/adventurelog /opt/adventurelog-backup
rm -rf /opt/adventurelog
msg_ok "Backup done"
fetch_and_deploy_gh_release "adventurelog" "seanmorley15/adventurelog"

View File

@@ -34,12 +34,13 @@ function update_script() {
msg_ok "Stopped $APP"
msg_info "Backing up data"
mkdir -p /opt/planka-backup/{favicons,user-avatars,background-images,attachments}
mv /opt/planka/.env /opt/planka-backup
[ -d /opt/planka/public/favicons ] && find /opt/planka/public/favicons -maxdepth 1 -type f -exec mv -t /opt/planka-backup/favicons {} +
[ -d /opt/planka/public/user-avatars ] && find /opt/planka/public/user-avatars -maxdepth 1 -type f -exec mv -t /opt/planka-backup/user-avatars {} +
[ -d /opt/planka/public/background-images ] && find /opt/planka/public/background-images -maxdepth 1 -type f -exec mv -t /opt/planka-backup/background-images {} +
[ -d /opt/planka/private/attachments ] && find /opt/planka/private/attachments -maxdepth 1 -type f -exec mv -t /opt/planka-backup/attachments {} +
BK="/opt/planka-backup"
mkdir -p "$BK"/{favicons,user-avatars,background-images,attachments}
[ -f /opt/planka/.env ] && mv /opt/planka/.env "$BK"/
[ -d /opt/planka/public/favicons ] && cp -a /opt/planka/public/favicons/. "$BK/favicons/"
[ -d /opt/planka/public/user-avatars ] && cp -a /opt/planka/public/user-avatars/. "$BK/user-avatars/"
[ -d /opt/planka/public/background-images ] && cp -a /opt/planka/public/background-images/. "$BK/background-images/"
[ -d /opt/planka/private/attachments ] && cp -a /opt/planka/private/attachments/. "$BK/attachments/"
rm -rf /opt/planka
msg_ok "Backed up data"
@@ -51,11 +52,13 @@ function update_script() {
msg_ok "Updated Frontend"
msg_info "Restoring data"
mv /opt/planka-backup/.env /opt/planka/
[ -d /opt/planka-backup/favicons ] && find /opt/planka-backup/favicons -maxdepth 1 -type f -exec mv -t /opt/planka/public/favicons {} +
[ -d /opt/planka-backup/user-avatars ] && find /opt/planka-backup/user-avatars -maxdepth 1 -type f -exec mv -t /opt/planka/public/user-avatars {} +
[ -d /opt/planka-backup/background-images ] && find /opt/planka-backup/background-images -maxdepth 1 -type f -exec mv -t /opt/planka/public/background-images {} +
[ -d /opt/planka-backup/attachments ] && find /opt/planka-backup/attachments -maxdepth 1 -type f -exec mv -t /opt/planka/private/attachments {} +
[ -f "$BK/.env" ] && mv "$BK/.env" /opt/planka/.env
mkdir -p /opt/planka/public/{favicons,user-avatars,background-images} /opt/planka/private/attachments
[ -d "$BK/favicons" ] && cp -a "$BK/favicons/." /opt/planka/public/favicons/
[ -d "$BK/user-avatars" ] && cp -a "$BK/user-avatars/." /opt/planka/public/user-avatars/
[ -d "$BK/background-images" ] && cp -a "$BK/background-images/." /opt/planka/public/background-images/
[ -d "$BK/attachments" ] && cp -a "$BK/attachments/." /opt/planka/private/attachments/
rm -rf "$BK"
msg_ok "Restored data"
msg_info "Starting $APP"

View File

@@ -28,10 +28,6 @@ function update_script() {
exit
fi
if [[ ! -f ~/.pulse ]]; then
msg_error "Old Installation Found! Please recreate the container due big changes in the software."
exit 1
fi
if check_for_gh_release "pulse" "rcourtman/Pulse"; then
SERVICE_PATH="/etc/systemd/system"
msg_info "Stopping Services"
@@ -43,19 +39,20 @@ function update_script() {
fi
fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "*-linux-amd64.tar.gz"
ln -sf /opt/pulse/bin/pulse /usr/local/bin/pulse
chown -R pulse:pulse /etc/pulse /opt/pulse
if [[ -f "$SERVICE_PATH"/pulse.service ]]; then
mv "$SERVICE_PATH"/pulse.service "$SERVICE_PATH"/pulse-backend.service
if [[ -f "$SERVICE_PATH"/pulse-backend.service ]]; then
mv "$SERVICE_PATH"/pulse-backend.service "$SERVICE_PATH"/pulse.service
fi
sed -i -e 's|pulse/pulse|pulse/bin/pulse|' \
-e 's/^Environment="API.*$//' "$SERVICE_PATH"/pulse-backend.service
-e 's/^Environment="API.*$//' "$SERVICE_PATH"/pulse.service
systemctl daemon-reload
if grep -q 'pulse-home:/bin/bash' /etc/passwd; then
usermod -s /usr/sbin/nologin pulse
fi
msg_info "Starting Services"
systemctl start pulse-backend
systemctl start pulse
msg_ok "Started Services"
msg_ok "Updated Successfully"
fi

View File

@@ -34,6 +34,7 @@ function update_script() {
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "recyclarr" "recyclarr/recyclarr" "prebuild" "latest" "/usr/local/bin" "recyclarr-linux-x64.tar.xz"
msg_info "Starting Service"
systemctl start recyclarr
msg_ok "Started Service"

View File

@@ -27,17 +27,22 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
NODE_VERSION="22" setup_nodejs
if check_for_gh_release "tududi" "chrisvel/tududi"; then
msg_info "Stopping Service"
systemctl stop tududi
msg_ok "Stopped Service"
msg_info "Remove and backup Files"
DB="$(sed -n '/^DB_FILE/s/[^=]*=//p' /opt/tududi/backend/.env)"
export DB_FILE="$DB"
cp /opt/tududi/backend/.env /opt/tududi.env
rm -rf /opt/tududi/backend/dist
msg_ok "Backup and removed Files"
fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "v0.80" "/opt/tududi"
fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "latest" "/opt/tududi"
msg_info "Updating ${APP}"
cd /opt/tududi
@@ -48,6 +53,10 @@ function update_script() {
mv ./public/locales ./backend/dist
mv ./public/favicon.* ./backend/dist
mv /opt/tududi.env /opt/tududi/.env
sed -i -e 's|/tududi$|/tududi/backend|' \
-e 's|npm run start|bash /opt/tududi/backend/cmd/start.sh|' \
/etc/systemd/system/tududi.service
systemctl daemon-reload
msg_ok "Updated $APP"
msg_info "Starting Service"

View File

@@ -28,6 +28,12 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! dpkg -s git >/dev/null 2>&1; then
msg_info "Installing git"
$STD apt-get update
$STD apt-get install -y git
msg_ok "Installed git"
fi
apt-get update
apt-get -y upgrade
if [[ -d /etc/wgdashboard ]]; then

View File

@@ -7666,11 +7666,14 @@
}
},
"node_modules/fdir": {
"version": "6.4.6",
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz",
"integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==",
"version": "6.5.0",
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz",
"integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12.0.0"
},
"peerDependencies": {
"picomatch": "^3 || ^4"
},
@@ -11432,9 +11435,9 @@
"license": "ISC"
},
"node_modules/picomatch": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
"dev": true,
"license": "MIT",
"engines": {
@@ -13392,14 +13395,14 @@
"license": "MIT"
},
"node_modules/tinyglobby": {
"version": "0.2.14",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz",
"integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==",
"version": "0.2.15",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz",
"integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"fdir": "^6.4.4",
"picomatch": "^4.0.2"
"fdir": "^6.5.0",
"picomatch": "^4.0.3"
},
"engines": {
"node": ">=12.0.0"
@@ -13922,19 +13925,19 @@
"license": "MIT"
},
"node_modules/vite": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/vite/-/vite-7.0.0.tgz",
"integrity": "sha512-ixXJB1YRgDIw2OszKQS9WxGHKwLdCsbQNkpJN171udl6szi/rIySHL6/Os3s2+oE4P/FLD4dxg4mD7Wust+u5g==",
"version": "7.1.5",
"resolved": "https://registry.npmjs.org/vite/-/vite-7.1.5.tgz",
"integrity": "sha512-4cKBO9wR75r0BeIWWWId9XK9Lj6La5X846Zw9dFfzMRw38IlTk2iCcUt6hsyiDRcPidc55ZParFYDXi0nXOeLQ==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"esbuild": "^0.25.0",
"fdir": "^6.4.6",
"picomatch": "^4.0.2",
"fdir": "^6.5.0",
"picomatch": "^4.0.3",
"postcss": "^8.5.6",
"rollup": "^4.40.0",
"tinyglobby": "^0.2.14"
"rollup": "^4.43.0",
"tinyglobby": "^0.2.15"
},
"bin": {
"vite": "bin/vite.js"

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-19",
"type": "addon",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://docs.netbird.io/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "addon",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://tailscale.com/kb/1017/install",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 3142,
"documentation": "https://www.unix-ag.uni-kl.de/~bloch/acng/html/index.html",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-01-20",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8090,
"documentation": "https://beszel.dev/guide/what-is-beszel",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-05-22",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://github.com/favonia/cloudflare-ddns/blob/main/README.markdown",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 4000,
"documentation": "https://dashy.to/docs",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": true,
"interface_port": 80,
"documentation": "https://github.com/dresden-elektronik/deconz-rest-plugin/wiki",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8112,
"documentation": "https://www.deluge-torrent.org/userguide/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8083,
"documentation": "https://fhem.de/#Documentation",

View File

@@ -7,7 +7,7 @@
],
"date_created": "2025-06-18",
"type": "addon",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8080,
"documentation": "https://github.com/gtsteffaniak/filebrowser/wiki/Getting-Started",

View File

@@ -7,7 +7,7 @@
],
"date_created": "2024-05-02",
"type": "addon",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8080,
"documentation": null,

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8581,
"documentation": "https://github.com/homebridge/homebridge/wiki",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": true,
"interface_port": 8090,
"documentation": "https://github.com/awawa-dev/HyperHDR/wiki",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8086,
"documentation": "https://docs.influxdata.com/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-07-29",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://doc.jeedom.com",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-12-26",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8080,
"documentation": "https://www.jenkins.io/doc/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 5299,
"documentation": "https://lazylibrarian.gitlab.io/lazylibrarian.gitlab.io/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-08-06",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 17170,
"documentation": "https://github.com/lldap/lldap/blob/main/README.md",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 3306,
"documentation": "https://github.com/community-scripts/ProxmoxVE/discussions/192",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-01-30",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8065,
"documentation": "https://docs.mattermost.com/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-18",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 27017,
"documentation": "https://www.mongodb.com/docs/manual/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://mosquitto.org/documentation/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-03-13",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 81,
"documentation": "https://github.com/ZoeyVid/NPMplus/blob/develop/README.md",
@@ -39,7 +39,7 @@
}
],
"default_credentials": {
"username": "root",
"username": "admin@example.org",
"password": null
},
"notes": [
@@ -52,7 +52,7 @@
"type": "info"
},
{
"text": "Application credentials: `cat /opt/.npm_pwd`",
"text": "Application credentials: `cat /opt/.npm_pwd` - if file not exist in LXC check docker logs for password with `docker logs npmplus`",
"type": "info"
}
]

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://docs.ntfy.sh/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://docs.openmediavault.org/en/stable/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8443,
"documentation": "https://www.openhab.org/docs/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://github.com/leiweibau/Pi.Alert/blob/main/README.md",
@@ -31,10 +31,5 @@
"username": null,
"password": null
},
"notes": [
{
"text": "WARNING: Installation sources scripts outside of Community Scripts repo. Please check the source before installing.",
"type": "warning"
}
]
"notes": []
}

View File

@@ -35,10 +35,6 @@
{
"text": "With Privileged/Unprivileged Hardware Acceleration Support",
"type": "info"
},
{
"text": "WARNING: Installation sources scripts outside of Community Scripts repo. Please check the source before installing.",
"type": "warning"
}
]
}

View File

@@ -1,52 +1,48 @@
{
"name": "Podman Home Assistant Container",
"slug": "podman-homeassistant",
"categories": [
16
],
"date_created": "2024-04-29",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8123,
"documentation": "https://www.home-assistant.io/docs/",
"website": "https://www.home-assistant.io/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/home-assistant.webp",
"config_path": "/var/lib/containers/storage/volumes/hass_config/_data",
"description": "A standalone Podman container-based installation of Home Assistant Core means that the Home Assistant Core software is installed inside a container managed by Podman, separate from the host operating system. This provides a flexible and scalable solution for running the software, as the container can be easily moved between host systems or isolated from other processes for security. Podman is a popular open-source tool for managing containers that is similar to Docker, but designed for use on Linux systems without a daemon.\r\n\r\n\ud83d\udec8 If the LXC is created Privileged, the script will automatically set up USB passthrough.",
"install_methods": [
{
"type": "default",
"script": "ct/podman-homeassistant.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 16,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
"name": "Podman Home Assistant Container",
"slug": "podman-homeassistant",
"categories": [
16
],
"date_created": "2024-04-29",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8123,
"documentation": "https://www.home-assistant.io/docs/",
"website": "https://www.home-assistant.io/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/home-assistant.webp",
"config_path": "/var/lib/containers/storage/volumes/hass_config/_data",
"description": "A standalone Podman container-based installation of Home Assistant Core means that the Home Assistant Core software is installed inside a container managed by Podman, separate from the host operating system. This provides a flexible and scalable solution for running the software, as the container can be easily moved between host systems or isolated from other processes for security. Podman is a popular open-source tool for managing containers that is similar to Docker, but designed for use on Linux systems without a daemon.\r\n\r\n\ud83d\udec8 If the LXC is created Privileged, the script will automatically set up USB passthrough.",
"install_methods": [
{
"type": "default",
"script": "ct/podman-homeassistant.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 16,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "If the LXC is created Privileged, the script will automatically set up USB passthrough.",
"type": "warning"
},
"notes": [
{
"text": "If the LXC is created Privileged, the script will automatically set up USB passthrough.",
"type": "warning"
},
{
"text": "config path: `/var/lib/containers/storage/volumes/hass_config/_data`",
"type": "info"
},
{
"text": "Options to Install Portainer or Portainer Agent",
"type": "warning"
},
{
"text": "WARNING: Installation sources scripts outside of Community Scripts repo. Please check the source before installing.",
"type": "warning"
}
]
{
"text": "config path: `/var/lib/containers/storage/volumes/hass_config/_data`",
"type": "info"
},
{
"text": "Options to Install Portainer or Portainer Agent",
"type": "warning"
}
]
}

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-02-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 5232,
"documentation": "https://radicale.org/master.html#documentation-1",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://oss.oetiker.ch/smokeping/doc/index.en.html",

View File

@@ -2,7 +2,7 @@
"name": "Swizzin",
"slug": "swizzin",
"categories": [
15
13
],
"date_created": "2025-08-19",
"type": "ct",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8384,
"documentation": "https://docs.syncthing.net/",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8181,
"documentation": "https://github.com/Tautulli/Tautulli/wiki",

View File

@@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8443,
"documentation": null,

View File

@@ -1,4 +1,104 @@
[
{
"name": "authelia/authelia",
"version": "v4.39.9",
"date": "2025-09-09T22:48:24Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2",
"date": "2025-06-26T22:08:00Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.527",
"date": "2025-09-09T19:58:28Z"
},
{
"name": "kyantech/Palmr",
"version": "v3.2.1-beta",
"date": "2025-09-09T19:47:13Z"
},
{
"name": "Part-DB/Part-DB-server",
"version": "v2.1.2",
"date": "2025-09-09T19:34:11Z"
},
{
"name": "hargata/lubelog",
"version": "v1.5.1",
"date": "2025-09-09T16:56:49Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.27",
"date": "2025-09-09T14:34:27Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.81",
"date": "2025-09-09T14:06:41Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.3.2",
"date": "2025-08-19T04:08:36Z"
},
{
"name": "element-hq/synapse",
"version": "v1.138.0",
"date": "2025-09-09T11:25:50Z"
},
{
"name": "traefik/traefik",
"version": "v3.5.2",
"date": "2025-09-09T10:28:12Z"
},
{
"name": "docker/compose",
"version": "v2.39.3",
"date": "2025-09-09T08:27:27Z"
},
{
"name": "OctoPrint/OctoPrint",
"version": "1.11.3",
"date": "2025-09-09T08:03:31Z"
},
{
"name": "readeck/readeck",
"version": "0.20.2",
"date": "2025-09-09T06:09:25Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.2444",
"date": "2025-09-09T06:00:01Z"
},
{
"name": "TandoorRecipes/recipes",
"version": "2.1.2",
"date": "2025-09-09T05:55:58Z"
},
{
"name": "gotson/komga",
"version": "1.23.4",
"date": "2025-09-09T02:47:05Z"
},
{
"name": "Tautulli/Tautulli",
"version": "v2.16.0",
"date": "2025-09-09T01:05:45Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-09-09T00:27:11Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v3.6.2",
"date": "2025-07-17T12:08:03Z"
},
{
"name": "YunoHost/yunohost",
"version": "debian/12.1.20",
@@ -24,11 +124,21 @@
"version": "v5.40.2",
"date": "2025-09-08T20:59:44Z"
},
{
"name": "keycloak/keycloak",
"version": "26.0.15",
"date": "2025-08-27T12:12:03Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.2.1",
"date": "2025-09-08T19:31:07Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-OIDC",
"date": "2025-09-08T18:08:15Z"
},
{
"name": "mattermost/mattermost",
"version": "server/public/v0.1.18",
@@ -99,36 +209,11 @@
"version": "v25.3",
"date": "2025-09-01T09:47:06Z"
},
{
"name": "TandoorRecipes/recipes",
"version": "2.1.1",
"date": "2025-09-08T06:39:30Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.3.2",
"date": "2025-08-19T04:08:36Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.2441",
"date": "2025-09-08T06:01:57Z"
},
{
"name": "webmin/webmin",
"version": "2.501",
"date": "2025-09-08T04:50:25Z"
},
{
"name": "jeedom/core",
"version": "4.4.19",
"date": "2025-09-08T00:27:05Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v3.6.2",
"date": "2025-07-17T12:08:03Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.18.4",
@@ -139,21 +224,11 @@
"version": "v1.19.8",
"date": "2025-09-07T23:36:42Z"
},
{
"name": "Part-DB/Part-DB-server",
"version": "v2.1.1",
"date": "2025-09-07T21:59:53Z"
},
{
"name": "minio/minio",
"version": "RELEASE.2025-09-07T16-13-09Z",
"date": "2025-09-07T18:53:04Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2",
"date": "2025-06-26T22:08:00Z"
},
{
"name": "karakeep-app/karakeep",
"version": "sdk/v0.27.0",
@@ -166,8 +241,8 @@
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-09-07T12:25:06Z"
"version": "v4.4.0",
"date": "2025-09-02T19:26:18Z"
},
{
"name": "semaphoreui/semaphore",
@@ -244,11 +319,6 @@
"version": "v0.12.7",
"date": "2025-09-05T18:11:36Z"
},
{
"name": "keycloak/keycloak",
"version": "26.0.15",
"date": "2025-08-27T12:12:03Z"
},
{
"name": "Brandawg93/PeaNUT",
"version": "v5.14.2",
@@ -259,11 +329,6 @@
"version": "2025.9.0",
"date": "2025-09-05T14:21:34Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.80",
"date": "2025-07-24T14:12:39Z"
},
{
"name": "home-assistant/core",
"version": "2025.9.1",
@@ -394,11 +459,6 @@
"version": "346",
"date": "2025-09-03T09:13:05Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.526",
"date": "2025-09-02T18:44:42Z"
},
{
"name": "apache/cassandra",
"version": "cassandra-4.1.10",
@@ -414,11 +474,6 @@
"version": "v4.4.0",
"date": "2025-09-02T17:04:25Z"
},
{
"name": "element-hq/synapse",
"version": "v1.137.0",
"date": "2025-08-26T09:51:47Z"
},
{
"name": "rabbitmq/rabbitmq-server",
"version": "v4.1.4",
@@ -439,11 +494,6 @@
"version": "v25.5.0",
"date": "2025-09-02T01:00:11Z"
},
{
"name": "authelia/authelia",
"version": "v4.39.8",
"date": "2025-09-02T00:44:45Z"
},
{
"name": "postgres/postgres",
"version": "REL_18_RC1",
@@ -474,11 +524,6 @@
"version": "rrc_steady_12.2.0-17245430286.patch1",
"date": "2025-09-01T14:19:14Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-issue-description",
"date": "2025-09-01T12:21:58Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.3.1",
@@ -489,11 +534,6 @@
"version": "v1.7.0",
"date": "2025-09-01T10:10:34Z"
},
{
"name": "readeck/readeck",
"version": "0.20.1",
"date": "2025-09-01T07:35:48Z"
},
{
"name": "LibreTranslate/LibreTranslate",
"version": "v1.7.3",
@@ -549,21 +589,11 @@
"version": "v3.4.1",
"date": "2025-08-28T13:56:00Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.26",
"date": "2025-08-28T10:40:30Z"
},
{
"name": "garethgeorge/backrest",
"version": "v1.9.2",
"date": "2025-08-28T07:06:14Z"
},
{
"name": "gotson/komga",
"version": "1.23.3",
"date": "2025-08-28T02:50:06Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.10.0",
@@ -579,11 +609,6 @@
"version": "v11.2.1",
"date": "2025-08-27T15:19:02Z"
},
{
"name": "traefik/traefik",
"version": "v3.5.1",
"date": "2025-08-27T09:21:19Z"
},
{
"name": "documenso/documenso",
"version": "v1.12.2-rc.6",
@@ -684,16 +709,6 @@
"version": "v6.9.1",
"date": "2025-08-22T04:04:12Z"
},
{
"name": "hargata/lubelog",
"version": "v1.5.0",
"date": "2025-08-21T17:33:22Z"
},
{
"name": "kyantech/Palmr",
"version": "v3.2.0-beta",
"date": "2025-08-21T16:51:45Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.8.1",
@@ -829,11 +844,6 @@
"version": "2.38.0",
"date": "2025-08-08T21:47:19Z"
},
{
"name": "docker/compose",
"version": "v2.39.2",
"date": "2025-08-08T16:06:06Z"
},
{
"name": "apache/tika",
"version": "3.2.2",
@@ -874,11 +884,6 @@
"version": "v2.0.116",
"date": "2025-08-05T04:45:21Z"
},
{
"name": "Tautulli/Tautulli",
"version": "v2.15.3",
"date": "2025-08-03T17:27:16Z"
},
{
"name": "linuxserver/Heimdall",
"version": "v2.7.4",
@@ -1119,11 +1124,6 @@
"version": "v2.0.0.4645",
"date": "2017-03-07T18:56:06Z"
},
{
"name": "OctoPrint/OctoPrint",
"version": "1.11.2",
"date": "2025-06-10T11:07:14Z"
},
{
"name": "glanceapp/glance",
"version": "v0.8.4",

View File

@@ -2,6 +2,7 @@ import type { VariantProps } from "class-variance-authority";
import { cva } from "class-variance-authority";
import { StarIcon } from "lucide-react";
import Link from "next/link";
import type { ButtonProps as ButtonPrimitiveProps } from "@/components/animate-ui/primitives/buttons/button";
import type { GithubStarsProps } from "@/components/animate-ui/primitives/animate/github-stars";
@@ -71,30 +72,37 @@ function GitHubStarsButton({
...props
}: GitHubStarsButtonProps) {
return (
<GithubStars
asChild
username={username}
repo={repo}
value={value}
delay={delay}
inView={inView}
inViewMargin={inViewMargin}
inViewOnce={inViewOnce}
<Link
target="_blank"
rel="noopener noreferrer"
data-umami-event="github-stars"
href={`https://github.com/${username}/${repo}`}
>
<ButtonPrimitive className={cn(buttonVariants({ variant, size, className }))} {...props}>
<GithubStarsLogo />
<GithubStarsNumber />
<GithubStarsParticles className="text-yellow-500">
<GithubStarsIcon
icon={StarIcon}
data-variant={variant}
className={cn(buttonStarVariants({ variant }))}
activeClassName="text-yellow-500"
size={18}
/>
</GithubStarsParticles>
</ButtonPrimitive>
</GithubStars>
<GithubStars
asChild
username={username}
repo={repo}
value={value}
delay={delay}
inView={inView}
inViewMargin={inViewMargin}
inViewOnce={inViewOnce}
>
<ButtonPrimitive className={cn(buttonVariants({ variant, size, className }))} {...props}>
<GithubStarsLogo />
<GithubStarsNumber />
<GithubStarsParticles className="text-yellow-500">
<GithubStarsIcon
icon={StarIcon}
data-variant={variant}
className={cn(buttonStarVariants({ variant }))}
activeClassName="text-yellow-500"
size={18}
/>
</GithubStarsParticles>
</ButtonPrimitive>
</GithubStars>
</Link>
);
}

View File

@@ -46,7 +46,7 @@ $STD npm run build --configuration=production
msg_ok "Built Frontend"
msg_info "Creating Environment"
mkdir -p /opt/booklore_storage{/data,/books}
mkdir -p /opt/booklore_storage{/data,/books,/bookdrop}
cat <<EOF >/opt/booklore_storage/.env
DATABASE_URL=jdbc:mariadb://localhost:3306/$DB_NAME
DATABASE_USERNAME=$DB_USER
@@ -55,6 +55,7 @@ BOOKLORE_PORT=6060
BOOKLORE_DATA_PATH=/opt/booklore_storage/data
BOOKLORE_BOOKS_PATH=/opt/booklore_storage/books
BOOKLORE_BOOKDROP_PATH=/opt/booklore_storage/bookdrop
EOF
msg_ok "Created Environment"

View File

@@ -19,7 +19,17 @@ $STD apt-get install -y lsb-release
msg_ok "Installed Dependencies"
RELEASE=$(curl -fsSL https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
msg_info "Installing BunkerWeb v${RELEASE} (Patience)"
msg_warn "WARNING: This script will run an external installer from a third-party source (install-bunkerweb.sh)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://github.com/bunkerity/bunkerweb/raw/v${RELEASE}/misc/install-bunkerweb.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing BunkerWeb (Patience)"
curl -fsSL -o install-bunkerweb.sh https://github.com/bunkerity/bunkerweb/raw/v${RELEASE}/misc/install-bunkerweb.sh
chmod +x install-bunkerweb.sh
$STD ./install-bunkerweb.sh --yes

View File

@@ -13,6 +13,16 @@ setting_up_container
network_check
update_os
msg_warn "WARNING: This script will run an external installer from a third-party source (https://casaos.zimaspace.com/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://get.casaos.io/"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing CasaOS (Patience)"
DOCKER_CONFIG_PATH='/etc/docker/daemon.json'
mkdir -p $(dirname $DOCKER_CONFIG_PATH)

View File

@@ -18,6 +18,17 @@ $STD apt-get install -y chromium
$STD apt-get install -y xvfb
msg_ok "Installed Dependencies"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://getchannels.com)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://getchannels.com/dvr/setup.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
if [[ "$CTTYPE" == "0" ]]; then
msg_info "Setting Up Hardware Acceleration"
$STD apt-get -y install \

View File

@@ -17,6 +17,17 @@ msg_info "Installing Dependencies"
$STD apt-get install -y ca-certificates
msg_ok "Installed Dependencies"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://iobroker.net/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://iobroker.net/install.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
NODE_VERSION="22" setup_nodejs
msg_info "Installing ioBroker (Patience)"

View File

@@ -19,6 +19,17 @@ $STD apt-get install -y \
git
msg_ok "Dependencies installed"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://github.com/jeedom/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://raw.githubusercontent.com/jeedom/core/master/install/install.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
DEFAULT_BRANCH="master"
REPO_URL="https://github.com/jeedom/core.git"

View File

@@ -13,20 +13,32 @@ setting_up_container
network_check
update_os
msg_info "Installing Kasm Workspaces"
KASM_VERSION=$(curl -fsSL 'https://www.kasmweb.com/downloads' | grep -o 'https://kasm-static-content.s3.amazonaws.com/kasm_release_[^"]*\.tar\.gz' | head -n 1 | sed -E 's/.*release_(.*)\.tar\.gz/\1/')
msg_warn "WARNING: This script will run an external installer from a third-party source (https://www.kasmweb.com/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ install.sh inside tar.gz https://kasm-static-content.s3.amazonaws.com/kasm_release_${KASM_VERSION}.tar.gz"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing Kasm Workspaces"
curl -fsSL -o "/opt/kasm_release_${KASM_VERSION}.tar.gz" "https://kasm-static-content.s3.amazonaws.com/kasm_release_${KASM_VERSION}.tar.gz"
cd /opt
tar -xf "kasm_release_${KASM_VERSION}.tar.gz"
chmod +x /opt/kasm_release/install.sh
printf 'y\ny\ny\n4\n' | bash /opt/kasm_release/install.sh > ~/kasm-install.output 2>&1
printf 'y\ny\ny\n4\n' | bash /opt/kasm_release/install.sh >~/kasm-install.output 2>&1
awk '
/^Kasm UI Login Credentials$/ {capture=1}
capture {print}
/^Service Registration Token$/ {in_token=1}
in_token && /^-+$/ {dash_count++}
in_token && dash_count==2 {exit}
' ~/kasm-install.output > ~/kasm.creds
' ~/kasm-install.output >~/kasm.creds
msg_ok "Installed Kasm Workspaces"
motd_ssh

View File

@@ -13,6 +13,17 @@ setting_up_container
network_check
update_os
msg_warn "WARNING: This script will run an external installer from a third-party source (https://mattermost.com/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://deb.packages.mattermost.com/repo-setup.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL"

View File

@@ -3,7 +3,7 @@
# Copyright (c) 2021-2025 tteck
# Author: tteck (tteckster)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.turnkeylinux.org/nextcloud
# Source: https://nextcloudpi.com/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
@@ -13,8 +13,19 @@ setting_up_container
network_check
update_os
msg_warn "WARNING: This script will run an external installer from a third-party source (https://nextcloudpi.com/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://raw.githubusercontent.com/nextcloud/nextcloudpi/master/install.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing NextCloudPi (Patience)"
bash <(curl -fsSL https://raw.githubusercontent.com/nextcloud/nextcloudpi/master/install.sh) >/dev/null 2>&1
$STD bash <(curl -fsSL https://raw.githubusercontent.com/nextcloud/nextcloudpi/master/install.sh)
msg_ok "Installed NextCloudPi"
motd_ssh

View File

@@ -89,19 +89,36 @@ customize
msg_info "Retrieving Default Login (Patience)"
PASSWORD_FOUND=0
for i in {1..60}; do
PASSWORD_LINE=$(docker logs "$CONTAINER_ID" 2>&1 | awk '/Creating a new user:/ { print; exit }')
if [[ -n "$PASSWORD_LINE" ]]; then
PASSWORD=$(echo "$PASSWORD_LINE" | awk -F 'password: ' '{print $2}')
echo -e "username: admin@example.org\npassword: $PASSWORD" >/opt/.npm_pwd
PASSWORD_LINE=$(
{ awk '/Creating a new user:/{print; exit}' < <(docker logs "$CONTAINER_ID" 2>&1); } || true
)
if [[ -n "${PASSWORD_LINE:-}" ]]; then
PASSWORD="${PASSWORD_LINE#*password: }"
printf 'username: admin@example.org\npassword: %s\n' "$PASSWORD" >/opt/.npm_pwd
msg_ok "Saved default login to /opt/.npm_pwd"
PASSWORD_FOUND=1
break
fi
sleep 2
done
if [[ $PASSWORD_FOUND -eq 0 ]]; then
PASSWORD_LINE=$(
timeout 30s bash -c '
docker logs -f --since=0s --tail=0 "$1" 2>&1 | awk "/Creating a new user:/{print; exit}"
' _ "$CONTAINER_ID" || true
)
if [[ -n "${PASSWORD_LINE:-}" ]]; then
PASSWORD="${PASSWORD_LINE#*password: }"
printf 'username: admin@example.org\npassword: %s\n' "$PASSWORD" >/opt/.npm_pwd
msg_ok "Saved default login to /opt/.npm_pwd (live)"
PASSWORD_FOUND=1
fi
fi
if [[ $PASSWORD_FOUND -eq 0 ]]; then
msg_error "Could not retrieve default login after 60 seconds."
msg_error "Could not retrieve default login after 120s."
echo -e "\nYou can manually check the container logs with:\n docker logs $CONTAINER_ID | grep 'Creating a new user:'\n"
fi

View File

@@ -13,6 +13,17 @@ setting_up_container
network_check
update_os
msg_warn "WARNING: This script will run an external installer from a third-party source (https://pi-hole.net/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://install.pi-hole.net"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing Dependencies"
$STD apt-get install -y ufw
msg_ok "Installed Dependencies"

View File

@@ -30,11 +30,12 @@ fi
mkdir -p /etc/pulse
fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "*-linux-amd64.tar.gz"
ln -sf /opt/pulse/bin/pulse /usr/local/bin/pulse
chown -R pulse:pulse /etc/pulse /opt/pulse
msg_ok "Installed Pulse"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/pulse-backend.service
cat <<EOF >/etc/systemd/system/pulse.service
[Unit]
Description=Pulse Monitoring Server
After=network.target
@@ -55,7 +56,7 @@ Environment="PULSE_DATA_DIR=/etc/pulse"
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now pulse-backend
systemctl enable -q --now pulse
msg_ok "Created Service"
motd_ssh

View File

@@ -21,7 +21,7 @@ fetch_and_deploy_gh_release "recyclarr" "recyclarr/recyclarr" "prebuild" "latest
msg_info "Configuring Recyclarr"
mkdir -p /root/.config/recyclarr
recyclarr config create
$STD recyclarr config create
msg_ok "Configured Recyclarr"
motd_ssh

View File

@@ -13,6 +13,17 @@ setting_up_container
network_check
update_os
msg_warn "WARNING: This script will run an external installer from a third-party source (https://runtipi.io/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://raw.githubusercontent.com/runtipi/runtipi/master/scripts/install.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing Runtipi (Patience)"
DOCKER_CONFIG_PATH='/etc/docker/daemon.json'
mkdir -p "$(dirname "$DOCKER_CONFIG_PATH")"

View File

@@ -19,8 +19,8 @@ $STD apt-get install -y \
yq
msg_ok "Installed Dependencies"
NODE_VERSION="20" setup_nodejs
fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "v0.80" "/opt/tududi"
NODE_VERSION="22" setup_nodejs
fetch_and_deploy_gh_release "tududi" "chrisvel/tududi" "tarball" "latest" "/opt/tududi"
msg_info "Configuring Tududi"
cd /opt/tududi
@@ -37,15 +37,16 @@ DB_LOCATION="/opt/tududi-db"
UPLOAD_DIR="/opt/tududi-uploads"
mkdir -p {"$DB_LOCATION","$UPLOAD_DIR"}
SECRET="$(openssl rand -hex 64)"
sed -e 's/^GOOGLE/# &/' \
-e '/TUDUDI_SESSION/s/^# //' \
-e '/NODE_ENV/s/^# //' \
-e "s/your_session_secret_here/$SECRET/" \
-e 's/development/production/' \
-e "\$a\DB_FILE=$DB_LOCATION/production.sqlite3" \
-e "\$a\TUDUDI_UPLOAD_PATH=$UPLOAD_DIR" \
/opt/tududi/backend/.env.example >/opt/tududi/backend/.env
export DB_FILE="$DB_LOCATION/production.sqlite3"
cat <<EOF >/opt/tududi/backend/.env
TUDUDI_SESSION_SECRET=${SECRET}
TUDUDI_ALLOWED_ORIGINS=<your tududi IP or FQDN>
NODE_ENV=production
DB_FILE=${DB_LOCATION}/production.sqlite3
TUDUDI_UPLOAD_PATH=${UPLOAD_DIR}
DISABLE_TELEGRAM=true
DIABLE_SCHEDULER=false
EOF
export DB_FILE="${DB_LOCATION}/production.sqlite3"
$STD npm run db:init
msg_ok "Created env and database"
@@ -57,9 +58,9 @@ After=network.target
[Service]
Type=simple
WorkingDirectory=/opt/tududi
WorkingDirectory=/opt/tududi/backend
EnvironmentFile=/opt/tududi/backend/.env
ExecStart=/usr/bin/npm run start
ExecStart=/usr/bin/bash /opt/tududi/backend/cmd/start.sh
[Install]
WantedBy=multi-user.target

View File

@@ -13,9 +13,18 @@ setting_up_container
network_check
update_os
msg_info "Fetching Latest Wazuh Version"
RELEASE=$(curl -fsSL https://api.github.com/repos/wazuh/wazuh/releases/latest | grep '"tag_name"' | awk -F '"' '{print substr($4, 2, length($2)-4)}')
msg_ok "Latest Wazuh Version: $RELEASE"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://wazuh.com/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://packages.wazuh.com/$RELEASE/wazuh-install.sh "
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Setup Wazuh"
curl -fsSL https://packages.wazuh.com/$RELEASE/wazuh-install.sh -o wazuh-install.sh

View File

@@ -13,6 +13,10 @@ setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y git
msg_ok "Installed Dependencies"
msg_info "Installing WireGuard"
$STD apt-get install -y wireguard wireguard-tools net-tools iptables
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confnew" install -y iptables-persistent &>/dev/null
@@ -21,7 +25,7 @@ msg_ok "Installed WireGuard"
read -r -p "${TAB3}Would you like to add WGDashboard? <y/N> " prompt
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
fetch_and_deploy_gh_release "wgdashboard" "donaldzou/WGDashboard" "tarball" "latest" "/etc/wgdashboard"
git clone -q https://github.com/donaldzou/WGDashboard.git /etc/wgdashboard
msg_info "Installing WGDashboard"
cd /etc/wgdashboard/src

View File

@@ -14,11 +14,23 @@ network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y apt-transport-https
$STD apt-get install -y lsb-release
$STD apt-get install -y ca-certificates
$STD apt-get install -y \
apt-transport-https \
lsb-release \
ca-certificates
msg_ok "Installed Dependencies"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://yunohost.org/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://install.yunohost.org"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing YunoHost (Patience)"
touch /etc/.pve-ignore.resolv.conf
curl -fsSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg