Compare commits

...

34 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
4b275ae911 Update CHANGELOG.md (#3883) 2025-04-14 21:06:33 +02:00
community-scripts-pr-app[bot]
b25b823d69 Update versions.json (#3879) 2025-04-14 21:04:59 +02:00
CanbiZ
d7757aa5d1 Omada: Increase RAM to 3GB and little improvements (#3885) 2025-04-14 21:04:40 +02:00
community-scripts-pr-app[bot]
5def868c67 Update .app files (#3884)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-04-14 16:04:29 +02:00
push-app-to-main[bot]
b87871f56c openziti-controller (#3880)
* 'Add new script'

* adjust date

* change curl to harmonize

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-04-14 15:42:39 +02:00
community-scripts-pr-app[bot]
4403635733 Update CHANGELOG.md (#3882)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-14 15:15:45 +02:00
CanbiZ
2fd847215c Refactor Cockpit update_script part (#3878)
* Update cockpit.sh

* formatting
2025-04-14 15:14:31 +02:00
community-scripts-pr-app[bot]
6e2cb8d4e2 Update .app files (#3881)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-04-14 15:13:51 +02:00
Slaviša Arežina
173bc7201c Neo4j: Add Java dependency (#3871)
* Add Java dependency

* update

* Update neo4j-install.sh

* Update neo4j.sh

* update

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-04-14 15:12:28 +02:00
CanbiZ
54b794da54 Alpine-AdGuardHome (#3875)
* Alpine-AdGuardHome

* modify tag

* Update alpine-adguard.sh
2025-04-14 15:10:36 +02:00
community-scripts-pr-app[bot]
203d022db5 Update CHANGELOG.md (#3874)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-14 09:23:39 +02:00
CanbiZ
97c05542d6 add missing redis dependency 2025-04-14 09:23:09 +02:00
Nícolas Pastorello
20e5b1a2bf Paymenter: bump php to 8.3 (#3825)
* Update paymenter.json

* Update paymenter-install.sh

* Update paymenter.json

Updated json notes

* Update paymenter-install.sh

* Update paymenter-install.sh

* Update paymenter-install.sh

* Update paymenter.sh

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-04-14 09:17:39 +02:00
community-scripts-pr-app[bot]
e5800a0ec5 Update versions.json (#3869)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-14 09:06:04 +02:00
CanbiZ
21bdf2a828 Paymeter: bump php to 8.4 2025-04-14 09:00:16 +02:00
community-scripts-pr-app[bot]
2551cb4b22 Update versions.json (#3863)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-13 20:04:15 +02:00
community-scripts-pr-app[bot]
0cb6ea8e4a Update versions.json (#3859) 2025-04-13 13:12:51 +02:00
community-scripts-pr-app[bot]
04656327e2 Update versions.json (#3851) 2025-04-12 22:45:32 +02:00
community-scripts-pr-app[bot]
374c3342a1 Update CHANGELOG.md (#3850)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-12 21:54:45 +02:00
Bram Suurd
3668c089dd Add "Not Updateable" tooltip to scripts (#3852)
* Refactor Tooltips component to use BadgeProps for variant type and enhance updateable logic with failure state

* Update tooltip content in Tooltips component to clarify update process for non-updateable scripts

* Refactor Tooltips component to make content optional and improve conditional rendering for better UX

* Refactor conditional rendering in Tooltips component to simplify updateable logic and enhance clarity for non-updateable scripts

* Refactor TooltipBadge component in Tooltips to enhance readability and streamline conditional rendering for privileged and non-updateable states

* Update @radix-ui/react-tooltip to version 1.2.0 and update tooltip component
2025-04-12 17:45:07 +02:00
community-scripts-pr-app[bot]
6dbe7aed99 Update versions.json (#3846) 2025-04-12 10:34:29 +02:00
community-scripts-pr-app[bot]
423c1e9568 Update CHANGELOG.md (#3844) 2025-04-11 21:23:45 +02:00
dependabot[bot]
73fbf74707 Bump vite from 6.2.5 to 6.2.6 in /frontend (#3842)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.5 to 6.2.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.6/packages/vite)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-11 18:58:23 +02:00
community-scripts-pr-app[bot]
8e87fbd481 Update CHANGELOG.md (#3839) 2025-04-11 16:53:42 +02:00
community-scripts-pr-app[bot]
9c9a7c78fc Update versions.json (#3837)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-11 14:44:28 +02:00
stiny861
ea03177126 Update sqlserver2022.json (#3838)
Corrected some typos and grammer
2025-04-11 14:44:14 +02:00
community-scripts-pr-app[bot]
df507f74a9 Update CHANGELOG.md (#3832)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-11 12:24:07 +02:00
Michel Roegl-Brunner
d933d05bd3 Update build.func (#3833) 2025-04-11 09:18:41 +02:00
Slaviša Arežina
1cc8b93fc2 Fix Radicale category (#3830) 2025-04-11 08:42:30 +02:00
community-scripts-pr-app[bot]
b132580f62 Update CHANGELOG.md (#3829)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-04-11 08:40:03 +02:00
CanbiZ
21da4bc8b5 slskd: fix missing -o for curl (#3828) 2025-04-11 08:12:25 +02:00
Slaviša Arežina
36bab52e7a Fix php dependencies (#3820) 2025-04-11 08:00:51 +02:00
community-scripts-pr-app[bot]
911ca2da24 Update versions.json (#3822) 2025-04-11 08:00:23 +02:00
Sendy Putra
220faf05ff fix(komodo): update GitHub URL for compose files (#3823) 2025-04-11 08:00:02 +02:00
30 changed files with 1190 additions and 467 deletions

View File

@@ -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
View 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}"

View File

@@ -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

View File

@@ -0,0 +1,6 @@
___ __ _ ___ ________ __
/ | / /___ (_)___ ___ / | ____/ / ____/_ ______ __________/ /
/ /| | / / __ \/ / __ \/ _ \______/ /| |/ __ / / __/ / / / __ `/ ___/ __ /
/ ___ |/ / /_/ / / / / / __/_____/ ___ / /_/ / /_/ / /_/ / /_/ / / / /_/ /
/_/ |_/_/ .___/_/_/ /_/\___/ /_/ |_\__,_/\____/\__,_/\__,_/_/ \__,_/
/_/

View File

@@ -0,0 +1,6 @@
_ __ _ __ ____
____ ____ ___ ____ ____ (_) /_(_) _________ ____ / /__________ / / /__ _____
/ __ \/ __ \/ _ \/ __ \/_ / / / __/ /_____/ ___/ __ \/ __ \/ __/ ___/ __ \/ / / _ \/ ___/
/ /_/ / /_/ / __/ / / / / /_/ / /_/ /_____/ /__/ /_/ / / / / /_/ / / /_/ / / / __/ /
\____/ .___/\___/_/ /_/ /___/_/\__/_/ \___/\____/_/ /_/\__/_/ \____/_/_/\___/_/
/_/

View File

@@ -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}"

View File

@@ -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

View File

@@ -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
View 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}"

View File

@@ -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

View File

@@ -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

View File

@@ -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": {

View File

@@ -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",

View File

@@ -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": {

View File

@@ -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"

View 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"
}
]
}

View File

@@ -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"
}
]
} }

View File

@@ -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"
} }
] ]
} }

View File

@@ -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"
} }
] ]

View File

@@ -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",

View File

@@ -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>
); );
} }

View File

@@ -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 }

View File

@@ -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"

View 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

View File

@@ -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 '/+=')

View File

@@ -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

View File

@@ -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"

View 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"

View File

@@ -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"

View File

@@ -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" \