Compare commits

..

39 Commits

Author SHA1 Message Date
GitHub Actions[bot]
41ea6bc76a Update versions.json 2025-11-20 12:07:20 +00:00
community-scripts-pr-app[bot]
17bb0af069 Update CHANGELOG.md (#9304)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-20 12:02:56 +00:00
Tobias
3850960eca kasm: add: update (#9253) 2025-11-20 13:02:30 +01:00
community-scripts-pr-app[bot]
323ca24625 Update CHANGELOG.md (#9303)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-20 12:02:06 +00:00
CanbiZ
6fc20ae5c2 Omada - AVX-only support (#9295) 2025-11-20 13:01:41 +01:00
community-scripts-pr-app[bot]
318574fcd1 Update CHANGELOG.md (#9302)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-20 12:01:26 +00:00
CanbiZ
fe3dab0ee1 tools/pve: expand PVE support to 9.0–9.1 (post-install & netdata) (#9298) 2025-11-20 13:01:01 +01:00
community-scripts-pr-app[bot]
b314ba4bf1 Update CHANGELOG.md (#9300)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-20 11:43:18 +00:00
CanbiZ
0153f4bd40 core: change 'uv cache clear' to 'uv cache clean' (#9299) 2025-11-20 12:42:57 +01:00
CanbiZ
3b7de3da6b searxng updatable -> false 2025-11-20 11:09:58 +01:00
dependabot[bot]
7ea03832ec build(deps): bump golang.org/x/crypto (#9292)
Bumps the go_modules group with 1 update in the /api directory: [golang.org/x/crypto](https://github.com/golang/crypto).


Updates `golang.org/x/crypto` from 0.35.0 to 0.45.0
- [Commits](https://github.com/golang/crypto/compare/v0.35.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: indirect
  dependency-group: go_modules
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-20 09:39:07 +01:00
community-scripts-pr-app[bot]
e849fd0ffe Update CHANGELOG.md (#9291)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-20 00:13:22 +00:00
community-scripts-pr-app[bot]
a11bb982e4 Update versions.json (#9290)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-20 01:12:57 +01:00
community-scripts-pr-app[bot]
2ff85e7aeb Update CHANGELOG.md (#9287)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 18:13:44 +00:00
Chris
2d5c3f9f6d HotFix: Fix NetVisor env var (#9286)
- It was incorrect in the docs
2025-11-19 19:13:16 +01:00
community-scripts-pr-app[bot]
ff00e90746 Update CHANGELOG.md (#9283)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 16:36:54 +00:00
CanbiZ
acb1c4efbd PVE 9.1 version support (#9280) 2025-11-19 17:36:29 +01:00
community-scripts-pr-app[bot]
26444515d4 Update CHANGELOG.md (#9279)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 15:28:12 +00:00
CanbiZ
5b39f2931e force disable IPv6 if IPV6_METHOD = none (#9277)
* Enhance IPv6 disabling logic in install script

Updated verb_ip6 to check both IPV6_METHOD and DISABLEIPV6 variables. Added disabling for all, default, and loopback interfaces, improved messaging, and redirected sysctl output to /dev/null for cleaner logs.

* Improve IPv6 disabling logic in install scripts

Updated both alpine-install.func and install.func to enhance IPv6 disabling by checking IPV6_METHOD and adding more sysctl settings. Also improved messaging and removed suppression of sysctl output in install.func.
2025-11-19 16:27:42 +01:00
community-scripts-pr-app[bot]
73490605c5 Update CHANGELOG.md (#9275)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 13:46:48 +00:00
Chris
abc0f261fa Jotty: reduce RAM requirement (#9272) 2025-11-19 14:46:23 +01:00
Sven Schneider
18f474c4e7 fix: Update Passbolt credential path in JSON file (#9267) 2025-11-19 14:46:01 +01:00
community-scripts-pr-app[bot]
c7342399f3 Update versions.json (#9271)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 13:06:11 +01:00
community-scripts-pr-app[bot]
988ad7e624 Update CHANGELOG.md (#9266)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 09:39:52 +01:00
Chris
e3164f6ea5 NetVisor: v0.10.0 fixes (#9255) 2025-11-19 09:36:55 +01:00
community-scripts-pr-app[bot]
783db6630a Update CHANGELOG.md (#9265)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 08:36:46 +00:00
Slaviša Arežina
e5db2c6eb9 Nginx Proxy Manager: Pin version to v2.13.4 (#9259)
* Update Nginx Proxy Manager release version

* Update nginxproxymanager.sh

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-19 09:36:20 +01:00
community-scripts-pr-app[bot]
29d0d98fa2 Update CHANGELOG.md (#9262)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 00:13:36 +00:00
community-scripts-pr-app[bot]
f3af0f6c34 Update versions.json (#9261)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-19 01:13:13 +01:00
CanbiZ
ae8c3002ab add clean_install for npm 2025-11-18 14:23:03 +01:00
CanbiZ
868218a5d6 huntarr: var_version from 13 to 12 2025-11-18 13:27:50 +01:00
CanbiZ
a065d1fe8f huntarr: var_version from 13 to 12 2025-11-18 13:27:40 +01:00
community-scripts-pr-app[bot]
71985f47b4 Update versions.json (#9250)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-18 13:05:51 +01:00
community-scripts-pr-app[bot]
cd3ceeb245 Update CHANGELOG.md (#9248)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-18 10:58:34 +00:00
community-scripts-pr-app[bot]
d702dcf0bb Update CHANGELOG.md (#9247)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-18 10:58:14 +00:00
CanbiZ
3279bc48b9 Huntarr: Downgrade Python to 3.12 (#9246) 2025-11-18 11:58:08 +01:00
CanbiZ
a900ebdce5 kasm: fix release fetching (#9244)
* kasm: fix release fetching

* Update kasm-install.sh
2025-11-18 11:57:49 +01:00
community-scripts-pr-app[bot]
06316c2bde Update CHANGELOG.md (#9245)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-18 10:18:17 +00:00
Michel Roegl-Brunner
14c3bac046 librenms: Fix password to short (#9236)
* librenms-install.sh aktualisieren

* librenms.json aktualisieren

* Update credentials and add generation

* Update credentials and add generation

* Refactor LibreNMS credentials output format

Updated the script to change how LibreNMS credentials are written to the creds file, adding a header for clarity.

* remove empty line

* remove space

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-11-18 11:17:52 +01:00
31 changed files with 489 additions and 373 deletions

View File

@@ -10,6 +10,53 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-11-20
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- core: change 'uv cache clear' to 'uv cache clean' [@MickLesk](https://github.com/MickLesk) ([#9299](https://github.com/community-scripts/ProxmoxVE/pull/9299))
- #### ✨ New Features
- kasm: add: update [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9253](https://github.com/community-scripts/ProxmoxVE/pull/9253))
- tools/pve: expand PVE support to 9.09.1 (post-install & netdata) [@MickLesk](https://github.com/MickLesk) ([#9298](https://github.com/community-scripts/ProxmoxVE/pull/9298))
- #### 💥 Breaking Changes
- Omada - AVX-only support [@MickLesk](https://github.com/MickLesk) ([#9295](https://github.com/community-scripts/ProxmoxVE/pull/9295))
## 2025-11-19
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- HotFix: Fix NetVisor env var [@vhsdream](https://github.com/vhsdream) ([#9286](https://github.com/community-scripts/ProxmoxVE/pull/9286))
- Jotty: reduce RAM requirement [@vhsdream](https://github.com/vhsdream) ([#9272](https://github.com/community-scripts/ProxmoxVE/pull/9272))
- Nginx Proxy Manager: Pin version to v2.13.4 [@tremor021](https://github.com/tremor021) ([#9259](https://github.com/community-scripts/ProxmoxVE/pull/9259))
- #### ✨ New Features
- PVE 9.1 version support [@MickLesk](https://github.com/MickLesk) ([#9280](https://github.com/community-scripts/ProxmoxVE/pull/9280))
- force disable IPv6 if IPV6_METHOD = none [@MickLesk](https://github.com/MickLesk) ([#9277](https://github.com/community-scripts/ProxmoxVE/pull/9277))
- #### 💥 Breaking Changes
- NetVisor: v0.10.0 fixes [@vhsdream](https://github.com/vhsdream) ([#9255](https://github.com/community-scripts/ProxmoxVE/pull/9255))
## 2025-11-18
### 🚀 Updated Scripts
- librenms: Fix password to short [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#9236](https://github.com/community-scripts/ProxmoxVE/pull/9236))
- #### 🐞 Bug Fixes
- Huntarr: Downgrade Python to 3.12 [@MickLesk](https://github.com/MickLesk) ([#9246](https://github.com/community-scripts/ProxmoxVE/pull/9246))
- kasm: fix release fetching [@MickLesk](https://github.com/MickLesk) ([#9244](https://github.com/community-scripts/ProxmoxVE/pull/9244))
## 2025-11-17
### 🆕 New Scripts

View File

@@ -1,6 +1,6 @@
module proxmox-api
go 1.23.2
go 1.24.0
require (
github.com/gorilla/mux v1.8.1
@@ -17,7 +17,7 @@ require (
github.com/xdg-go/scram v1.1.2 // indirect
github.com/xdg-go/stringprep v1.0.4 // indirect
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
golang.org/x/crypto v0.35.0 // indirect
golang.org/x/sync v0.11.0 // indirect
golang.org/x/text v0.22.0 // indirect
golang.org/x/crypto v0.45.0 // indirect
golang.org/x/sync v0.18.0 // indirect
golang.org/x/text v0.31.0 // indirect
)

View File

@@ -27,16 +27,16 @@ go.mongodb.org/mongo-driver v1.17.2 h1:gvZyk8352qSfzyZ2UMWcpDpMSGEr1eqE4T793Sqyh
go.mongodb.org/mongo-driver v1.17.2/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs=
golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ=
golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q=
golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=
golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -48,8 +48,8 @@ golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -29,7 +29,7 @@ function update_script() {
exit
fi
setup_uv
PYTHON_VERSION="3.12" setup_uv
if check_for_gh_release "huntarr" "plexguide/Huntarr.io"; then
msg_info "Stopping Service"

View File

@@ -8,7 +8,7 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m
APP="jotty"
var_tags="${var_tags:-tasks;notes}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_ram="${var_ram:-3072}"
var_disk="${var_disk:-6}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"

View File

@@ -25,14 +25,51 @@ function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /var ]]; then
if [[ ! -d /opt/kasm/current ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating LXC"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated LXC"
msg_info "Checking for new version"
CURRENT_VERSION=$(readlink -f /opt/kasm/current | awk -F'/' '{print $4}')
KASM_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' | head -n 1)
if [[ -z "$KASM_URL" ]]; then
msg_error "Unable to detect latest Kasm release URL."
exit 1
fi
KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
msg_info "Checked for new version"
msg_info "Removing outdated docker-compose plugin"
[ -f ~/.docker/cli-plugins/docker-compose ] && rm -rf ~/.docker/cli-plugins/docker-compose
msg_ok "Removed outdated docker-compose plugin"
if [[ -z "$CURRENT_VERSION" ]] || [[ "$KASM_VERSION" != "$CURRENT_VERSION" ]]; then
msg_info "Updating Kasm"
cd /tmp
msg_warn "WARNING: This script will run an external installer from a third-party source (https://www.kasmweb.com/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ upgrade.sh inside tar.gz $KASM_URL"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
curl -fsSL -o "/tmp/kasm_release_${KASM_VERSION}.tar.gz" "$KASM_URL"
tar -xf "kasm_release_${KASM_VERSION}.tar.gz"
chmod +x /tmp/kasm_release/install.sh
rm -f /tmp/kasm_release_${KASM_VERSION}.tar.gz
bash /tmp/kasm_release/upgrade.sh --proxy-port 443
rm -rf /tmp/kasm_release
msg_ok "Updated Successfully"
else
msg_ok "No update required. Kasm is already at v${KASM_VERSION}"
fi
exit
}

View File

@@ -35,7 +35,7 @@ function update_script() {
msg_ok "Stopped services"
msg_info "Backing up configurations"
cp /opt/netvisor/.env /opt/netvisor.env
cp /opt/netvisor/.env /opt/netvisor.env.bak
msg_ok "Backed up configurations"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "netvisor" "mayanayza/netvisor" "tarball" "latest" "/opt/netvisor"
@@ -49,10 +49,16 @@ function update_script() {
TOOLCHAIN="$(grep "channel" /opt/netvisor/backend/rust-toolchain.toml | awk -F\" '{print $2}')"
RUST_TOOLCHAIN=$TOOLCHAIN setup_rust
mv /opt/netvisor.env /opt/netvisor/.env
cp /opt/netvisor.env.bak /opt/netvisor/.env
LOCAL_IP="$(hostname -I | awk '{print $1}')"
if ! grep -q "PUBLIC_URL"; then
sed -i "\|_PATH=|a\NETVISOR_PUBLIC_URL=http://${LOCAL_IP}:60072" /opt/netvisor/.env
fi
sed -i 's|_TARGET=.*$|_URL=http://127.0.0.1:60072|' /opt/netvisor/.env
msg_info "Creating frontend UI"
export PUBLIC_SERVER_HOSTNAME=default
export PUBLIC_SERVER_PORT=60072
export PUBLIC_SERVER_PORT=""
cd /opt/netvisor/ui
$STD npm ci --no-fund --no-audit
$STD npm run build
@@ -64,10 +70,16 @@ function update_script() {
mv ./target/release/server /usr/bin/netvisor-server
msg_ok "Built Netvisor-server"
msg_info "Building Netvisor-daemon (amd64 version)"
msg_info "Building Netvisor-daemon"
$STD cargo build --release --bin daemon
cp ./target/release/daemon /usr/bin/netvisor-daemon
msg_ok "Built Netvisor-daemon (amd64 version)"
msg_ok "Built Netvisor-daemon"
sed -i -e 's|-target|-url|' \
-e 's| --server-port |:|' \
/etc/systemd/system/netvisor-daemon.service
sed -i '/^ \"server_target.*$/d' /root/.config/daemon/config.json
systemctl daemon-reload
msg_info "Starting services"
systemctl start netvisor-server netvisor-daemon

View File

@@ -49,12 +49,13 @@ function update_script() {
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
grep "tag_name" |
awk '{print substr($2, 3, length($2)-4) }')
fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager"
#RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
#grep "tag_name" |
#awk '{print substr($2, 3, length($2)-4) }')
RELEASE="2.13.4"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager" "tarball" "v${RELEASE}" "/opt/nginxproxymanager"
msg_info "Stopping Services"
systemctl stop openresty
systemctl stop npm

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
@@ -32,19 +32,11 @@ function update_script() {
if lscpu | grep -q 'avx'; then
MONGO_VERSION="8.0" setup_mongodb
else
msg_warn "No AVX detected: Using older MongoDB 4.4"
MONGO_VERSION="4.4" setup_mongodb
msg_error "No AVX detected (CPU-Flag)! We have discontinued support for this. You are welcome to try it manually with a Debian LXC, but due to the many issues with Omada, we currently only support AVX CPUs."
exit 10
fi
msg_info "Checking if right Azul Zulu Java is installed"
java_version=$(java -version 2>&1 | awk -F[\"_] '/version/ {print $2}')
if [[ "$java_version" =~ ^1\.8\.* ]]; then
$STD apt remove --purge -y zulu8-jdk
$STD apt -y install zulu21-jre-headless
msg_ok "Updated Azul Zulu Java to 21"
else
msg_ok "Azul Zulu Java 21 already installed"
fi
JAVA_VERSION="21" setup_java
msg_info "Updating Omada Controller"
OMADA_URL=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" |

View File

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

View File

@@ -20,7 +20,7 @@
"script": "ct/jotty.sh",
"resources": {
"cpu": 2,
"ram": 4096,
"ram": 3072,
"hdd": 6,
"os": "debian",
"version": "13"

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-05-26",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": true,
"config_path": "",
"interface_port": 443,

View File

@@ -28,8 +28,13 @@
}
],
"default_credentials": {
"username": "admin",
"password": "admin"
"username": null,
"password": null
},
"notes": []
"notes": [
{
"text": "After installation, the admin user credentials are saved in the file ~/librenms.creds inside the container.",
"type": "info"
}
]
}

View File

@@ -35,6 +35,10 @@
{
"text": "The integrated daemon config is located at `/root/.config/daemon/config.json`",
"type": "info"
},
{
"text": "When using a reverse proxy, edit `/opt/netvisor/ui/build/_app/env.js`: add 443 to `PUBLIC_SERVER_PORT` and remove 'default' from `PUBLIC_SERVER_HOSTNAME`.",
"type": "info"
}
]
}

View File

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

View File

@@ -33,7 +33,7 @@
},
"notes": [
{
"text": "Type `cat ~/.Passbolt.creds` to see MariaDB database credentials. You will need those to setup Passbolt.",
"text": "Type `cat ~/passbolt.creds` to see MariaDB database credentials. You will need those to setup Passbolt.",
"type": "info"
},
{

View File

@@ -6,7 +6,7 @@
],
"date_created": "2025-08-26",
"type": "ct",
"updateable": true,
"updateable": false,
"privileged": false,
"interface_port": 8888,
"documentation": "https://docs.searxng.org/",

View File

@@ -1,44 +1,289 @@
[
{
"name": "meilisearch/meilisearch",
"version": "latest",
"date": "2025-11-17T09:29:20Z"
"name": "kimai/kimai",
"version": "2.44.0",
"date": "2025-11-20T11:01:01Z"
},
{
"name": "itsmng/itsm-ng",
"version": "v2.1.1",
"date": "2025-11-20T10:54:07Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-ui@16.0.15",
"date": "2025-11-20T10:52:04Z"
},
{
"name": "mattermost/mattermost",
"version": "v10.11.7",
"date": "2025-11-17T08:40:53Z"
},
{
"name": "Athou/commafeed",
"version": "5.12.0",
"date": "2025-11-20T06:18:58Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.319",
"date": "2025-11-17T05:55:48Z"
"version": "v0.24.336",
"date": "2025-11-20T05:55:54Z"
},
{
"name": "documenso/documenso",
"version": "v2.0.14",
"date": "2025-11-20T04:12:40Z"
},
{
"name": "immich-app/immich",
"version": "v2.3.1",
"date": "2025-11-20T03:10:27Z"
},
{
"name": "nextcloud/nextcloudpi",
"version": "v1.56.0",
"date": "2025-11-20T02:28:35Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.80.0.dev6",
"date": "2025-11-20T02:03:21Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-11-20T00:27:04Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.0.1",
"date": "2025-10-15T16:53:55Z"
},
{
"name": "coder/code-server",
"version": "v4.106.2",
"date": "2025-11-20T00:23:05Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.5",
"date": "2025-11-12T15:24:23Z"
},
{
"name": "esphome/esphome",
"version": "2025.10.5",
"date": "2025-11-12T01:09:44Z"
"version": "2025.11.0",
"date": "2025-11-19T22:37:46Z"
},
{
"name": "TandoorRecipes/recipes",
"version": "2.3.5",
"date": "2025-11-19T20:53:34Z"
},
{
"name": "prometheus/prometheus",
"version": "v0.308.0-rc.0",
"date": "2025-11-19T19:48:05Z"
},
{
"name": "qbittorrent/qBittorrent",
"version": "release-5.1.4",
"date": "2025-11-19T20:25:37Z"
},
{
"name": "influxdata/influxdb",
"version": "v2.7.12",
"date": "2025-05-29T17:08:26Z"
},
{
"name": "tailscale/tailscale",
"version": "v1.90.8",
"date": "2025-11-19T16:30:57Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.51.3",
"date": "2025-11-19T15:45:28Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.6.2",
"date": "2025-11-19T15:31:59Z"
},
{
"name": "BookStackApp/BookStack",
"version": "v25.11.2",
"date": "2025-11-19T15:26:29Z"
},
{
"name": "grafana/grafana",
"version": "v12.3.0",
"date": "2025-11-19T15:15:43Z"
},
{
"name": "goauthentik/authentik",
"version": "version/2025.10.2",
"date": "2025-11-19T15:08:41Z"
},
{
"name": "wizarrrr/wizarr",
"version": "v2025.11.3",
"date": "2025-11-19T14:57:27Z"
},
{
"name": "hivemq/hivemq-community-edition",
"version": "2025.5",
"date": "2025-11-19T14:48:47Z"
},
{
"name": "ollama/ollama",
"version": "v0.13.0",
"date": "2025-11-19T14:16:07Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.120.4",
"date": "2025-11-19T12:57:55Z"
},
{
"name": "AdguardTeam/AdGuardHome",
"version": "v0.107.69",
"date": "2025-10-30T15:31:50Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.538",
"date": "2025-11-19T12:09:00Z"
},
{
"name": "jupyter/notebook",
"version": "v7.5.0",
"date": "2025-11-19T08:36:29Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.102.0",
"date": "2025-11-19T06:53:59Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "element-hq/synapse",
"version": "v1.143.0rc1",
"date": "2025-11-19T00:09:31Z"
},
{
"name": "hyperion-project/hyperion.ng",
"version": "2.1.1",
"date": "2025-06-14T17:45:06Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v1.0.1-stable",
"date": "2025-11-10T16:51:44Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "testing",
"date": "2025-11-17T16:24:26Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v0.23.0-alpha.23",
"date": "2025-11-18T21:36:15Z"
},
{
"name": "umami-software/umami",
"version": "v3.0.1",
"date": "2025-11-18T18:50:35Z"
},
{
"name": "seerr-team/seerr",
"version": "preview-test-fix-subscriptions",
"date": "2025-11-18T17:42:54Z"
},
{
"name": "traefik/traefik",
"version": "v3.6.2",
"date": "2025-11-18T16:25:16Z"
},
{
"name": "MariaDB/server",
"version": "mariadb-12.1.2",
"date": "2025-11-18T15:16:21Z"
},
{
"name": "redis/redis",
"version": "8.4.0",
"date": "2025-11-18T15:06:37Z"
},
{
"name": "NginxProxyManager/nginx-proxy-manager",
"version": "v2.13.5",
"date": "2025-11-18T11:47:48Z"
},
{
"name": "PCJones/UmlautAdaptarr",
"version": "v0.7.5",
"date": "2025-11-18T10:50:21Z"
},
{
"name": "emqx/emqx",
"version": "e6.1.0-alpha.1",
"date": "2025-11-18T10:33:45Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w47-4.14.2",
"date": "2025-11-18T07:24:43Z"
},
{
"name": "0xERR0R/blocky",
"version": "v0.28.2",
"date": "2025-11-18T05:51:46Z"
},
{
"name": "theonedev/onedev",
"version": "v13.1.0",
"date": "2025-11-18T00:06:49Z"
},
{
"name": "ipfs/kubo",
"version": "v0.38.2",
"date": "2025-10-30T02:44:09Z"
},
{
"name": "VictoriaMetrics/VictoriaMetrics",
"version": "pmm-6401-v1.130.0",
"date": "2025-11-17T21:16:38Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.4.8",
"date": "2025-11-13T04:42:27Z"
},
{
"name": "influxdata/telegraf",
"version": "v1.36.4",
"date": "2025-11-17T17:15:29Z"
},
{
"name": "Paymenter/Paymenter",
"version": "v1.4.5",
"date": "2025-11-17T15:20:35Z"
},
{
"name": "meilisearch/meilisearch",
"version": "latest",
"date": "2025-11-17T09:29:20Z"
},
{
"name": "rabbitmq/rabbitmq-server",
"version": "v4.2.1",
"date": "2025-11-17T02:47:15Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-11-17T00:27:09Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.0.1",
"date": "2025-10-15T16:53:55Z"
},
{
"name": "Prowlarr/Prowlarr",
"version": "v2.3.0.5236",
@@ -64,11 +309,6 @@
"version": "v0.21.0",
"date": "2025-08-23T18:33:53Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v0.22.15",
"date": "2025-11-16T21:30:50Z"
},
{
"name": "TwiN/gatus",
"version": "v5.32.0",
@@ -79,11 +319,6 @@
"version": "v2.15.0",
"date": "2025-11-16T18:53:49Z"
},
{
"name": "PCJones/UmlautAdaptarr",
"version": "v0.7.4",
"date": "2025-11-16T18:40:32Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.3.8",
@@ -115,14 +350,9 @@
"date": "2025-11-16T13:04:21Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-core@16.0.12",
"date": "2025-11-16T12:33:59Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
"name": "TechnitiumSoftware/DnsServer",
"version": "v14.1.0",
"date": "2025-11-16T11:32:10Z"
},
{
"name": "FlowiseAI/Flowise",
@@ -134,36 +364,11 @@
"version": "3000.4.0",
"date": "2025-11-16T01:02:49Z"
},
{
"name": "hyperion-project/hyperion.ng",
"version": "2.1.1",
"date": "2025-06-14T17:45:06Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.80.0.rc.1",
"date": "2025-11-16T00:22:41Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.19.6",
"date": "2025-11-15T22:56:45Z"
},
{
"name": "seerr-team/seerr",
"version": "preview-test-fix-subscriptions",
"date": "2025-11-15T20:51:48Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.528.2",
"date": "2025-11-15T20:15:39Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "v1.6.5",
"date": "2025-10-06T15:25:17Z"
},
{
"name": "karakeep-app/karakeep",
"version": "android/v1.8.2-2",
@@ -184,71 +389,21 @@
"version": "2025.11.2",
"date": "2025-11-14T22:10:50Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.5",
"date": "2025-11-12T15:24:23Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.43.3",
"date": "2025-11-14T19:16:17Z"
},
{
"name": "kimai/kimai",
"version": "2.43.0",
"date": "2025-11-14T17:20:16Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.119.2",
"date": "2025-11-14T17:06:16Z"
},
{
"name": "mealie-recipes/mealie",
"version": "v3.5.0",
"date": "2025-11-14T16:23:33Z"
},
{
"name": "jupyter/notebook",
"version": "@jupyter-notebook/ui-components@7.5.0-rc.1",
"date": "2025-11-14T15:46:14Z"
},
{
"name": "influxdata/influxdb",
"version": "v2.7.12",
"date": "2025-05-29T17:08:26Z"
},
{
"name": "prometheus/prometheus",
"version": "v0.308.0-rc.0",
"date": "2025-11-14T15:20:35Z"
},
{
"name": "Dolibarr/dolibarr",
"version": "22.0.3",
"date": "2025-11-14T14:49:25Z"
},
{
"name": "grafana/grafana",
"version": "rrc_steady_12.4.0-19174562009.patch4",
"date": "2025-11-14T14:12:58Z"
},
{
"name": "documenso/documenso",
"version": "v2.0.12",
"date": "2025-11-14T13:48:27Z"
},
{
"name": "MariaDB/server",
"version": "mariadb-11.8.5",
"date": "2025-11-14T13:24:20Z"
},
{
"name": "emqx/emqx",
"version": "e5.9.2",
"date": "2025-11-14T12:20:13Z"
},
{
"name": "openobserve/openobserve",
"version": "v0.16.2",
@@ -259,11 +414,6 @@
"version": "v4.7.0",
"date": "2025-11-14T09:45:13Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.51.1",
"date": "2025-11-14T09:22:24Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.4",
@@ -289,31 +439,16 @@
"version": "v4.31.0",
"date": "2025-11-14T00:18:50Z"
},
{
"name": "ollama/ollama",
"version": "v0.12.11",
"date": "2025-11-12T20:27:51Z"
},
{
"name": "gristlabs/grist-core",
"version": "v1.7.7",
"date": "2025-11-13T21:28:44Z"
},
{
"name": "0xERR0R/blocky",
"version": "v0.28.1",
"date": "2025-11-13T21:25:32Z"
},
{
"name": "pommee/goaway",
"version": "v0.62.18",
"date": "2025-11-13T19:49:21Z"
},
{
"name": "traefik/traefik",
"version": "v3.6.1",
"date": "2025-11-13T14:28:54Z"
},
{
"name": "pocketbase/pocketbase",
"version": "v0.33.0",
@@ -329,26 +464,11 @@
"version": "v2.40.3",
"date": "2025-10-30T09:35:37Z"
},
{
"name": "redis/redis",
"version": "8.4-int2",
"date": "2025-11-13T08:17:31Z"
},
{
"name": "evcc-io/evcc",
"version": "0.209.8",
"date": "2025-11-13T07:20:49Z"
},
{
"name": "NginxProxyManager/nginx-proxy-manager",
"version": "v2.13.4",
"date": "2025-11-12T21:27:04Z"
},
{
"name": "wazuh/wazuh",
"version": "v4.14.1",
"date": "2025-11-12T18:11:43Z"
},
{
"name": "pymedusa/Medusa",
"version": "v1.0.25",
@@ -364,16 +484,6 @@
"version": "351",
"date": "2025-11-12T11:28:06Z"
},
{
"name": "Paymenter/Paymenter",
"version": "v1.4.4",
"date": "2025-11-12T10:43:23Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.101.0",
"date": "2025-11-12T07:13:22Z"
},
{
"name": "webmin/webmin",
"version": "2.600",
@@ -414,16 +524,6 @@
"version": "1.1.0",
"date": "2025-11-11T14:30:28Z"
},
{
"name": "BookStackApp/BookStack",
"version": "v25.11.1",
"date": "2025-11-11T12:23:00Z"
},
{
"name": "element-hq/synapse",
"version": "v1.142.0",
"date": "2025-11-11T10:33:50Z"
},
{
"name": "FlareSolverr/FlareSolverr",
"version": "v3.4.5",
@@ -434,11 +534,6 @@
"version": "4.9.1.90",
"date": "2025-11-11T01:00:32Z"
},
{
"name": "qbittorrent/qBittorrent",
"version": "release-5.1.3",
"date": "2025-11-10T22:29:05Z"
},
{
"name": "postgres/postgres",
"version": "REL_13_23",
@@ -449,11 +544,6 @@
"version": "v1.69.0",
"date": "2025-11-10T17:22:00Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v1.0.1-stable",
"date": "2025-11-10T16:51:44Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.3.5",
@@ -484,11 +574,6 @@
"version": "v2.4.5",
"date": "2025-11-09T17:14:01Z"
},
{
"name": "TechnitiumSoftware/DnsServer",
"version": "v14.0.1",
"date": "2025-11-09T13:03:18Z"
},
{
"name": "authelia/authelia",
"version": "v4.39.14",
@@ -539,11 +624,6 @@
"version": "debian/12.1.35",
"date": "2025-11-07T14:35:24Z"
},
{
"name": "umami-software/umami",
"version": "v3.0.0",
"date": "2025-11-07T06:13:49Z"
},
{
"name": "Ombi-app/Ombi",
"version": "v4.52.0",
@@ -564,11 +644,6 @@
"version": "v1.15.0",
"date": "2025-11-06T15:03:22Z"
},
{
"name": "wizarrrr/wizarr",
"version": "v2025.11.2",
"date": "2025-11-06T12:08:24Z"
},
{
"name": "transmission/transmission",
"version": "4.0.1-beta.1",
@@ -609,11 +684,6 @@
"version": "6.2.9",
"date": "2025-11-05T13:55:39Z"
},
{
"name": "immich-app/immich",
"version": "v2.2.3",
"date": "2025-11-05T13:47:03Z"
},
{
"name": "azukaar/Cosmos-Server",
"version": "v0.18.4",
@@ -654,11 +724,6 @@
"version": "v0.9.100",
"date": "2025-11-04T17:44:39Z"
},
{
"name": "VictoriaMetrics/VictoriaMetrics",
"version": "v1.129.1",
"date": "2025-11-04T15:15:47Z"
},
{
"name": "prometheus/alertmanager",
"version": "v0.29.0",
@@ -694,11 +759,6 @@
"version": "v25.11.0",
"date": "2025-11-04T00:32:21Z"
},
{
"name": "goauthentik/authentik",
"version": "version/2025.10.1",
"date": "2025-11-03T16:49:16Z"
},
{
"name": "silverbulletmd/silverbullet",
"version": "2.2.1",
@@ -714,11 +774,6 @@
"version": "v3.2.9",
"date": "2025-11-02T05:48:39Z"
},
{
"name": "theonedev/onedev",
"version": "v13.0.10",
"date": "2025-11-02T02:47:45Z"
},
{
"name": "9001/copyparty",
"version": "v1.19.20",
@@ -734,11 +789,6 @@
"version": "0.42.1",
"date": "2020-06-07T07:27:04Z"
},
{
"name": "tailscale/tailscale",
"version": "v1.90.6",
"date": "2025-10-31T22:24:04Z"
},
{
"name": "zabbix/zabbix",
"version": "7.4.5",
@@ -764,21 +814,11 @@
"version": "1.0.2",
"date": "2025-10-30T18:23:23Z"
},
{
"name": "AdguardTeam/AdGuardHome",
"version": "v0.107.69",
"date": "2025-10-30T15:31:50Z"
},
{
"name": "danielbrendel/hortusfox-web",
"version": "v5.4",
"date": "2025-10-30T14:25:23Z"
},
{
"name": "ipfs/kubo",
"version": "v0.38.2",
"date": "2025-10-30T02:44:09Z"
},
{
"name": "homebridge/homebridge",
"version": "v1.11.1",
@@ -874,16 +914,6 @@
"version": "v3.2.5-beta",
"date": "2025-10-21T16:49:14Z"
},
{
"name": "influxdata/telegraf",
"version": "v1.36.3",
"date": "2025-10-21T12:53:58Z"
},
{
"name": "coder/code-server",
"version": "v4.105.1",
"date": "2025-10-20T20:19:23Z"
},
{
"name": "rclone/rclone",
"version": "v1.71.2",
@@ -924,11 +954,6 @@
"version": "0.20.4",
"date": "2025-10-18T10:00:42Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.6.1",
"date": "2025-10-17T15:21:59Z"
},
{
"name": "diced/zipline",
"version": "v4.3.2",
@@ -949,11 +974,6 @@
"version": "v2.13.1",
"date": "2025-10-15T13:29:37Z"
},
{
"name": "TandoorRecipes/recipes",
"version": "2.3.3",
"date": "2025-10-15T13:18:27Z"
},
{
"name": "blakeblackshear/frigate",
"version": "v0.14.1",
@@ -1069,16 +1089,6 @@
"version": "2025.09.24",
"date": "2025-09-24T13:51:23Z"
},
{
"name": "itsmng/itsm-ng",
"version": "v2.1.0",
"date": "2025-09-22T09:23:37Z"
},
{
"name": "Athou/commafeed",
"version": "5.11.1",
"date": "2025-09-22T02:21:27Z"
},
{
"name": "gotify/server",
"version": "v2.7.3",
@@ -1284,11 +1294,6 @@
"version": "250707-d28b3101e",
"date": "2025-07-07T15:15:21Z"
},
{
"name": "hivemq/hivemq-community-edition",
"version": "2025.4",
"date": "2025-07-01T18:01:37Z"
},
{
"name": "typesense/typesense",
"version": "v29.0",
@@ -1409,11 +1414,6 @@
"version": "v1.34.0",
"date": "2025-03-26T08:48:34Z"
},
{
"name": "nextcloud/nextcloudpi",
"version": "v1.55.4",
"date": "2025-03-24T11:31:02Z"
},
{
"name": "redlib-org/redlib",
"version": "v0.36.0",

View File

@@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
setup_uv
PYTHON_VERSION="3.12" setup_uv
fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io"
msg_info "Configure Huntarr"

View File

@@ -13,12 +13,23 @@ setting_up_container
network_check
update_os
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_info "Installing Docker"
$STD sh <(curl -fsSL https://get.docker.com/)
msg_ok "Installed Docker"
msg_info "Detecting latest Kasm Workspaces release"
KASM_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' | head -n 1)
if [[ -z "$KASM_URL" ]]; then
msg_error "Unable to detect latest Kasm release URL."
exit 1
fi
KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
msg_ok "Detected Kasm Workspaces version $KASM_VERSION"
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"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ install.sh inside tar.gz $KASM_URL"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
@@ -27,7 +38,7 @@ if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
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"
curl -fsSL -o "/opt/kasm_release_${KASM_VERSION}.tar.gz" "$KASM_URL"
cd /opt
tar -xf "kasm_release_${KASM_VERSION}.tar.gz"
chmod +x /opt/kasm_release/install.sh
@@ -39,10 +50,10 @@ awk '
in_token && /^-+$/ {dash_count++}
in_token && dash_count==2 {exit}
' ~/kasm-install.output >~/kasm.creds
rm -f /opt/kasm_release_${KASM_VERSION}.tar.gz
rm -f ~/kasm-install.output
msg_ok "Installed Kasm Workspaces"
motd_ssh
customize
rm -f /opt/kasm_release_${KASM_VERSION}.tar.gz
rm -f ~/kasm-install.output
cleanup_lxc

View File

@@ -113,11 +113,19 @@ mkdir -p /etc/bash_completion.d/
cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
APP_PASSWORD=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
APP_USER="admin"
{
echo "LibreNMS Credentials"
echo "Username: ${APP_USER}"
echo "Password: ${APP_PASSWORD}"
} >>~/librenms.creds
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && php8.4 artisan migrate --force"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && php8.4 artisan key:generate --force"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && lnms db:seed --force"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && lnms user:add -p admin -r admin admin"
$STD su - librenms -s /bin/bash -c "cd /opt/librenms && lnms user:add -p ${APP_PASSWORD} ${APP_USER} --role=admin"
RANDOM_STRING=$(openssl rand -base64 16 | tr -dc 'a-zA-Z0-9')
sed -i "s/RANDOMSTRINGHERE/$RANDOM_STRING/g" /etc/snmp/snmpd.conf

View File

@@ -31,7 +31,7 @@ RUST_TOOLCHAIN=$TOOLCHAIN setup_rust
msg_info "Creating frontend UI"
export PUBLIC_SERVER_HOSTNAME=default
export PUBLIC_SERVER_PORT=60072
export PUBLIC_SERVER_PORT=""
cd /opt/netvisor/ui
$STD npm ci --no-fund --no-audit
$STD npm run build
@@ -49,20 +49,18 @@ cp ./target/release/daemon /usr/bin/netvisor-daemon
msg_ok "Built Netvisor-daemon"
msg_info "Configuring server & daemon for first-run"
LOCAL_IP="$(hostname -I | awk '{print $1}')"
cat <<EOF >/opt/netvisor/.env
### - UI
PUBLIC_SERVER_HOSTNAME=default
PUBLIC_SERVER_PORT=60072
### - SERVER
NETVISOR_DATABASE_URL=postgresql://$PG_DB_USER:$PG_DB_PASS@localhost:5432/$PG_DB_NAME
NETVISOR_WEB_EXTERNAL_PATH="/opt/netvisor/ui/build"
NETVISOR_PUBLIC_URL=http://${LOCAL_IP}:60072
NETVISOR_SERVER_PORT=60072
NETVISOR_LOG_LEVEL=info
NETVISOR_INTEGRATED_DAEMON_URL=http://127.0.0.1:60073
## - uncomment to disable signups
# NETVISOR_DISABLE_REGISTRATION=true
## - uncomment when behind reverse proxy
## - uncomment when using TLS
# NETVISOR_USE_SECURE_SESSION_COOKIES=true
### - OIDC (optional)
@@ -74,8 +72,14 @@ NETVISOR_INTEGRATED_DAEMON_URL=http://127.0.0.1:60073
## - Callback URL for reference
# http://your-netvisor-domain:60072/api/auth/oidc/callback
### - SMTP (password reset and notifications - optional)
# NETVISOR_SMTP_RELAY=smtp.gmail.com:587
# NETVISOR_SMTP_USERNAME=your-email@gmail.com
# NETVISOR_SMTP_PASSWORD=your-app-password
# NETVISOR_SMTP_EMAIL=netvisor@yourdomain.tld
### - INTEGRATED DAEMON
NETVISOR_SERVER_TARGET=127.0.0.1
NETVISOR_SERVER_URL=http://127.0.0.1:60072
NETVISOR_BIND_ADDRESS=0.0.0.0
NETVISOR_NAME="netvisor-daemon"
NETVISOR_HEARTBEAT_INTERVAL=30
@@ -112,7 +116,7 @@ After=network.target netvisor-server.service
[Service]
Type=simple
EnvironmentFile=/opt/netvisor/.env
ExecStart=/usr/bin/netvisor-daemon --server-target http://127.0.0.1 --server-port 60072 --network-id ${NETWORK_ID} --daemon-api-key ${API_KEY}
ExecStart=/usr/bin/netvisor-daemon --server-url http://127.0.0.1:60072 --network-id ${NETWORK_ID} --daemon-api-key ${API_KEY}
Restart=always
RestartSec=10
StandardOutput=journal

View File

@@ -54,11 +54,12 @@ msg_ok "Installed Openresty"
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
grep "tag_name" |
awk '{print substr($2, 3, length($2)-4) }')
# RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
# grep "tag_name" |
# awk '{print substr($2, 3, length($2)-4) }')
RELEASE="2.13.4"
fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager"
fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager" "tarball" "v2.13.4"
msg_info "Setting up Environment"
ln -sf /usr/bin/python3 /usr/bin/python

View File

@@ -17,24 +17,15 @@ msg_info "Installing Dependencies"
$STD apt install -y jsvc
msg_ok "Installed Dependencies"
msg_info "Checking CPU Features"
JAVA_VERSION="21" setup_java
if lscpu | grep -q 'avx'; then
MONGODB_VERSION="8.0"
msg_ok "AVX detected: Using MongoDB 8.0"
MONGO_VERSION="8.0" setup_mongodb
else
MONGO_VERSION="4.4" setup_mongodb
msg_error "No AVX detected (CPU-Flag)! We have discontinued support for this. You are welcome to try it manually with a Debian LXC, but due to the many issues with Omada, we currently only support AVX CPUs."
exit 10
fi
msg_info "Installing Azul Zulu Java"
curl -fsSL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xB1998361219BD9C9" -o "/etc/apt/trusted.gpg.d/zulu-repo.asc"
curl -fsSL "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb" -o zulu-repo.deb
$STD dpkg -i zulu-repo.deb
$STD apt update
$STD apt -y install zulu21-jre-headless
msg_ok "Installed Azul Zulu Java"
if ! dpkg -l | grep -q 'libssl1.1'; then
msg_info "Installing libssl (if needed)"
curl -fsSL "https://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1w-0+deb11u4_amd64.deb" -o "/tmp/libssl.deb"
@@ -50,14 +41,9 @@ OMADA_URL=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/o
OMADA_PKG=$(basename "$OMADA_URL")
curl -fsSL "$OMADA_URL" -o "$OMADA_PKG"
$STD dpkg -i "$OMADA_PKG"
rm -rf "$OMADA_PKG"
msg_ok "Installed Omada Controller"
motd_ssh
customize
msg_info "Cleaning up"
rm -rf "$OMADA_PKG" zulu-repo.deb
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"
cleanup_lxc

View File

@@ -13,10 +13,16 @@ load_functions
verb_ip6() {
set_std_mode # Set STD mode based on VERBOSE
if [ "$DISABLEIPV6" == "yes" ]; then
if [ "$IPV6_METHOD" == "none" ] || [ "$DISABLEIPV6" == "yes" ]; then
msg_info "Disabling IPv6"
$STD sysctl -w net.ipv6.conf.all.disable_ipv6=1
$STD sysctl -w net.ipv6.conf.default.disable_ipv6=1
$STD sysctl -w net.ipv6.conf.lo.disable_ipv6=1
echo "net.ipv6.conf.all.disable_ipv6 = 1" >>/etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" >>/etc/sysctl.conf
echo "net.ipv6.conf.lo.disable_ipv6 = 1" >>/etc/sysctl.conf
$STD rc-update add sysctl default
msg_ok "Disabled IPv6"
fi
}

View File

@@ -65,7 +65,7 @@ root_check() {
}
# This function checks the version of Proxmox Virtual Environment (PVE) and exits if the version is not supported.
# Supported: Proxmox VE 8.0.x 8.9.x and 9.0 (NOT 9.1+)
# Supported: Proxmox VE 8.0.x 8.9.x, 9.0 and 9.1
pve_check() {
local PVE_VER
PVE_VER="$(pveversion | awk -F'/' '{print $2}' | awk -F'-' '{print $1}')"
@@ -81,12 +81,12 @@ pve_check() {
return 0
fi
# Check for Proxmox VE 9.x: allow ONLY 9.0
# Check for Proxmox VE 9.x: allow 9.0 and 9.1
if [[ "$PVE_VER" =~ ^9\.([0-9]+) ]]; then
local MINOR="${BASH_REMATCH[1]}"
if ((MINOR != 0)); then
msg_error "This version of Proxmox VE is not yet supported."
msg_error "Supported: Proxmox VE version 9.0"
if ((MINOR < 0 || MINOR > 1)); then
msg_error "This version of Proxmox VE is not supported."
msg_error "Supported: Proxmox VE version 9.0 9.1"
exit 1
fi
return 0
@@ -94,7 +94,7 @@ pve_check() {
# All other unsupported versions
msg_error "This version of Proxmox VE is not supported."
msg_error "Supported versions: Proxmox VE 8.0 8.x or 9.0"
msg_error "Supported versions: Proxmox VE 8.0 8.x or 9.0 9.1"
exit 1
}

View File

@@ -393,7 +393,7 @@ cleanup_lxc() {
# Python pip
if command -v pip &>/dev/null; then $STD pip cache purge || true; fi
# Python uv
if command -v uv &>/dev/null; then $STD uv cache clear || true; fi
if command -v uv &>/dev/null; then $STD uv cache clean || true; fi
# Node.js npm
if command -v npm &>/dev/null; then $STD npm cache clean --force || true; fi
# Node.js yarn

View File

@@ -200,7 +200,6 @@ if qm status "$CTID" &>/dev/null || pct status "$CTID" &>/dev/null; then
fi
# This checks for the presence of valid Container Storage and Template Storage locations
msg_info "Validating storage"
if ! check_storage_support "rootdir"; then
msg_error "No valid storage found for 'rootdir' [Container]"
exit 1
@@ -210,7 +209,6 @@ if ! check_storage_support "vztmpl"; then
exit 1
fi
#msg_info "Checking template storage"
while true; do
if select_storage template; then
TEMPLATE_STORAGE="$STORAGE_RESULT"

View File

@@ -15,9 +15,13 @@ load_functions
verb_ip6() {
set_std_mode # Set STD mode based on VERBOSE
if [ "$DISABLEIPV6" == "yes" ]; then
echo "net.ipv6.conf.all.disable_ipv6 = 1" >>/etc/sysctl.conf
if [ "$IPV6_METHOD" == "none" ] || [ "$DISABLEIPV6" == "yes" ]; then
msg_info "Disabling IPv6"
$STD echo "net.ipv6.conf.all.disable_ipv6 = 1" >>/etc/sysctl.conf
$STD echo "net.ipv6.conf.default.disable_ipv6 = 1" >>/etc/sysctl.conf
$STD echo "net.ipv6.conf.lo.disable_ipv6 = 1" >>/etc/sysctl.conf
$STD sysctl -p
msg_ok "Disabled IPv6"
fi
}

View File

@@ -42,7 +42,7 @@ function msg_ok() {
function msg_error() { echo -e "${RD}$1${CL}"; }
# This function checks the version of Proxmox Virtual Environment (PVE) and exits if the version is not supported.
# Supported: Proxmox VE 8.0.x 8.9.x and 9.0 (NOT 9.1+)
# Supported: Proxmox VE 8.0.x 8.9.x and 9.09.1.x
pve_check() {
local PVE_VER
PVE_VER="$(pveversion | awk -F'/' '{print $2}' | awk -F'-' '{print $1}')"
@@ -58,12 +58,12 @@ pve_check() {
return 0
fi
# Check for Proxmox VE 9.x: allow ONLY 9.0
# Check for Proxmox VE 9.x: allow 9.09.1.x
if [[ "$PVE_VER" =~ ^9\.([0-9]+) ]]; then
local MINOR="${BASH_REMATCH[1]}"
if ((MINOR != 0)); then
if ((MINOR < 0 || MINOR > 1)); then
msg_error "This version of Proxmox VE is not yet supported."
msg_error "Supported: Proxmox VE version 9.0"
msg_error "Supported: Proxmox VE version 9.09.1.x"
exit 1
fi
return 0
@@ -71,7 +71,7 @@ pve_check() {
# All other unsupported versions
msg_error "This version of Proxmox VE is not supported."
msg_error "Supported versions: Proxmox VE 8.0 8.x or 9.0"
msg_error "Supported versions: Proxmox VE 8.0 8.9 or 9.09.1.x"
exit 1
}

View File

@@ -88,14 +88,14 @@ main() {
fi
start_routines_8
elif [[ "$PVE_MAJOR" == "9" ]]; then
if ((PVE_MINOR != 0)); then
msg_error "Only Proxmox 9.0 is currently supported"
if ((PVE_MINOR < 0 || PVE_MINOR > 1)); then
msg_error "Only Proxmox 9.0-9.1.x is currently supported"
exit 1
fi
start_routines_9
else
msg_error "Unsupported Proxmox VE major version: $PVE_MAJOR"
echo -e "Supported: 8.08.9.x and 9.0"
echo -e "Supported: 8.08.9.x and 9.09.1.x"
exit 1
fi
}