mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-04 18:32:51 +00:00
Compare commits
34 Commits
2025-04-10
...
2025-04-14
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4b275ae911 | ||
|
|
b25b823d69 | ||
|
|
d7757aa5d1 | ||
|
|
5def868c67 | ||
|
|
b87871f56c | ||
|
|
4403635733 | ||
|
|
2fd847215c | ||
|
|
6e2cb8d4e2 | ||
|
|
173bc7201c | ||
|
|
54b794da54 | ||
|
|
203d022db5 | ||
|
|
97c05542d6 | ||
|
|
20e5b1a2bf | ||
|
|
e5800a0ec5 | ||
|
|
21bdf2a828 | ||
|
|
2551cb4b22 | ||
|
|
0cb6ea8e4a | ||
|
|
04656327e2 | ||
|
|
374c3342a1 | ||
|
|
3668c089dd | ||
|
|
6dbe7aed99 | ||
|
|
423c1e9568 | ||
|
|
73fbf74707 | ||
|
|
8e87fbd481 | ||
|
|
9c9a7c78fc | ||
|
|
ea03177126 | ||
|
|
df507f74a9 | ||
|
|
d933d05bd3 | ||
|
|
1cc8b93fc2 | ||
|
|
b132580f62 | ||
|
|
21da4bc8b5 | ||
|
|
36bab52e7a | ||
|
|
911ca2da24 | ||
|
|
220faf05ff |
52
CHANGELOG.md
52
CHANGELOG.md
@@ -14,6 +14,58 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
|||||||
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
||||||
|
|
||||||
|
|
||||||
|
## 2025-04-14
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- openziti-controller ([#3880](https://github.com/community-scripts/ProxmoxVE/pull/3880))
|
||||||
|
- Alpine-AdGuardHome [@MickLesk](https://github.com/MickLesk) ([#3875](https://github.com/community-scripts/ProxmoxVE/pull/3875))
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- Paymenter: bump php to 8.3 [@opastorello](https://github.com/opastorello) ([#3825](https://github.com/community-scripts/ProxmoxVE/pull/3825))
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Neo4j: Add Java dependency [@tremor021](https://github.com/tremor021) ([#3871](https://github.com/community-scripts/ProxmoxVE/pull/3871))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- Refactor Cockpit update_script part [@MickLesk](https://github.com/MickLesk) ([#3878](https://github.com/community-scripts/ProxmoxVE/pull/3878))
|
||||||
|
|
||||||
|
## 2025-04-12
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Add "Not Updateable" tooltip to scripts [@BramSuurdje](https://github.com/BramSuurdje) ([#3852](https://github.com/community-scripts/ProxmoxVE/pull/3852))
|
||||||
|
|
||||||
|
## 2025-04-11
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- slskd: fix missing -o for curl [@MickLesk](https://github.com/MickLesk) ([#3828](https://github.com/community-scripts/ProxmoxVE/pull/3828))
|
||||||
|
- 2FAuth: Fix php dependencies [@tremor021](https://github.com/tremor021) ([#3820](https://github.com/community-scripts/ProxmoxVE/pull/3820))
|
||||||
|
- Komodo: Update Repository link [@sendyputra](https://github.com/sendyputra) ([#3823](https://github.com/community-scripts/ProxmoxVE/pull/3823))
|
||||||
|
|
||||||
|
### 🧰 Maintenance
|
||||||
|
|
||||||
|
- #### 💾 Core
|
||||||
|
|
||||||
|
- Enlarge the size of the menu in build.func [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#3833](https://github.com/community-scripts/ProxmoxVE/pull/3833))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- Bump vite from 6.2.5 to 6.2.6 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#3842](https://github.com/community-scripts/ProxmoxVE/pull/3842))
|
||||||
|
|
||||||
|
- #### 📝 Script Information
|
||||||
|
|
||||||
|
- SQLServer: fix some typos in notes [@stiny861](https://github.com/stiny861) ([#3838](https://github.com/community-scripts/ProxmoxVE/pull/3838))
|
||||||
|
- Radicale: move to misc category [@tremor021](https://github.com/tremor021) ([#3830](https://github.com/community-scripts/ProxmoxVE/pull/3830))
|
||||||
|
|
||||||
## 2025-04-10
|
## 2025-04-10
|
||||||
|
|
||||||
### 🆕 New Scripts
|
### 🆕 New Scripts
|
||||||
|
|||||||
47
ct/alpine-adguard.sh
Normal file
47
ct/alpine-adguard.sh
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: MickLesk (CanbiZ)
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://adguardhome.com/
|
||||||
|
|
||||||
|
APP="Alpine-AdGuard"
|
||||||
|
var_tags="${var_tags:-alpine;adblock}"
|
||||||
|
var_cpu="${var_cpu:-1}"
|
||||||
|
var_ram="${var_ram:-256}"
|
||||||
|
var_disk="${var_disk:-1}"
|
||||||
|
var_os="${var_os:-alpine}"
|
||||||
|
var_version="${var_version:-3.21}"
|
||||||
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
msg_info "Updating Alpine Packages"
|
||||||
|
$STD apk update
|
||||||
|
$STD apk upgrade
|
||||||
|
msg_ok "Updated Alpine Packages"
|
||||||
|
|
||||||
|
msg_info "Updating AdGuard Home"
|
||||||
|
$STD /opt/AdGuardHome/AdGuardHome --update
|
||||||
|
msg_ok "Updated AdGuard Home"
|
||||||
|
|
||||||
|
msg_info "Restarting AdGuard Home"
|
||||||
|
$STD rc-service adguardhome restart
|
||||||
|
msg_ok "Restarted AdGuard Home"
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
||||||
@@ -41,44 +41,56 @@ function update_script() {
|
|||||||
msg_ok "Updated ${APP} LXC"
|
msg_ok "Updated ${APP} LXC"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$UPD" == "2" ]; then
|
if [ "$UPD" == "2" ]; then
|
||||||
msg_info "Installing dependencies (patience)"
|
msg_info "Installing dependencies (patience)"
|
||||||
$STD apt-get install -y attr
|
$STD apt-get install -y \
|
||||||
$STD apt-get install -y nfs-kernel-server
|
attr \
|
||||||
$STD apt-get install -y samba
|
nfs-kernel-server \
|
||||||
$STD apt-get install -y samba-common-bin
|
samba \
|
||||||
$STD apt-get install -y winbind
|
samba-common-bin \
|
||||||
$STD apt-get install -y gawk
|
winbind \
|
||||||
|
gawk
|
||||||
msg_ok "Installed dependencies"
|
msg_ok "Installed dependencies"
|
||||||
msg_info "Installing Cockpit file sharing"
|
msg_info "Installing Cockpit file sharing"
|
||||||
curl -fsSL "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)" -o $(basename "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)")
|
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
||||||
$STD dpkg -i cockpit-file-sharing_*focal_all.deb
|
FILE=$(basename "$URL")
|
||||||
rm cockpit-file-sharing_*focal_all.deb
|
curl -fsSL "$URL" -o "$FILE"
|
||||||
|
$STD dpkg -i "$FILE" || $STD apt-get install -f -y
|
||||||
|
rm -f "$FILE"
|
||||||
msg_ok "Installed Cockpit file sharing"
|
msg_ok "Installed Cockpit file sharing"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$UPD" == "3" ]; then
|
if [ "$UPD" == "3" ]; then
|
||||||
msg_info "Installing dependencies (patience)"
|
msg_info "Installing dependencies (patience)"
|
||||||
$STD apt-get install -y psmisc
|
$STD apt-get install -y \
|
||||||
$STD apt-get install -y samba
|
psmisc \
|
||||||
$STD apt-get install -y samba-common-bin
|
samba \
|
||||||
|
samba-common-bin
|
||||||
msg_ok "Installed dependencies"
|
msg_ok "Installed dependencies"
|
||||||
msg_info "Installing Cockpit identities"
|
msg_info "Installing Cockpit identities"
|
||||||
curl -fsSL "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)" -o $(basename "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)")
|
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
||||||
$STD dpkg -i cockpit-identities_*focal_all.deb
|
FILE=$(basename "$URL")
|
||||||
rm cockpit-identities_*focal_all.deb
|
curl -fsSL "$URL" -o "$FILE"
|
||||||
|
$STD dpkg -i "$FILE" || $STD apt-get install -f -y
|
||||||
|
rm -f "$FILE"
|
||||||
msg_ok "Installed Cockpit identities"
|
msg_ok "Installed Cockpit identities"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$UPD" == "4" ]; then
|
if [ "$UPD" == "4" ]; then
|
||||||
msg_info "Installing dependencies"
|
msg_info "Installing dependencies"
|
||||||
$STD apt-get install -y rsync
|
$STD apt-get install -y \
|
||||||
$STD apt-get install -y zip
|
rsync \
|
||||||
|
zip
|
||||||
msg_ok "Installed dependencies"
|
msg_ok "Installed dependencies"
|
||||||
msg_info "Installing Cockpit navigator"
|
msg_info "Installing Cockpit navigator"
|
||||||
curl -fsSL "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)" -o $(basename "$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)")
|
URL=$(curl -fsSL https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
|
||||||
$STD dpkg -i cockpit-navigator_*focal_all.deb
|
FILE=$(basename "$URL")
|
||||||
rm cockpit-navigator_*focal_all.deb
|
curl -fsSL "$URL" -o "$FILE"
|
||||||
|
$STD dpkg -i "$FILE" || $STD apt-get install -f -y
|
||||||
|
rm -f "$FILE"
|
||||||
msg_ok "Installed Cockpit navigator"
|
msg_ok "Installed Cockpit navigator"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|||||||
6
ct/headers/alpine-adguard
Normal file
6
ct/headers/alpine-adguard
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
___ __ _ ___ ________ __
|
||||||
|
/ | / /___ (_)___ ___ / | ____/ / ____/_ ______ __________/ /
|
||||||
|
/ /| | / / __ \/ / __ \/ _ \______/ /| |/ __ / / __/ / / / __ `/ ___/ __ /
|
||||||
|
/ ___ |/ / /_/ / / / / / __/_____/ ___ / /_/ / /_/ / /_/ / /_/ / / / /_/ /
|
||||||
|
/_/ |_/_/ .___/_/_/ /_/\___/ /_/ |_\__,_/\____/\__,_/\__,_/_/ \__,_/
|
||||||
|
/_/
|
||||||
6
ct/headers/openziti-controller
Normal file
6
ct/headers/openziti-controller
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
_ __ _ __ ____
|
||||||
|
____ ____ ___ ____ ____ (_) /_(_) _________ ____ / /__________ / / /__ _____
|
||||||
|
/ __ \/ __ \/ _ \/ __ \/_ / / / __/ /_____/ ___/ __ \/ __ \/ __/ ___/ __ \/ / / _ \/ ___/
|
||||||
|
/ /_/ / /_/ / __/ / / / / /_/ / /_/ /_____/ /__/ /_/ / / / / /_/ / / /_/ / / / __/ /
|
||||||
|
\____/ .___/\___/_/ /_/ /___/_/\__/_/ \___/\____/_/ /_/\__/_/ \____/_/_/\___/_/
|
||||||
|
/_/
|
||||||
@@ -47,7 +47,7 @@ function update_script() {
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
GITHUB_URL="https://raw.githubusercontent.com/mbecker20/komodo/main/compose/${COMPOSE_FILE}"
|
GITHUB_URL="https://raw.githubusercontent.com/moghtech/komodo/main/compose/${COMPOSE_FILE}"
|
||||||
if ! curl -fsSL "$GITHUB_URL" -o "/opt/komodo/${COMPOSE_FILE}"; then
|
if ! curl -fsSL "$GITHUB_URL" -o "/opt/komodo/${COMPOSE_FILE}"; then
|
||||||
msg_error "Failed to download ${COMPOSE_FILE} from GitHub!"
|
msg_error "Failed to download ${COMPOSE_FILE} from GitHub!"
|
||||||
mv "/opt/komodo/${BACKUP_FILE}" "/opt/komodo/${COMPOSE_FILE}"
|
mv "/opt/komodo/${BACKUP_FILE}" "/opt/komodo/${COMPOSE_FILE}"
|
||||||
|
|||||||
12
ct/neo4j.sh
12
ct/neo4j.sh
@@ -27,6 +27,18 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
if ! dpkg -l | grep -q temurin-21-jre; then
|
||||||
|
msg_info "Installing Adoptium JDK"
|
||||||
|
$STD apt-get install -y \
|
||||||
|
gnupg2 \
|
||||||
|
lsb-release
|
||||||
|
mkdir -p /etc/apt/keyrings
|
||||||
|
curl -fsSL https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg
|
||||||
|
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" >/etc/apt/sources.list.d/adoptium.list
|
||||||
|
$STD apt-get update
|
||||||
|
$STD apt-get install -y temurin-21-jre
|
||||||
|
msg_ok "Adoptium JDK installed"
|
||||||
|
fi
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating ${APP}"
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
$STD apt-get -y upgrade
|
$STD apt-get -y upgrade
|
||||||
|
|||||||
21
ct/omada.sh
21
ct/omada.sh
@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
APP="Omada"
|
APP="Omada"
|
||||||
var_tags="${var_tags:-tp-link;controller}"
|
var_tags="${var_tags:-tp-link;controller}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-3072}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-12}"
|
||||||
@@ -53,17 +53,18 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Updating Omada Controller"
|
msg_info "Updating Omada Controller"
|
||||||
latest_url=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" | grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' | head -n 1)
|
OMADA_URL=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" |
|
||||||
latest_version=$(basename "$latest_url")
|
grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' |
|
||||||
if [ -z "${latest_version}" ]; then
|
head -n1)
|
||||||
msg_error "It seems that the server (tp-link.com) might be down. Please try again at a later time."
|
OMADA_PKG=$(basename "$OMADA_URL")
|
||||||
exit
|
if [ -z "$OMADA_PKG" ]; then
|
||||||
|
msg_error "Could not retrieve Omada package – server may be down."
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
curl -fsSL "$OMADA_URL" -o "$OMADA_PKG"
|
||||||
curl -fsSL "${latest_url}" -O
|
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
$STD dpkg -i ${latest_version}
|
$STD dpkg -i "$OMADA_PKG"
|
||||||
rm -rf ${latest_version}
|
rm -f "$OMADA_PKG"
|
||||||
msg_ok "Updated Omada Controller"
|
msg_ok "Updated Omada Controller"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
44
ct/openziti-controller.sh
Normal file
44
ct/openziti-controller.sh
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: emoscardini
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://github.com/openziti/ziti
|
||||||
|
|
||||||
|
APP="openziti-controller"
|
||||||
|
var_tags="network;openziti-controller"
|
||||||
|
var_cpu="2"
|
||||||
|
var_ram="1024"
|
||||||
|
var_disk="8"
|
||||||
|
var_os="debian"
|
||||||
|
var_version="12"
|
||||||
|
var_unprivileged="1"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
if [[ ! -d /opt/openziti ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
msg_info "Updating $APP LXC"
|
||||||
|
$STD apt-get update
|
||||||
|
$STD apt-get -y upgrade
|
||||||
|
msg_ok "Updated $APP LXC"
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:<port>/zac${CL}"
|
||||||
@@ -28,11 +28,26 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
CURRENT_PHP=$(php -v 2>/dev/null | awk '/^PHP/{print $2}' | cut -d. -f1,2)
|
||||||
|
if [[ "$CURRENT_PHP" != "8.3" ]]; then
|
||||||
|
msg_info "Migrating PHP $CURRENT_PHP to 8.3"
|
||||||
|
$STD curl -fsSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
|
||||||
|
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
|
||||||
|
$STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
|
||||||
|
$STD apt-get update
|
||||||
|
$STD apt-get remove -y php"${CURRENT_PHP//./}"*
|
||||||
|
$STD apt-get install -y \
|
||||||
|
php8.3 \
|
||||||
|
php8.3-{common,cli,gd,mysql,mbstring,bcmath,xml,curl,zip,intl,redis,fpm}
|
||||||
|
sed -i 's|php8\.2-fpm\.sock|php8.3-fpm.sock|g' /etc/nginx/sites-available/paymenter.conf
|
||||||
|
$STD systemctl reload nginx
|
||||||
|
msg_ok "Migrated PHP $CURRENT_PHP to 8.3"
|
||||||
|
fi
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/')
|
||||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||||
msg_info "Updating ${APP} to ${RELEASE}"
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
cd /opt/paymenter
|
cd /opt/paymenter || exit
|
||||||
$STD php artisan p:upgrade --no-interaction
|
$STD php artisan p:upgrade --no-interaction
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ function update_script() {
|
|||||||
cp /opt/soularr/run.sh /opt/run.sh.bak
|
cp /opt/soularr/run.sh /opt/run.sh.bak
|
||||||
cd /tmp
|
cd /tmp
|
||||||
rm -rf /opt/soularr
|
rm -rf /opt/soularr
|
||||||
curl -fsSL https://github.com/mrusse/soularr/archive/refs/heads/main.zip
|
curl -fsSL -o main.zip https://github.com/mrusse/soularr/archive/refs/heads/main.zip
|
||||||
unzip -q main.zip
|
unzip -q main.zip
|
||||||
mv soularr-main /opt/soularr
|
mv soularr-main /opt/soularr
|
||||||
cd /opt/soularr
|
cd /opt/soularr
|
||||||
|
|||||||
394
frontend/package-lock.json
generated
394
frontend/package-lock.json
generated
@@ -21,7 +21,7 @@
|
|||||||
"@radix-ui/react-slot": "^1.1.2",
|
"@radix-ui/react-slot": "^1.1.2",
|
||||||
"@radix-ui/react-switch": "^1.1.3",
|
"@radix-ui/react-switch": "^1.1.3",
|
||||||
"@radix-ui/react-tabs": "^1.1.3",
|
"@radix-ui/react-tabs": "^1.1.3",
|
||||||
"@radix-ui/react-tooltip": "^1.1.8",
|
"@radix-ui/react-tooltip": "^1.2.0",
|
||||||
"@tanstack/react-query": "^5.71.1",
|
"@tanstack/react-query": "^5.71.1",
|
||||||
"chart.js": "^4.4.8",
|
"chart.js": "^4.4.8",
|
||||||
"chartjs-plugin-datalabels": "^2.2.0",
|
"chartjs-plugin-datalabels": "^2.2.0",
|
||||||
@@ -2570,23 +2570,23 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@radix-ui/react-tooltip": {
|
"node_modules/@radix-ui/react-tooltip": {
|
||||||
"version": "1.1.8",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.1.8.tgz",
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.0.tgz",
|
||||||
"integrity": "sha512-YAA2cu48EkJZdAMHC0dqo9kialOcRStbtiY4nJPaht7Ptrhcvpo+eDChaM6BIs8kL6a8Z5l5poiqLnXcNduOkA==",
|
"integrity": "sha512-b1Sdc75s7zN9B8ONQTGBSHL3XS8+IcjcOIY51fhM4R1Hx8s0YbgqgyNZiri4qcYMVZK8hfCZVBiyCm7N9rs0rw==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@radix-ui/primitive": "1.1.1",
|
"@radix-ui/primitive": "1.1.2",
|
||||||
"@radix-ui/react-compose-refs": "1.1.1",
|
"@radix-ui/react-compose-refs": "1.1.2",
|
||||||
"@radix-ui/react-context": "1.1.1",
|
"@radix-ui/react-context": "1.1.2",
|
||||||
"@radix-ui/react-dismissable-layer": "1.1.5",
|
"@radix-ui/react-dismissable-layer": "1.1.6",
|
||||||
"@radix-ui/react-id": "1.1.0",
|
"@radix-ui/react-id": "1.1.1",
|
||||||
"@radix-ui/react-popper": "1.2.2",
|
"@radix-ui/react-popper": "1.2.3",
|
||||||
"@radix-ui/react-portal": "1.1.4",
|
"@radix-ui/react-portal": "1.1.5",
|
||||||
"@radix-ui/react-presence": "1.1.2",
|
"@radix-ui/react-presence": "1.1.3",
|
||||||
"@radix-ui/react-primitive": "2.0.2",
|
"@radix-ui/react-primitive": "2.0.3",
|
||||||
"@radix-ui/react-slot": "1.1.2",
|
"@radix-ui/react-slot": "1.2.0",
|
||||||
"@radix-ui/react-use-controllable-state": "1.1.0",
|
"@radix-ui/react-use-controllable-state": "1.1.1",
|
||||||
"@radix-ui/react-visually-hidden": "1.1.2"
|
"@radix-ui/react-visually-hidden": "1.1.3"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@types/react": "*",
|
"@types/react": "*",
|
||||||
@@ -2603,6 +2603,362 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/primitive": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.2.tgz",
|
||||||
|
"integrity": "sha512-XnbHrrprsNqZKQhStrSwgRUQzoCI1glLzdw79xiZPoofhGICeZRSQ3dIxAKH1gb3OHfNf4d6f+vAv3kil2eggA==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-arrow": {
|
||||||
|
"version": "1.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.3.tgz",
|
||||||
|
"integrity": "sha512-2dvVU4jva0qkNZH6HHWuSz5FN5GeU5tymvCgutF8WaXz9WnD1NgUhy73cqzkjkN4Zkn8lfTPv5JIfrC221W+Nw==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-primitive": "2.0.3"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-compose-refs": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz",
|
||||||
|
"integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-context": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
|
||||||
|
"integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-dismissable-layer": {
|
||||||
|
"version": "1.1.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.6.tgz",
|
||||||
|
"integrity": "sha512-7gpgMT2gyKym9Jz2ZhlRXSg2y6cNQIK8d/cqBZ0RBCaps8pFryCWXiUKI+uHGFrhMrbGUP7U6PWgiXzIxoyF3Q==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/primitive": "1.1.2",
|
||||||
|
"@radix-ui/react-compose-refs": "1.1.2",
|
||||||
|
"@radix-ui/react-primitive": "2.0.3",
|
||||||
|
"@radix-ui/react-use-callback-ref": "1.1.1",
|
||||||
|
"@radix-ui/react-use-escape-keydown": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-id": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-use-layout-effect": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-popper": {
|
||||||
|
"version": "1.2.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.3.tgz",
|
||||||
|
"integrity": "sha512-iNb9LYUMkne9zIahukgQmHlSBp9XWGeQQ7FvUGNk45ywzOb6kQa+Ca38OphXlWDiKvyneo9S+KSJsLfLt8812A==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@floating-ui/react-dom": "^2.0.0",
|
||||||
|
"@radix-ui/react-arrow": "1.1.3",
|
||||||
|
"@radix-ui/react-compose-refs": "1.1.2",
|
||||||
|
"@radix-ui/react-context": "1.1.2",
|
||||||
|
"@radix-ui/react-primitive": "2.0.3",
|
||||||
|
"@radix-ui/react-use-callback-ref": "1.1.1",
|
||||||
|
"@radix-ui/react-use-layout-effect": "1.1.1",
|
||||||
|
"@radix-ui/react-use-rect": "1.1.1",
|
||||||
|
"@radix-ui/react-use-size": "1.1.1",
|
||||||
|
"@radix-ui/rect": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-portal": {
|
||||||
|
"version": "1.1.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.5.tgz",
|
||||||
|
"integrity": "sha512-ps/67ZqsFm+Mb6lSPJpfhRLrVL2i2fntgCmGMqqth4eaGUf+knAuuRtWVJrNjUhExgmdRqftSgzpf0DF0n6yXA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-primitive": "2.0.3",
|
||||||
|
"@radix-ui/react-use-layout-effect": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-presence": {
|
||||||
|
"version": "1.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.3.tgz",
|
||||||
|
"integrity": "sha512-IrVLIhskYhH3nLvtcBLQFZr61tBG7wx7O3kEmdzcYwRGAEBmBicGGL7ATzNgruYJ3xBTbuzEEq9OXJM3PAX3tA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-compose-refs": "1.1.2",
|
||||||
|
"@radix-ui/react-use-layout-effect": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive": {
|
||||||
|
"version": "2.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.3.tgz",
|
||||||
|
"integrity": "sha512-Pf/t/GkndH7CQ8wE2hbkXA+WyZ83fhQQn5DDmwDiDo6AwN/fhaH8oqZ0jRjMrO2iaMhDi6P1HRx6AZwyMinY1g==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-slot": "1.2.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-slot": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.0.tgz",
|
||||||
|
"integrity": "sha512-ujc+V6r0HNDviYqIK3rW4ffgYiZ8g5DEHrGJVk4x7kTlLXRDILnKX9vAUYeIsLOoDpDJ0ujpqMkjH4w2ofuo6w==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-compose-refs": "1.1.2"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-use-callback-ref": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-use-controllable-state": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-YnEXIy8/ga01Y1PN0VfaNH//MhA91JlEGVBDxDzROqwrAtG5Yr2QGEPz8A/rJA3C7ZAHryOYGaUv8fLSW2H/mg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-use-callback-ref": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-use-escape-keydown": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-use-callback-ref": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-use-layout-effect": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-use-rect": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/rect": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-use-size": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-use-layout-effect": "1.1.1"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-visually-hidden": {
|
||||||
|
"version": "1.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.3.tgz",
|
||||||
|
"integrity": "sha512-oXSF3ZQRd5fvomd9hmUCb2EHSZbPp3ZSHAHJJU/DlF9XoFkJBBW8RHU/E8WEH+RbSfJd/QFA0sl8ClJXknBwHQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@radix-ui/react-primitive": "2.0.3"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@types/react": "*",
|
||||||
|
"@types/react-dom": "*",
|
||||||
|
"react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
|
||||||
|
"react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@types/react": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@types/react-dom": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/rect": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/@radix-ui/react-use-callback-ref": {
|
"node_modules/@radix-ui/react-use-callback-ref": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz",
|
||||||
@@ -9667,9 +10023,9 @@
|
|||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/vite": {
|
"node_modules/vite": {
|
||||||
"version": "6.2.5",
|
"version": "6.2.6",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-6.2.5.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz",
|
||||||
"integrity": "sha512-j023J/hCAa4pRIUH6J9HemwYfjB5llR2Ps0CWeikOtdR8+pAURAk0DoJC5/mm9kd+UgdnIy7d6HE4EAvlYhPhA==",
|
"integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
"@radix-ui/react-slot": "^1.1.2",
|
"@radix-ui/react-slot": "^1.1.2",
|
||||||
"@radix-ui/react-switch": "^1.1.3",
|
"@radix-ui/react-switch": "^1.1.3",
|
||||||
"@radix-ui/react-tabs": "^1.1.3",
|
"@radix-ui/react-tabs": "^1.1.3",
|
||||||
"@radix-ui/react-tooltip": "^1.1.8",
|
"@radix-ui/react-tooltip": "^1.2.0",
|
||||||
"@tanstack/react-query": "^5.71.1",
|
"@tanstack/react-query": "^5.71.1",
|
||||||
"chart.js": "^4.4.8",
|
"chart.js": "^4.4.8",
|
||||||
"chartjs-plugin-datalabels": "^2.2.0",
|
"chartjs-plugin-datalabels": "^2.2.0",
|
||||||
|
|||||||
@@ -24,6 +24,17 @@
|
|||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "12"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "alpine",
|
||||||
|
"script": "ct/alpine-adguard.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 1,
|
||||||
|
"ram": 256,
|
||||||
|
"hdd": 1,
|
||||||
|
"os": "alpine",
|
||||||
|
"version": "3.21"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"default_credentials": {
|
"default_credentials": {
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
"script": "ct/omada.sh",
|
"script": "ct/omada.sh",
|
||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 2,
|
"cpu": 2,
|
||||||
"ram": 2048,
|
"ram": 3072,
|
||||||
"hdd": 8,
|
"hdd": 8,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "12"
|
||||||
|
|||||||
39
frontend/public/json/openziti-controller.json
Normal file
39
frontend/public/json/openziti-controller.json
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
"name": "openziti-controller",
|
||||||
|
"slug": "openziti-controller",
|
||||||
|
"categories": [
|
||||||
|
4
|
||||||
|
],
|
||||||
|
"date_created": "2025-04-14",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": null,
|
||||||
|
"documentation": "https://openziti.io/docs/reference/tunnelers/docker/",
|
||||||
|
"website": "https://www.openziti.io/",
|
||||||
|
"logo": "https://raw.githubusercontent.com/openziti/ziti-doc/main/docusaurus/static/img/ziti-logo-dark.svg",
|
||||||
|
"description": "OpenZiti is an open-source, zero trust networking platform that enables secure connectivity between applications, services, and devices. It provides secure, encrypted connections between clients and services, and can be used to create secure, zero trust networks.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/openziti-controller.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 2,
|
||||||
|
"ram": 1024,
|
||||||
|
"hdd": 8,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "The Openziti Controller installation will prompt for configuration settings during installation.",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -30,5 +30,10 @@
|
|||||||
"username": "admin@paymenter.org",
|
"username": "admin@paymenter.org",
|
||||||
"password": "paymenter"
|
"password": "paymenter"
|
||||||
},
|
},
|
||||||
"notes": []
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "After installation, navigate to the directory with `cd /opt/paymenter` and run `php artisan app:init`. An interactive setup will prompt you to enter your company name and application URL.",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"name": "Radicale",
|
"name": "Radicale",
|
||||||
"slug": "radicale",
|
"slug": "radicale",
|
||||||
"categories": [
|
"categories": [
|
||||||
6
|
0
|
||||||
],
|
],
|
||||||
"date_created": "2025-02-02",
|
"date_created": "2025-02-02",
|
||||||
"type": "ct",
|
"type": "ct",
|
||||||
@@ -40,4 +40,4 @@
|
|||||||
"type": "info"
|
"type": "info"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
},
|
},
|
||||||
"notes":[
|
"notes":[
|
||||||
{
|
{
|
||||||
"text":"if you not choose the install setup, execute: `/opt/mssql/bin/mssql-conf setup` in LXC shell.",
|
"text":"If you choose not to run the installation setup, execute: `/opt/mssql/bin/mssql-conf setup` in LXC shell.",
|
||||||
"type":"info"
|
"type":"info"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
"type":"info"
|
"type":"info"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"text":"Do disable the SA account if you intent to use this in production!",
|
"text":"Make sure you disable the SA account if you intend to use this in production!",
|
||||||
"type":"warning"
|
"type":"warning"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,13 +1,48 @@
|
|||||||
[
|
[
|
||||||
|
{
|
||||||
|
"name": "Graylog2/graylog2-server",
|
||||||
|
"version": "6.2.0-rc.1",
|
||||||
|
"date": "2025-04-14T11:26:18Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "fhem/fhem-mirror",
|
"name": "fhem/fhem-mirror",
|
||||||
"version": "6.2",
|
"version": "6.2",
|
||||||
"date": "2025-04-10T10:34:26Z"
|
"date": "2025-04-14T10:36:18Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "n8n-io/n8n",
|
"name": "bluenviron/mediamtx",
|
||||||
"version": "n8n@1.86.1",
|
"version": "v1.12.0",
|
||||||
"date": "2025-04-09T09:20:55Z"
|
"date": "2025-04-14T10:36:04Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Stirling-Tools/Stirling-PDF",
|
||||||
|
"version": "v0.45.5",
|
||||||
|
"date": "2025-04-14T09:57:39Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "open-webui/open-webui",
|
||||||
|
"version": "v0.6.5",
|
||||||
|
"date": "2025-04-14T09:13:36Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "zwave-js/zwave-js-ui",
|
||||||
|
"version": "v10.2.0",
|
||||||
|
"date": "2025-04-14T08:53:44Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "zabbix/zabbix",
|
||||||
|
"version": "6.0.40rc1",
|
||||||
|
"date": "2025-04-14T08:45:46Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "duplicati/duplicati",
|
||||||
|
"version": "v2.1.0.114-2.1.0.114_canary_2025-04-14",
|
||||||
|
"date": "2025-04-14T07:54:21Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "evcc-io/evcc",
|
||||||
|
"version": "0.203.1",
|
||||||
|
"date": "2025-04-14T07:23:02Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "morpheus65535/bazarr",
|
"name": "morpheus65535/bazarr",
|
||||||
@@ -16,18 +51,238 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Jackett/Jackett",
|
"name": "Jackett/Jackett",
|
||||||
"version": "v0.22.1756",
|
"version": "v0.22.1775",
|
||||||
"date": "2025-04-10T05:56:27Z"
|
"date": "2025-04-14T05:59:53Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "outline/outline",
|
"name": "firefly-iii/firefly-iii",
|
||||||
"version": "v0.82.1-23",
|
"version": "v6.2.10",
|
||||||
"date": "2025-04-10T03:51:33Z"
|
"date": "2025-03-22T13:02:26Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "glanceapp/glance",
|
"name": "glanceapp/glance",
|
||||||
"version": "v0.7.10",
|
"version": "v0.7.12",
|
||||||
"date": "2025-04-09T23:51:06Z"
|
"date": "2025-04-14T00:16:15Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ellite/Wallos",
|
||||||
|
"version": "v2.49.1",
|
||||||
|
"date": "2025-04-13T22:36:24Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "rogerfar/rdt-client",
|
||||||
|
"version": "v2.0.108",
|
||||||
|
"date": "2025-04-13T22:17:55Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "autobrr/autobrr",
|
||||||
|
"version": "v1.61.0",
|
||||||
|
"date": "2025-04-13T21:14:40Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Ombi-app/Ombi",
|
||||||
|
"version": "v4.47.1",
|
||||||
|
"date": "2025-01-05T21:14:23Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pocket-id/pocket-id",
|
||||||
|
"version": "v0.46.0",
|
||||||
|
"date": "2025-04-13T18:31:13Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "runtipi/runtipi",
|
||||||
|
"version": "v3.10.0",
|
||||||
|
"date": "2025-03-15T14:38:16Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "keycloak/keycloak",
|
||||||
|
"version": "26.2.0",
|
||||||
|
"date": "2025-04-11T12:48:27Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "karakeep-app/karakeep",
|
||||||
|
"version": "mcp/v0.23.4",
|
||||||
|
"date": "2025-04-13T14:09:19Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "syncthing/syncthing",
|
||||||
|
"version": "v2.0.0-beta.9",
|
||||||
|
"date": "2025-04-12T13:58:29Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "qbittorrent/qBittorrent",
|
||||||
|
"version": "release-5.0.5",
|
||||||
|
"date": "2025-04-13T07:55:55Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Lidarr/Lidarr",
|
||||||
|
"version": "v2.10.3.4602",
|
||||||
|
"date": "2025-03-23T11:00:37Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Readarr/Readarr",
|
||||||
|
"version": "v2.0.0.4645",
|
||||||
|
"date": "2017-03-07T18:56:06Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Prowlarr/Prowlarr",
|
||||||
|
"version": "v1.33.3.5008",
|
||||||
|
"date": "2025-04-09T17:58:37Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Radarr/Radarr",
|
||||||
|
"version": "v5.21.1.9799",
|
||||||
|
"date": "2025-03-24T15:52:12Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "slskd/slskd",
|
||||||
|
"version": "0.22.4",
|
||||||
|
"date": "2025-04-13T00:14:13Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Tautulli/Tautulli",
|
||||||
|
"version": "v2.15.2",
|
||||||
|
"date": "2025-04-12T23:27:51Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "StarFleetCPTN/GoMFT",
|
||||||
|
"version": "v0.2.11",
|
||||||
|
"date": "2025-04-12T21:13:08Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semaphoreui/semaphore",
|
||||||
|
"version": "v2.14.0-beta1",
|
||||||
|
"date": "2025-04-12T20:14:09Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "MediaBrowser/Emby.Releases",
|
||||||
|
"version": "4.8.11.0",
|
||||||
|
"date": "2025-03-10T06:39:11Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "home-assistant/core",
|
||||||
|
"version": "2025.4.2",
|
||||||
|
"date": "2025-04-12T09:46:22Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "readeck/readeck",
|
||||||
|
"version": "0.18.0",
|
||||||
|
"date": "2025-04-12T08:55:32Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Bubka/2FAuth",
|
||||||
|
"version": "v5.5.2",
|
||||||
|
"date": "2025-04-11T22:00:06Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "homarr-labs/homarr",
|
||||||
|
"version": "v1.16.0",
|
||||||
|
"date": "2025-04-11T19:15:24Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "rabbitmq/rabbitmq-server",
|
||||||
|
"version": "v4.0.8",
|
||||||
|
"date": "2025-04-03T05:11:15Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "tailscale/tailscale",
|
||||||
|
"version": "v1.82.4",
|
||||||
|
"date": "2025-04-11T17:58:09Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "coder/code-server",
|
||||||
|
"version": "v4.99.2",
|
||||||
|
"date": "2025-04-11T17:57:47Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "TriliumNext/Notes",
|
||||||
|
"version": "v0.0.0",
|
||||||
|
"date": "2025-04-11T14:18:00Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "emqx/emqx",
|
||||||
|
"version": "e5.9.0-beta.3",
|
||||||
|
"date": "2025-04-11T14:17:53Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "NLnetLabs/unbound",
|
||||||
|
"version": "release-1.23.0rc2",
|
||||||
|
"date": "2025-04-11T13:24:25Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "docmost/docmost",
|
||||||
|
"version": "v0.10.1",
|
||||||
|
"date": "2025-04-11T12:42:08Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "dgtlmoon/changedetection.io",
|
||||||
|
"version": "0.49.13",
|
||||||
|
"date": "2025-04-11T11:48:06Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sabnzbd/sabnzbd",
|
||||||
|
"version": "4.5.1",
|
||||||
|
"date": "2025-04-11T09:57:47Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "home-assistant/operating-system",
|
||||||
|
"version": "15.1",
|
||||||
|
"date": "2025-03-31T13:42:20Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "outline/outline",
|
||||||
|
"version": "v0.83.0",
|
||||||
|
"date": "2025-04-11T03:53:10Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "openobserve/openobserve",
|
||||||
|
"version": "v0.14.6-rc3",
|
||||||
|
"date": "2025-04-11T03:08:28Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Luligu/matterbridge",
|
||||||
|
"version": "2.2.8",
|
||||||
|
"date": "2025-04-10T20:30:49Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "netbox-community/netbox",
|
||||||
|
"version": "v4.2.7",
|
||||||
|
"date": "2025-04-10T20:08:13Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "gristlabs/grist-core",
|
||||||
|
"version": "v1.5.1",
|
||||||
|
"date": "2025-04-10T19:48:43Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "apache/cassandra",
|
||||||
|
"version": "cassandra-5.0.4",
|
||||||
|
"date": "2025-04-10T16:32:00Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||||
|
"version": "v1.18.0-victorialogs",
|
||||||
|
"date": "2025-04-10T15:05:20Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "NodeBB/NodeBB",
|
||||||
|
"version": "v4.2.1",
|
||||||
|
"date": "2025-04-10T14:03:47Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Paymenter/Paymenter",
|
||||||
|
"version": "v1.0.3",
|
||||||
|
"date": "2025-04-10T13:57:39Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "docker/compose",
|
||||||
|
"version": "v2.35.0",
|
||||||
|
"date": "2025-04-10T13:45:22Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "n8n-io/n8n",
|
||||||
|
"version": "n8n@1.86.1",
|
||||||
|
"date": "2025-04-09T09:20:55Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "mongodb/mongo",
|
"name": "mongodb/mongo",
|
||||||
@@ -39,46 +294,11 @@
|
|||||||
"version": "v2.15.1",
|
"version": "v2.15.1",
|
||||||
"date": "2025-04-09T22:26:39Z"
|
"date": "2025-04-09T22:26:39Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "syncthing/syncthing",
|
|
||||||
"version": "v2.0.0-beta.7",
|
|
||||||
"date": "2025-04-09T13:41:32Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "NodeBB/NodeBB",
|
|
||||||
"version": "v4.2.0",
|
|
||||||
"date": "2025-03-19T18:34:01Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "docmost/docmost",
|
|
||||||
"version": "v0.10.0",
|
|
||||||
"date": "2025-04-09T18:58:20Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Prowlarr/Prowlarr",
|
|
||||||
"version": "v1.33.3.5008",
|
|
||||||
"date": "2025-04-09T17:58:37Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "jupyter/notebook",
|
"name": "jupyter/notebook",
|
||||||
"version": "v7.4.0",
|
"version": "v7.4.0",
|
||||||
"date": "2025-04-09T17:36:14Z"
|
"date": "2025-04-09T17:36:14Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "MediaBrowser/Emby.Releases",
|
|
||||||
"version": "4.8.11.0",
|
|
||||||
"date": "2025-03-10T06:39:11Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Stirling-Tools/Stirling-PDF",
|
|
||||||
"version": "v0.45.3",
|
|
||||||
"date": "2025-04-09T17:17:58Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "keycloak/keycloak",
|
|
||||||
"version": "26.1.4",
|
|
||||||
"date": "2025-03-13T15:41:42Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Brandawg93/PeaNUT",
|
"name": "Brandawg93/PeaNUT",
|
||||||
"version": "v5.7.1",
|
"version": "v5.7.1",
|
||||||
@@ -89,21 +309,11 @@
|
|||||||
"version": "10.0.18",
|
"version": "10.0.18",
|
||||||
"date": "2025-02-12T11:07:02Z"
|
"date": "2025-02-12T11:07:02Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "slskd/slskd",
|
|
||||||
"version": "0.22.3",
|
|
||||||
"date": "2025-04-09T14:02:12Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "HabitRPG/habitica",
|
"name": "HabitRPG/habitica",
|
||||||
"version": "v5.35.2",
|
"version": "v5.35.2",
|
||||||
"date": "2025-04-09T13:46:58Z"
|
"date": "2025-04-09T13:46:58Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "homarr-labs/homarr",
|
|
||||||
"version": "v1.15.0",
|
|
||||||
"date": "2025-04-09T13:27:14Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "zitadel/zitadel",
|
"name": "zitadel/zitadel",
|
||||||
"version": "v2.69.10",
|
"version": "v2.69.10",
|
||||||
@@ -119,31 +329,11 @@
|
|||||||
"version": "2025.3.3",
|
"version": "2025.3.3",
|
||||||
"date": "2025-03-31T22:07:05Z"
|
"date": "2025-03-31T22:07:05Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "runtipi/runtipi",
|
|
||||||
"version": "v3.10.0",
|
|
||||||
"date": "2025-03-15T14:38:16Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "StarFleetCPTN/GoMFT",
|
|
||||||
"version": "v0.2.7",
|
|
||||||
"date": "2025-04-09T04:53:30Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "OliveTin/OliveTin",
|
"name": "OliveTin/OliveTin",
|
||||||
"version": "2025.4.8",
|
"version": "2025.4.8",
|
||||||
"date": "2025-04-08T22:02:50Z"
|
"date": "2025-04-08T22:02:50Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "coder/code-server",
|
|
||||||
"version": "v4.99.1",
|
|
||||||
"date": "2025-04-08T21:35:21Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "semaphoreui/semaphore",
|
|
||||||
"version": "v2.13.12",
|
|
||||||
"date": "2025-04-08T20:54:58Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "minio/minio",
|
"name": "minio/minio",
|
||||||
"version": "RELEASE.2025-04-08T15-41-24Z",
|
"version": "RELEASE.2025-04-08T15-41-24Z",
|
||||||
@@ -169,11 +359,6 @@
|
|||||||
"version": "v0.107.59",
|
"version": "v0.107.59",
|
||||||
"date": "2025-03-21T11:11:39Z"
|
"date": "2025-03-21T11:11:39Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "openobserve/openobserve",
|
|
||||||
"version": "v0.14.6-rc2",
|
|
||||||
"date": "2025-04-08T14:42:54Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "element-hq/synapse",
|
"name": "element-hq/synapse",
|
||||||
"version": "v1.128.0",
|
"version": "v1.128.0",
|
||||||
@@ -189,11 +374,6 @@
|
|||||||
"version": "v0.303.0-rc.1",
|
"version": "v0.303.0-rc.1",
|
||||||
"date": "2025-04-07T04:39:38Z"
|
"date": "2025-04-07T04:39:38Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "NLnetLabs/unbound",
|
|
||||||
"version": "release-1.23.0rc1",
|
|
||||||
"date": "2025-04-08T06:39:46Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "pelican-dev/panel",
|
"name": "pelican-dev/panel",
|
||||||
"version": "v1.0.0-beta19",
|
"version": "v1.0.0-beta19",
|
||||||
@@ -229,41 +409,16 @@
|
|||||||
"version": "v1.10.0",
|
"version": "v1.10.0",
|
||||||
"date": "2025-04-07T14:32:15Z"
|
"date": "2025-04-07T14:32:15Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "apache/cassandra",
|
|
||||||
"version": "5.0.4-tentative",
|
|
||||||
"date": "2025-04-07T12:05:05Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Graylog2/graylog2-server",
|
|
||||||
"version": "6.2.0-beta.4",
|
|
||||||
"date": "2025-04-07T11:28:13Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
|
||||||
"version": "pmm-6401-v1.115.0",
|
|
||||||
"date": "2025-04-07T11:15:53Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "fallenbagel/jellyseerr",
|
"name": "fallenbagel/jellyseerr",
|
||||||
"version": "preview-back-to-axios",
|
"version": "preview-back-to-axios",
|
||||||
"date": "2025-04-07T09:23:08Z"
|
"date": "2025-04-07T09:23:08Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "zwave-js/zwave-js-ui",
|
|
||||||
"version": "v10.1.5",
|
|
||||||
"date": "2025-04-07T09:19:35Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "redis/redis",
|
"name": "redis/redis",
|
||||||
"version": "8.0-rc1-int2",
|
"version": "8.0-rc1-int2",
|
||||||
"date": "2025-04-02T19:05:08Z"
|
"date": "2025-04-02T19:05:08Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "zabbix/zabbix",
|
|
||||||
"version": "7.4.0beta1",
|
|
||||||
"date": "2025-04-07T08:14:13Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "nzbgetcom/nzbget",
|
"name": "nzbgetcom/nzbget",
|
||||||
"version": "v24.8",
|
"version": "v24.8",
|
||||||
@@ -274,21 +429,6 @@
|
|||||||
"version": "server/public/v0.1.11",
|
"version": "server/public/v0.1.11",
|
||||||
"date": "2025-03-28T14:04:31Z"
|
"date": "2025-03-28T14:04:31Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "open-webui/open-webui",
|
|
||||||
"version": "v0.6.2",
|
|
||||||
"date": "2025-04-07T03:41:23Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "firefly-iii/firefly-iii",
|
|
||||||
"version": "v6.2.10",
|
|
||||||
"date": "2025-03-22T13:02:26Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Luligu/matterbridge",
|
|
||||||
"version": "2.2.7",
|
|
||||||
"date": "2025-04-06T20:00:53Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Dolibarr/dolibarr",
|
"name": "Dolibarr/dolibarr",
|
||||||
"version": "21.0.1",
|
"version": "21.0.1",
|
||||||
@@ -319,26 +459,11 @@
|
|||||||
"version": "v1.19.7",
|
"version": "v1.19.7",
|
||||||
"date": "2025-04-06T14:22:44Z"
|
"date": "2025-04-06T14:22:44Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Radarr/Radarr",
|
|
||||||
"version": "v5.21.1.9799",
|
|
||||||
"date": "2025-03-24T15:52:12Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "karakeep-app/karakeep",
|
|
||||||
"version": "extension/v1.2.4",
|
|
||||||
"date": "2025-04-06T11:56:18Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "TechnitiumSoftware/DnsServer",
|
"name": "TechnitiumSoftware/DnsServer",
|
||||||
"version": "v13.5.0",
|
"version": "v13.5.0",
|
||||||
"date": "2025-04-06T11:24:50Z"
|
"date": "2025-04-06T11:24:50Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "TriliumNext/Notes",
|
|
||||||
"version": "v0.92.6",
|
|
||||||
"date": "2025-04-06T10:38:54Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "kimai/kimai",
|
"name": "kimai/kimai",
|
||||||
"version": "2.32.0",
|
"version": "2.32.0",
|
||||||
@@ -369,11 +494,6 @@
|
|||||||
"version": "2.3",
|
"version": "2.3",
|
||||||
"date": "2025-04-05T18:05:36Z"
|
"date": "2025-04-05T18:05:36Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Paymenter/Paymenter",
|
|
||||||
"version": "v1.0.2",
|
|
||||||
"date": "2025-04-05T17:40:25Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "bastienwirtz/homer",
|
"name": "bastienwirtz/homer",
|
||||||
"version": "v25.04.1",
|
"version": "v25.04.1",
|
||||||
@@ -394,11 +514,6 @@
|
|||||||
"version": "v25.4.0",
|
"version": "v25.4.0",
|
||||||
"date": "2025-04-05T04:14:57Z"
|
"date": "2025-04-05T04:14:57Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "home-assistant/core",
|
|
||||||
"version": "2025.4.1",
|
|
||||||
"date": "2025-04-04T20:59:57Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Koenkk/zigbee2mqtt",
|
"name": "Koenkk/zigbee2mqtt",
|
||||||
"version": "2.2.1",
|
"version": "2.2.1",
|
||||||
@@ -419,26 +534,11 @@
|
|||||||
"version": "9.0.104",
|
"version": "9.0.104",
|
||||||
"date": "2025-04-04T12:58:11Z"
|
"date": "2025-04-04T12:58:11Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "sabnzbd/sabnzbd",
|
|
||||||
"version": "4.5.0",
|
|
||||||
"date": "2025-03-30T16:17:11Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "dgtlmoon/changedetection.io",
|
|
||||||
"version": "0.49.12",
|
|
||||||
"date": "2025-04-04T07:31:08Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "OctoPrint/OctoPrint",
|
"name": "OctoPrint/OctoPrint",
|
||||||
"version": "1.10.3",
|
"version": "1.10.3",
|
||||||
"date": "2024-11-05T09:20:50Z"
|
"date": "2024-11-05T09:20:50Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "rabbitmq/rabbitmq-server",
|
|
||||||
"version": "v4.0.8",
|
|
||||||
"date": "2025-04-03T05:11:15Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "BookStackApp/BookStack",
|
"name": "BookStackApp/BookStack",
|
||||||
"version": "v25.02.2",
|
"version": "v25.02.2",
|
||||||
@@ -489,11 +589,6 @@
|
|||||||
"version": "v3.3.5",
|
"version": "v3.3.5",
|
||||||
"date": "2025-03-31T08:55:12Z"
|
"date": "2025-03-31T08:55:12Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "home-assistant/operating-system",
|
|
||||||
"version": "15.1",
|
|
||||||
"date": "2025-03-31T13:42:20Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "documenso/documenso",
|
"name": "documenso/documenso",
|
||||||
"version": "v1.10.0-rc.4",
|
"version": "v1.10.0-rc.4",
|
||||||
@@ -524,26 +619,11 @@
|
|||||||
"version": "v0.26.6",
|
"version": "v0.26.6",
|
||||||
"date": "2025-03-30T08:02:19Z"
|
"date": "2025-03-30T08:02:19Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Readarr/Readarr",
|
|
||||||
"version": "v2.0.0.4645",
|
|
||||||
"date": "2017-03-07T18:56:06Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Lidarr/Lidarr",
|
|
||||||
"version": "v2.10.3.4602",
|
|
||||||
"date": "2025-03-23T11:00:37Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "aceberg/WatchYourLAN",
|
"name": "aceberg/WatchYourLAN",
|
||||||
"version": "2.1.2-alpine",
|
"version": "2.1.2-alpine",
|
||||||
"date": "2025-03-30T06:25:22Z"
|
"date": "2025-03-30T06:25:22Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "pocket-id/pocket-id",
|
|
||||||
"version": "v0.45.0",
|
|
||||||
"date": "2025-03-29T23:12:22Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "tobychui/zoraxy",
|
"name": "tobychui/zoraxy",
|
||||||
"version": "v3.1.9",
|
"version": "v3.1.9",
|
||||||
@@ -564,11 +644,6 @@
|
|||||||
"version": "v4.2.3",
|
"version": "v4.2.3",
|
||||||
"date": "2025-02-09T23:07:48Z"
|
"date": "2025-02-09T23:07:48Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "gristlabs/grist-core",
|
|
||||||
"version": "v1.5.0",
|
|
||||||
"date": "2025-03-28T20:43:51Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "grocy/grocy",
|
"name": "grocy/grocy",
|
||||||
"version": "v4.5.0",
|
"version": "v4.5.0",
|
||||||
@@ -579,11 +654,6 @@
|
|||||||
"version": "2.0.0-beta.2-temp",
|
"version": "2.0.0-beta.2-temp",
|
||||||
"date": "2025-03-28T08:45:58Z"
|
"date": "2025-03-28T08:45:58Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "emqx/emqx",
|
|
||||||
"version": "e5.9.0-beta.2",
|
|
||||||
"date": "2025-03-28T15:06:27Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "hakimel/reveal.js",
|
"name": "hakimel/reveal.js",
|
||||||
"version": "5.2.1",
|
"version": "5.2.1",
|
||||||
@@ -599,36 +669,11 @@
|
|||||||
"version": "v1.1.1",
|
"version": "v1.1.1",
|
||||||
"date": "2025-03-28T04:12:31Z"
|
"date": "2025-03-28T04:12:31Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Bubka/2FAuth",
|
|
||||||
"version": "v5.5.0",
|
|
||||||
"date": "2025-03-27T22:35:02Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "ellite/Wallos",
|
|
||||||
"version": "v2.48.1",
|
|
||||||
"date": "2025-03-27T22:02:16Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "hivemq/hivemq-community-edition",
|
"name": "hivemq/hivemq-community-edition",
|
||||||
"version": "2025.2",
|
"version": "2025.2",
|
||||||
"date": "2025-03-27T19:21:13Z"
|
"date": "2025-03-27T19:21:13Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "tailscale/tailscale",
|
|
||||||
"version": "v1.82.0",
|
|
||||||
"date": "2025-03-27T13:08:18Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "evcc-io/evcc",
|
|
||||||
"version": "0.202.1",
|
|
||||||
"date": "2025-03-27T08:24:55Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "duplicati/duplicati",
|
|
||||||
"version": "v2.1.0.112-2.1.0.112_canary_2025-03-26",
|
|
||||||
"date": "2025-03-26T21:04:38Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "forgejo/forgejo",
|
"name": "forgejo/forgejo",
|
||||||
"version": "v12.0.0-dev",
|
"version": "v12.0.0-dev",
|
||||||
@@ -674,6 +719,11 @@
|
|||||||
"version": "2025-03-24-r2",
|
"version": "2025-03-24-r2",
|
||||||
"date": "2025-03-24T20:52:35Z"
|
"date": "2025-03-24T20:52:35Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "nextcloud/nextcloudpi",
|
||||||
|
"version": "v1.55.4",
|
||||||
|
"date": "2025-03-24T11:31:02Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "requarks/wiki",
|
"name": "requarks/wiki",
|
||||||
"version": "v2.5.307",
|
"version": "v2.5.307",
|
||||||
@@ -694,11 +744,6 @@
|
|||||||
"version": "v0.24.2",
|
"version": "v0.24.2",
|
||||||
"date": "2025-03-23T04:01:50Z"
|
"date": "2025-03-23T04:01:50Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "netbox-community/netbox",
|
|
||||||
"version": "v4.2.6",
|
|
||||||
"date": "2025-03-21T21:20:29Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "leiweibau/Pi.Alert",
|
"name": "leiweibau/Pi.Alert",
|
||||||
"version": "v2025-03-21",
|
"version": "v2025-03-21",
|
||||||
@@ -759,11 +804,6 @@
|
|||||||
"version": "2.303",
|
"version": "2.303",
|
||||||
"date": "2025-03-17T04:54:50Z"
|
"date": "2025-03-17T04:54:50Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "autobrr/autobrr",
|
|
||||||
"version": "v1.60.0",
|
|
||||||
"date": "2025-03-16T18:39:49Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "henrygd/beszel",
|
"name": "henrygd/beszel",
|
||||||
"version": "v0.10.2",
|
"version": "v0.10.2",
|
||||||
@@ -774,11 +814,6 @@
|
|||||||
"version": "flowise@2.2.7-patch.1",
|
"version": "flowise@2.2.7-patch.1",
|
||||||
"date": "2025-03-14T14:53:53Z"
|
"date": "2025-03-14T14:53:53Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "docker/compose",
|
|
||||||
"version": "v2.34.0",
|
|
||||||
"date": "2025-03-14T09:11:17Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "FreshRSS/FreshRSS",
|
"name": "FreshRSS/FreshRSS",
|
||||||
"version": "1.26.1",
|
"version": "1.26.1",
|
||||||
@@ -804,11 +839,6 @@
|
|||||||
"version": "v0.18.0",
|
"version": "v0.18.0",
|
||||||
"date": "2025-03-11T12:47:22Z"
|
"date": "2025-03-11T12:47:22Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Ombi-app/Ombi",
|
|
||||||
"version": "v4.47.1",
|
|
||||||
"date": "2025-01-05T21:14:23Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "mylar3/mylar3",
|
"name": "mylar3/mylar3",
|
||||||
"version": "v0.8.2",
|
"version": "v0.8.2",
|
||||||
@@ -834,11 +864,6 @@
|
|||||||
"version": "v2.17.0",
|
"version": "v2.17.0",
|
||||||
"date": "2025-03-08T06:08:04Z"
|
"date": "2025-03-08T06:08:04Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "rogerfar/rdt-client",
|
|
||||||
"version": "v2.0.102",
|
|
||||||
"date": "2025-03-07T20:48:46Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "prometheus/alertmanager",
|
"name": "prometheus/alertmanager",
|
||||||
"version": "v0.28.1",
|
"version": "v0.28.1",
|
||||||
@@ -929,11 +954,6 @@
|
|||||||
"version": "v28.0",
|
"version": "v28.0",
|
||||||
"date": "2025-02-18T15:49:57Z"
|
"date": "2025-02-18T15:49:57Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "qbittorrent/qBittorrent",
|
|
||||||
"version": "release-5.0.4",
|
|
||||||
"date": "2025-02-18T14:14:11Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "postgres/postgres",
|
"name": "postgres/postgres",
|
||||||
"version": "REL_13_20",
|
"version": "REL_13_20",
|
||||||
@@ -989,11 +1009,6 @@
|
|||||||
"version": "v0.15.0",
|
"version": "v0.15.0",
|
||||||
"date": "2025-02-08T18:45:30Z"
|
"date": "2025-02-08T18:45:30Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "bluenviron/mediamtx",
|
|
||||||
"version": "v1.11.3",
|
|
||||||
"date": "2025-02-07T19:29:19Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "apache/tika",
|
"name": "apache/tika",
|
||||||
"version": "2.9.3",
|
"version": "2.9.3",
|
||||||
@@ -1049,16 +1064,6 @@
|
|||||||
"version": "v0.5.7",
|
"version": "v0.5.7",
|
||||||
"date": "2025-01-17T15:57:17Z"
|
"date": "2025-01-17T15:57:17Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "readeck/readeck",
|
|
||||||
"version": "0.17.1",
|
|
||||||
"date": "2025-01-15T19:13:33Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Tautulli/Tautulli",
|
|
||||||
"version": "v2.15.1",
|
|
||||||
"date": "2025-01-11T23:38:33Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "traccar/traccar",
|
"name": "traccar/traccar",
|
||||||
"version": "v6.6",
|
"version": "v6.6",
|
||||||
@@ -1129,11 +1134,6 @@
|
|||||||
"version": "0.10.1",
|
"version": "0.10.1",
|
||||||
"date": "2024-11-10T10:25:45Z"
|
"date": "2024-11-10T10:25:45Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "nextcloud/nextcloudpi",
|
|
||||||
"version": "v1.55.3",
|
|
||||||
"date": "2024-11-08T22:21:10Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "caddyserver/xcaddy",
|
"name": "caddyserver/xcaddy",
|
||||||
"version": "v0.4.4",
|
"version": "v0.4.4",
|
||||||
|
|||||||
@@ -1,31 +1,29 @@
|
|||||||
import { Badge } from "@/components/ui/badge";
|
import { Badge, type BadgeProps } from "@/components/ui/badge";
|
||||||
import {
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/ui/tooltip";
|
||||||
Tooltip,
|
|
||||||
TooltipContent,
|
|
||||||
TooltipProvider,
|
|
||||||
TooltipTrigger,
|
|
||||||
} from "@/components/ui/tooltip";
|
|
||||||
import { Script } from "@/lib/types";
|
import { Script } from "@/lib/types";
|
||||||
|
import { cn } from "@/lib/utils";
|
||||||
import { CircleHelp } from "lucide-react";
|
import { CircleHelp } from "lucide-react";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
|
|
||||||
interface TooltipProps {
|
interface TooltipProps {
|
||||||
variant: "warning" | "success";
|
variant: BadgeProps["variant"];
|
||||||
label: string;
|
label: string;
|
||||||
content: string;
|
content?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
const TooltipBadge: React.FC<TooltipProps> = ({ variant, label, content }) => (
|
const TooltipBadge: React.FC<TooltipProps> = ({ variant, label, content }) => (
|
||||||
<TooltipProvider>
|
<TooltipProvider>
|
||||||
<Tooltip delayDuration={100}>
|
<Tooltip delayDuration={100}>
|
||||||
<TooltipTrigger className="flex items-center">
|
<TooltipTrigger className={cn("flex items-center", !content && "cursor-default")}>
|
||||||
<Badge variant={variant} className="flex items-center gap-1">
|
<Badge variant={variant} className="flex items-center gap-1">
|
||||||
{label} <CircleHelp className="size-3" />
|
{label} {content && <CircleHelp className="size-3" />}
|
||||||
</Badge>
|
</Badge>
|
||||||
</TooltipTrigger>
|
</TooltipTrigger>
|
||||||
|
{content && (
|
||||||
<TooltipContent side="bottom" className="text-sm max-w-64">
|
<TooltipContent side="bottom" className="text-sm max-w-64">
|
||||||
{content}
|
{content}
|
||||||
</TooltipContent>
|
</TooltipContent>
|
||||||
|
)}
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</TooltipProvider>
|
</TooltipProvider>
|
||||||
);
|
);
|
||||||
@@ -34,11 +32,7 @@ export default function Tooltips({ item }: { item: Script }) {
|
|||||||
return (
|
return (
|
||||||
<div className="flex items-center gap-2">
|
<div className="flex items-center gap-2">
|
||||||
{item.privileged && (
|
{item.privileged && (
|
||||||
<TooltipBadge
|
<TooltipBadge variant="warning" label="Privileged" content="This script will be run in a privileged LXC" />
|
||||||
variant="warning"
|
|
||||||
label="Privileged"
|
|
||||||
content="This script will be run in a privileged LXC"
|
|
||||||
/>
|
|
||||||
)}
|
)}
|
||||||
{item.updateable && (
|
{item.updateable && (
|
||||||
<TooltipBadge
|
<TooltipBadge
|
||||||
@@ -47,6 +41,7 @@ export default function Tooltips({ item }: { item: Script }) {
|
|||||||
content={`To Update ${item.name}, run the command below (or type update) in the LXC Console.`}
|
content={`To Update ${item.name}, run the command below (or type update) in the LXC Console.`}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
|
{!item.updateable && <TooltipBadge variant="failure" label="Not Updateable" />}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
"use client";
|
"use client"
|
||||||
|
|
||||||
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
import * as React from "react"
|
||||||
import * as React from "react";
|
import * as TooltipPrimitive from "@radix-ui/react-tooltip"
|
||||||
|
|
||||||
import { cn } from "@/lib/utils";
|
import { cn } from "@/lib/utils"
|
||||||
|
|
||||||
const TooltipProvider = TooltipPrimitive.Provider;
|
const TooltipProvider = TooltipPrimitive.Provider
|
||||||
|
|
||||||
const Tooltip = TooltipPrimitive.Root;
|
const Tooltip = TooltipPrimitive.Root
|
||||||
|
|
||||||
const TooltipTrigger = TooltipPrimitive.Trigger;
|
const TooltipTrigger = TooltipPrimitive.Trigger
|
||||||
|
|
||||||
const TooltipContent = React.forwardRef<
|
const TooltipContent = React.forwardRef<
|
||||||
React.ElementRef<typeof TooltipPrimitive.Content>,
|
React.ElementRef<typeof TooltipPrimitive.Content>,
|
||||||
@@ -19,12 +19,12 @@ const TooltipContent = React.forwardRef<
|
|||||||
ref={ref}
|
ref={ref}
|
||||||
sideOffset={sideOffset}
|
sideOffset={sideOffset}
|
||||||
className={cn(
|
className={cn(
|
||||||
"z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
"z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",
|
||||||
className,
|
className
|
||||||
)}
|
)}
|
||||||
{...props}
|
{...props}
|
||||||
/>
|
/>
|
||||||
));
|
))
|
||||||
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
TooltipContent.displayName = TooltipPrimitive.Content.displayName
|
||||||
|
|
||||||
export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
|
export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }
|
||||||
|
|||||||
@@ -20,13 +20,13 @@ $STD apt-get install -y \
|
|||||||
gpg
|
gpg
|
||||||
|
|
||||||
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
|
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
|
||||||
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
|
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" >/etc/apt/sources.list.d/php.list
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
|
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
nginx \
|
nginx \
|
||||||
composer \
|
composer \
|
||||||
php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,mbstring,mysql,xml,cli} \
|
php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,intl,mbstring,mysql,xml,cli} \
|
||||||
mariadb-server
|
mariadb-server
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
|||||||
47
install/alpine-adguard-install.sh
Normal file
47
install/alpine-adguard-install.sh
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: MickLesk (CanbiZ)
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://adguardhome.com/
|
||||||
|
|
||||||
|
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||||
|
color
|
||||||
|
verb_ip6
|
||||||
|
catch_errors
|
||||||
|
setting_up_container
|
||||||
|
network_check
|
||||||
|
update_os
|
||||||
|
|
||||||
|
msg_info "Downloading AdGuard Home"
|
||||||
|
$STD curl -fsSL -o /tmp/AdGuardHome_linux_amd64.tar.gz \
|
||||||
|
"https://github.com/AdguardTeam/AdGuardHome/releases/latest/download/AdGuardHome_linux_amd64.tar.gz"
|
||||||
|
msg_ok "Downloaded AdGuard Home"
|
||||||
|
|
||||||
|
msg_info "Installing AdGuard Home"
|
||||||
|
$STD tar -xzf /tmp/AdGuardHome_linux_amd64.tar.gz -C /opt
|
||||||
|
$STD rm /tmp/AdGuardHome_linux_amd64.tar.gz
|
||||||
|
msg_ok "Installed AdGuard Home"
|
||||||
|
|
||||||
|
msg_info "Creating AdGuard Home Service"
|
||||||
|
cat <<EOF >/etc/init.d/adguardhome
|
||||||
|
#!/sbin/openrc-run
|
||||||
|
name="AdGuardHome"
|
||||||
|
description="AdGuard Home Service"
|
||||||
|
command="/opt/AdGuardHome/AdGuardHome"
|
||||||
|
command_background="yes"
|
||||||
|
pidfile="/run/adguardhome.pid"
|
||||||
|
EOF
|
||||||
|
$STD chmod +x /etc/init.d/adguardhome
|
||||||
|
msg_ok "Created AdGuard Home Service"
|
||||||
|
|
||||||
|
msg_info "Enabling AdGuard Home Service"
|
||||||
|
$STD rc-update add adguardhome default
|
||||||
|
msg_ok "Enabled AdGuard Home Service"
|
||||||
|
|
||||||
|
msg_info "Starting AdGuard Home"
|
||||||
|
$STD rc-service adguardhome start
|
||||||
|
msg_ok "Started AdGuard Home"
|
||||||
|
|
||||||
|
motd_ssh
|
||||||
|
customize
|
||||||
@@ -61,10 +61,10 @@ case $DB_CHOICE in
|
|||||||
esac
|
esac
|
||||||
mkdir -p /opt/komodo
|
mkdir -p /opt/komodo
|
||||||
cd /opt/komodo
|
cd /opt/komodo
|
||||||
curl -fsSL "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/$DB_COMPOSE_FILE" -o $(basename "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/$DB_COMPOSE_FILE")
|
curl -fsSL "https://raw.githubusercontent.com/moghtech/komodo/main/compose/$DB_COMPOSE_FILE" -o $(basename "https://raw.githubusercontent.com/moghtech/komodo/main/compose/$DB_COMPOSE_FILE")
|
||||||
|
|
||||||
msg_info "Setup Komodo Environment"
|
msg_info "Setup Komodo Environment"
|
||||||
curl -fsSL "https://raw.githubusercontent.com/mbecker20/komodo/main/compose/compose.env" -o "/opt/komodo/compose.env"
|
curl -fsSL "https://raw.githubusercontent.com/moghtech/komodo/main/compose/compose.env" -o "/opt/komodo/compose.env"
|
||||||
DB_PASSWORD=$(openssl rand -base64 16 | tr -d '/+=')
|
DB_PASSWORD=$(openssl rand -base64 16 | tr -d '/+=')
|
||||||
PASSKEY=$(openssl rand -base64 24 | tr -d '/+=')
|
PASSKEY=$(openssl rand -base64 24 | tr -d '/+=')
|
||||||
WEBHOOK_SECRET=$(openssl rand -base64 24 | tr -d '/+=')
|
WEBHOOK_SECRET=$(openssl rand -base64 24 | tr -d '/+=')
|
||||||
|
|||||||
@@ -15,13 +15,22 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y gpg
|
$STD apt-get install -y \
|
||||||
|
gnupg2 \
|
||||||
|
lsb-release
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
msg_info "Setting up Adoptium Repository"
|
||||||
|
mkdir -p /etc/apt/keyrings
|
||||||
|
curl -fsSL "https://packages.adoptium.net/artifactory/api/gpg/key/public" | gpg --dearmor >/etc/apt/trusted.gpg.d/adoptium.gpg
|
||||||
|
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" >/etc/apt/sources.list.d/adoptium.list
|
||||||
|
msg_ok "Set up Adoptium Repository"
|
||||||
|
|
||||||
msg_info "Installing Neo4j (patience)"
|
msg_info "Installing Neo4j (patience)"
|
||||||
curl -fsSL "https://debian.neo4j.com/neotechnology.gpg.key" | gpg --dearmor -o /etc/apt/keyrings/neotechnology.gpg
|
curl -fsSL "https://debian.neo4j.com/neotechnology.gpg.key" | gpg --dearmor -o /etc/apt/keyrings/neotechnology.gpg
|
||||||
echo 'deb [signed-by=/etc/apt/keyrings/neotechnology.gpg] https://debian.neo4j.com stable latest' >/etc/apt/sources.list.d/neo4j.list
|
echo 'deb [signed-by=/etc/apt/keyrings/neotechnology.gpg] https://debian.neo4j.com stable latest' >/etc/apt/sources.list.d/neo4j.list
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
|
$STD apt-get install -y temurin-21-jre
|
||||||
$STD apt-get install -y neo4j
|
$STD apt-get install -y neo4j
|
||||||
sed -i '/server.default_listen_address/s/^#//' /etc/neo4j/neo4j.conf
|
sed -i '/server.default_listen_address/s/^#//' /etc/neo4j/neo4j.conf
|
||||||
systemctl enable -q --now neo4j
|
systemctl enable -q --now neo4j
|
||||||
|
|||||||
@@ -19,20 +19,17 @@ msg_ok "Installed Dependencies"
|
|||||||
|
|
||||||
msg_info "Checking CPU Features"
|
msg_info "Checking CPU Features"
|
||||||
if lscpu | grep -q 'avx'; then
|
if lscpu | grep -q 'avx'; then
|
||||||
USE_AVX=true
|
|
||||||
MONGODB_VERSION="7.0"
|
MONGODB_VERSION="7.0"
|
||||||
msg_ok "AVX detected: Using MongoDB 7.0"
|
msg_ok "AVX detected: Using MongoDB 7.0"
|
||||||
else
|
else
|
||||||
USE_AVX=false
|
|
||||||
MONGODB_VERSION="4.4"
|
|
||||||
msg_error "No AVX detected: TP-Link Canceled Support for Old MongoDB for Debian 12\n https://www.tp-link.com/baltic/support/faq/4160/"
|
msg_error "No AVX detected: TP-Link Canceled Support for Old MongoDB for Debian 12\n https://www.tp-link.com/baltic/support/faq/4160/"
|
||||||
exit 1
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Installing Azul Zulu Java"
|
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://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 $(basename "https://cdn.azul.com/zulu/bin/zulu-repo_1.0.0-3_all.deb")
|
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_1.0.0-3_all.deb
|
$STD dpkg -i zulu-repo.deb
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
$STD apt-get -y install zulu21-jre-headless
|
$STD apt-get -y install zulu21-jre-headless
|
||||||
msg_ok "Installed Azul Zulu Java"
|
msg_ok "Installed Azul Zulu Java"
|
||||||
@@ -43,8 +40,6 @@ if ! dpkg -l | grep -q 'libssl1.1'; then
|
|||||||
$STD dpkg -i /tmp/libssl.deb
|
$STD dpkg -i /tmp/libssl.deb
|
||||||
rm -f /tmp/libssl.deb
|
rm -f /tmp/libssl.deb
|
||||||
msg_ok "Installed libssl1.1"
|
msg_ok "Installed libssl1.1"
|
||||||
else
|
|
||||||
msg_ok "libssl1.1 already installed"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Installing MongoDB $MONGODB_VERSION"
|
msg_info "Installing MongoDB $MONGODB_VERSION"
|
||||||
@@ -55,18 +50,19 @@ $STD apt-get install -y mongodb-org
|
|||||||
msg_ok "Installed MongoDB $MONGODB_VERSION"
|
msg_ok "Installed MongoDB $MONGODB_VERSION"
|
||||||
|
|
||||||
msg_info "Installing Omada Controller"
|
msg_info "Installing Omada Controller"
|
||||||
latest_url=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" | grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' | head -n 1)
|
OMADA_URL=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" |
|
||||||
latest_version=$(basename "$latest_url")
|
grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' |
|
||||||
|
head -n1)
|
||||||
curl -fsSL "${latest_url}" -O
|
OMADA_PKG=$(basename "$OMADA_URL")
|
||||||
$STD dpkg -i ${latest_version}
|
curl -fsSL "$OMADA_URL" -o "$OMADA_PKG"
|
||||||
|
$STD dpkg -i "$OMADA_PKG"
|
||||||
msg_ok "Installed Omada Controller"
|
msg_ok "Installed Omada Controller"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
rm -rf ${latest_version} zulu-repo_1.0.0-3_all.deb
|
rm -rf "$OMADA_PKG" zulu-repo.deb
|
||||||
$STD apt-get -y autoremove
|
$STD apt-get -y autoremove
|
||||||
$STD apt-get -y autoclean
|
$STD apt-get -y autoclean
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|||||||
60
install/openziti-controller-install.sh
Normal file
60
install/openziti-controller-install.sh
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: emoscardini
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://github.com/openziti/ziti
|
||||||
|
|
||||||
|
source /dev/stdin <<< "$FUNCTIONS_FILE_PATH"
|
||||||
|
color
|
||||||
|
verb_ip6
|
||||||
|
catch_errors
|
||||||
|
setting_up_container
|
||||||
|
network_check
|
||||||
|
update_os
|
||||||
|
|
||||||
|
msg_info "Installing Dependencies"
|
||||||
|
$STD apt-get install -y gpg
|
||||||
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
msg_info "Installing openziti"
|
||||||
|
mkdir -p --mode=0755 /usr/share/keyrings
|
||||||
|
curl -fsSL https://get.openziti.io/tun/package-repos.gpg | gpg --dearmor -o /usr/share/keyrings/openziti.gpg
|
||||||
|
echo "deb [signed-by=/usr/share/keyrings/openziti.gpg] https://packages.openziti.org/zitipax-openziti-deb-stable debian main" >/etc/apt/sources.list.d/openziti.list
|
||||||
|
$STD apt-get update
|
||||||
|
$STD apt-get install -y openziti-controller openziti-console
|
||||||
|
msg_ok "Installed openziti"
|
||||||
|
|
||||||
|
read -r -p "Would you like to go through the auto configuration now? <y/N>" prompt
|
||||||
|
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
||||||
|
IPADDRESS=$(hostname -I | awk '{print $1}')
|
||||||
|
GEN_FQDN="controller.${IPADDRESS}.sslip.io"
|
||||||
|
read -r -p "Please enter the controller FQDN [${GEN_FQDN}]: " ZITI_CTRL_ADVERTISED_ADDRESS
|
||||||
|
ZITI_CTRL_ADVERTISED_ADDRESS=${ZITI_CTRL_ADVERTISED_ADDRESS:-$GEN_FQDN}
|
||||||
|
read -r -p "Please enter the controller port [1280]: " ZITI_CTRL_ADVERTISED_PORT
|
||||||
|
ZITI_CTRL_ADVERTISED_PORT=${ZITI_CTRL_ADVERTISED_PORT:-1280}
|
||||||
|
read -r -p "Please enter the controller admin user [admin]: " ZITI_USER
|
||||||
|
ZITI_USER=${ZITI_USER:-admin}
|
||||||
|
GEN_PWD=$(head -c128 /dev/urandom | LC_ALL=C tr -dc 'A-Za-z0-9!@#$%^*_+~' | cut -c 1-12)
|
||||||
|
read -r -p "Please enter the controller admin password [${GEN_PWD}]:" ZITI_PWD
|
||||||
|
ZITI_PWD=${ZITI_PWD:-$GEN_PWD}
|
||||||
|
CONFIG_FILE="/opt/openziti/etc/controller/bootstrap.env"
|
||||||
|
sed -i "s|^ZITI_CTRL_ADVERTISED_ADDRESS=.*|ZITI_CTRL_ADVERTISED_ADDRESS='${ZITI_CTRL_ADVERTISED_ADDRESS}'|" "$CONFIG_FILE"
|
||||||
|
sed -i "s|^ZITI_CTRL_ADVERTISED_PORT=.*|ZITI_CTRL_ADVERTISED_PORT='${ZITI_CTRL_ADVERTISED_PORT}'|" "$CONFIG_FILE"
|
||||||
|
sed -i "s|^ZITI_USER=.*|ZITI_USER='${ZITI_USER}'|" "$CONFIG_FILE"
|
||||||
|
sed -i "s|^ZITI_PWD=.*|ZITI_PWD='${ZITI_PWD}'|" "$CONFIG_FILE"
|
||||||
|
env VERBOSE=0 bash /opt/openziti/etc/controller/bootstrap.bash
|
||||||
|
msg_ok "Configuration Completed"
|
||||||
|
systemctl enable -q --now ziti-controller
|
||||||
|
else
|
||||||
|
systemctl enable -q ziti-controller
|
||||||
|
msg_error "Configration not provided; Please run /opt/openziti/etc/controller/bootstrap.bash to configure the controller and restart the container"
|
||||||
|
fi
|
||||||
|
|
||||||
|
motd_ssh
|
||||||
|
customize
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
@@ -19,21 +19,36 @@ $STD apt-get install -y \
|
|||||||
software-properties-common \
|
software-properties-common \
|
||||||
apt-transport-https \
|
apt-transport-https \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
gnupg \
|
gnupg2 \
|
||||||
php8.2 \
|
|
||||||
php8.2-{common,cli,gd,mysql,mbstring,bcmath,xml,fpm,curl,zip} \
|
|
||||||
mariadb-server \
|
mariadb-server \
|
||||||
nginx \
|
nginx \
|
||||||
redis-server
|
redis-server
|
||||||
$STD curl -fsSL https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
msg_info "Adding PHP Repository"
|
||||||
|
$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
|
||||||
|
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
|
||||||
|
$STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
|
||||||
|
$STD apt-get update
|
||||||
|
msg_ok "Added PHP Repository"
|
||||||
|
|
||||||
|
msg_info "Installing PHP"
|
||||||
|
$STD apt-get remove -y php8.2*
|
||||||
|
$STD apt-get install -y \
|
||||||
|
php8.3 \
|
||||||
|
php8.3-{common,cli,gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm,redis}
|
||||||
|
msg_info "Installed PHP"
|
||||||
|
|
||||||
|
msg_info "Installing Composer"
|
||||||
|
$STD curl -fsSL https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
||||||
|
msg_ok "Installed Composer"
|
||||||
|
|
||||||
msg_info "Installing Paymenter"
|
msg_info "Installing Paymenter"
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/paymenter/paymenter/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "([^"]+)".*/\1/')
|
||||||
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
echo "${RELEASE}" >/opt/"${APPLICATION}"_version.txt
|
||||||
mkdir -p /opt/paymenter
|
mkdir -p /opt/paymenter
|
||||||
cd /opt/paymenter
|
cd /opt/paymenter || exit
|
||||||
curl -fsSL "https://github.com/paymenter/paymenter/releases/download/${RELEASE}/paymenter.tar.gz" -o $(basename "https://github.com/paymenter/paymenter/releases/download/${RELEASE}/paymenter.tar.gz")
|
curl -fsSL "https://github.com/paymenter/paymenter/releases/download/${RELEASE}/paymenter.tar.gz" -o paymenter.tar.gz
|
||||||
$STD tar -xzvf paymenter.tar.gz
|
$STD tar -xzvf paymenter.tar.gz
|
||||||
chmod -R 755 storage/* bootstrap/cache/
|
chmod -R 755 storage/* bootstrap/cache/
|
||||||
msg_ok "Installed Paymenter"
|
msg_ok "Installed Paymenter"
|
||||||
@@ -63,13 +78,7 @@ $STD php artisan migrate --force --seed
|
|||||||
msg_ok "Set up database"
|
msg_ok "Set up database"
|
||||||
|
|
||||||
msg_info "Creating Admin User"
|
msg_info "Creating Admin User"
|
||||||
$STD php artisan p:user:create <<EOF
|
$STD php artisan app:user:create paymenter admin admin@paymenter.org paymenter 1 -q
|
||||||
admin@paymenter.org
|
|
||||||
paymenter
|
|
||||||
admin
|
|
||||||
paymenter
|
|
||||||
0
|
|
||||||
EOF
|
|
||||||
msg_ok "Created Admin User"
|
msg_ok "Created Admin User"
|
||||||
|
|
||||||
msg_info "Configuring Nginx"
|
msg_info "Configuring Nginx"
|
||||||
@@ -88,7 +97,7 @@ server {
|
|||||||
|
|
||||||
location ~ \.php\$ {
|
location ~ \.php\$ {
|
||||||
include snippets/fastcgi-php.conf;
|
include snippets/fastcgi-php.conf;
|
||||||
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
|
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
|
||||||
fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
|
fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
}
|
}
|
||||||
@@ -125,7 +134,8 @@ RestartSec=5s
|
|||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOF
|
EOF
|
||||||
$STD systemctl enable --now paymenter
|
systemctl enable --now paymenter
|
||||||
|
systemctl enable --now redis-server
|
||||||
msg_ok "Setup Service"
|
msg_ok "Setup Service"
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
|
|||||||
@@ -1120,7 +1120,7 @@ install_script() {
|
|||||||
while true; do
|
while true; do
|
||||||
|
|
||||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SETTINGS" --menu "Choose an option:" \
|
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SETTINGS" --menu "Choose an option:" \
|
||||||
12 50 5 \
|
14 50 5 \
|
||||||
"1" "Default Settings" \
|
"1" "Default Settings" \
|
||||||
"2" "Default Settings (with verbose)" \
|
"2" "Default Settings (with verbose)" \
|
||||||
"3" "Advanced Settings" \
|
"3" "Advanced Settings" \
|
||||||
|
|||||||
Reference in New Issue
Block a user