forked from Proxmox/ProxmoxVE
Compare commits
56 Commits
rework_ngi
...
2025-03-29
| Author | SHA1 | Date | |
|---|---|---|---|
| 3939b88b9f | |||
| 5be029597b | |||
| e394dd08b0 | |||
| 5d50d91a26 | |||
| 1a0f3a6108 | |||
| d940907e59 | |||
| 09e7593734 | |||
| 121577c2fd | |||
| bcaf34fa96 | |||
| 87106a60c3 | |||
| c63ad45e65 | |||
| 52bd63bf08 | |||
| 8a5367dae3 | |||
| 8c8b08e037 | |||
| 40b997ddc9 | |||
| b87e7dde2b | |||
| f46b9bbfb9 | |||
| 07a3ab353c | |||
| c4cdb030b4 | |||
| 2ffd827be4 | |||
| 515f9ab502 | |||
| 079b089518 | |||
| 8300d7725d | |||
| ab45b91c4c | |||
| b428e8a267 | |||
| 2643c91516 | |||
| 73faa0ab10 | |||
| 9f890aae89 | |||
| 9cbd315456 | |||
| 022472af34 | |||
| 3274115041 | |||
| dc980951ea | |||
| a9b7c52b1a | |||
| beeef264b8 | |||
| 008af3cbfc | |||
| b9a63edfb0 | |||
| 6be9d72f70 | |||
| 6ba5c98706 | |||
| 333b0c00cc | |||
| 3072f7dd51 | |||
| 51f9de27f1 | |||
| c0d31ccd57 | |||
| 2f5fbf7416 | |||
| cac4294d27 | |||
| 7886795e81 | |||
| 01bba3b325 | |||
| 8f862060d5 | |||
| 67c391e3ed | |||
| d621ecb124 | |||
| 4f723800ec | |||
| 76bbb72392 | |||
| 59bb9e334e | |||
| e19a2e90d3 | |||
| ca55795473 | |||
| 62dc2bdecc | |||
| 694f063f0c |
@ -111,11 +111,8 @@ Example:
|
||||
|
||||
```bash
|
||||
$STD apt-get install -y \
|
||||
curl \
|
||||
composer \
|
||||
git \
|
||||
sudo \
|
||||
mc \
|
||||
nginx
|
||||
```
|
||||
|
||||
|
||||
@ -14,12 +14,9 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
# Installing Dependencies with the 3 core dependencies (curl;sudo;mc)
|
||||
# Installing Dependencies
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt-get install -y \
|
||||
curl \
|
||||
sudo \
|
||||
mc \
|
||||
[PACKAGE_1] \
|
||||
[PACKAGE_2] \
|
||||
[PACKAGE_3]
|
||||
@ -80,4 +77,4 @@ msg_info "Cleaning up"
|
||||
rm -f ${RELEASE}.zip
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Cleaned"
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/config.yml
vendored
2
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -7,5 +7,5 @@ contact_links:
|
||||
url: https://github.com/community-scripts/ProxmoxVE/discussions/new?category=request-script
|
||||
about: For feature/script requests, please use the Discussions section.
|
||||
- name: 💻 Discord
|
||||
url: https://discord.gg/UHrpNWGwkH
|
||||
url: https://discord.gg/jsYVk5JBxq
|
||||
about: Join our Discord server to chat with other users in the Proxmox Helper Scripts community.
|
||||
|
||||
82
CHANGELOG.md
82
CHANGELOG.md
@ -14,22 +14,98 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
||||
|
||||
|
||||
## 2025-03-29
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Alpine MariaDB [@MickLesk](https://github.com/MickLesk) ([#3456](https://github.com/community-scripts/ProxmoxVE/pull/3456))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Komodo: Fix wrong sed text [@tremor021](https://github.com/tremor021) ([#3491](https://github.com/community-scripts/ProxmoxVE/pull/3491))
|
||||
- GoMFT: Fix release archive naming [@tremor021](https://github.com/tremor021) ([#3483](https://github.com/community-scripts/ProxmoxVE/pull/3483))
|
||||
- Homepage: Fix release parsing [@tremor021](https://github.com/tremor021) ([#3484](https://github.com/community-scripts/ProxmoxVE/pull/3484))
|
||||
- Netdata: Fix debian-keyring dependency missing [@tremor021](https://github.com/tremor021) ([#3477](https://github.com/community-scripts/ProxmoxVE/pull/3477))
|
||||
- ErsatzTV: Fix temp file reference [@tremor021](https://github.com/tremor021) ([#3476](https://github.com/community-scripts/ProxmoxVE/pull/3476))
|
||||
- Komodo: Fix compose.env [@tremor021](https://github.com/tremor021) ([#3466](https://github.com/community-scripts/ProxmoxVE/pull/3466))
|
||||
|
||||
## 2025-03-28
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Alpine Node-RED [@MickLesk](https://github.com/MickLesk) ([#3457](https://github.com/community-scripts/ProxmoxVE/pull/3457))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- GoMFT: Fix release grep [@tremor021](https://github.com/tremor021) ([#3462](https://github.com/community-scripts/ProxmoxVE/pull/3462))
|
||||
- ErsatzTV: Fix path in update function [@tremor021](https://github.com/tremor021) ([#3463](https://github.com/community-scripts/ProxmoxVE/pull/3463))
|
||||
|
||||
## 2025-03-27
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- [core]: add functions for Alpine (update / core deps) [@MickLesk](https://github.com/MickLesk) ([#3437](https://github.com/community-scripts/ProxmoxVE/pull/3437))
|
||||
|
||||
### 🧰 Maintenance
|
||||
|
||||
- #### 💾 Core
|
||||
|
||||
- [core]: Refactor Spinner/MSG Function (support now alpine / performance / handling) [@MickLesk](https://github.com/MickLesk) ([#3436](https://github.com/community-scripts/ProxmoxVE/pull/3436))
|
||||
|
||||
## 2025-03-26
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Alpine: Gitea [@MickLesk](https://github.com/MickLesk) ([#3424](https://github.com/community-scripts/ProxmoxVE/pull/3424))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- FlowiseAI: Fix dependencies [@tremor021](https://github.com/tremor021) ([#3427](https://github.com/community-scripts/ProxmoxVE/pull/3427))
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- fluid-calendar: Fix failed build during updates [@vhsdream](https://github.com/vhsdream) ([#3417](https://github.com/community-scripts/ProxmoxVE/pull/3417))
|
||||
|
||||
### 🧰 Maintenance
|
||||
|
||||
- #### 📂 Github
|
||||
|
||||
- Remove coredeps in CONTRIBUTOR_AND_GUIDES [@bvdberg01](https://github.com/bvdberg01) ([#3420](https://github.com/community-scripts/ProxmoxVE/pull/3420))
|
||||
|
||||
## 2025-03-25
|
||||
|
||||
### 🧰 Maintenance
|
||||
|
||||
- #### 📂 Github
|
||||
|
||||
- Discord invite link updated [@MickLesk](https://github.com/MickLesk) ([#3412](https://github.com/community-scripts/ProxmoxVE/pull/3412))
|
||||
|
||||
## 2025-03-24
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- wazuh [@omiinaya](https://github.com/omiinaya) ([#3381](https://github.com/community-scripts/ProxmoxVE/pull/3381))
|
||||
- fileflows [@kkroboth](https://github.com/kkroboth) ([#3392](https://github.com/community-scripts/ProxmoxVE/pull/3392))
|
||||
- wazuh [@omiinaya](https://github.com/omiinaya) ([#3381](https://github.com/community-scripts/ProxmoxVE/pull/3381))
|
||||
- yt-dlp-webui [@CrazyWolf13](https://github.com/CrazyWolf13) ([#3364](https://github.com/community-scripts/ProxmoxVE/pull/3364))
|
||||
- Extension/New Script: Redis Alpine Installation [@MickLesk](https://github.com/MickLesk) ([#3367](https://github.com/community-scripts/ProxmoxVE/pull/3367))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Extend HOME Env for Kubo [@MickLesk](https://github.com/MickLesk) ([#3397](https://github.com/community-scripts/ProxmoxVE/pull/3397))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- [core] Rebase Scripts (formatting, highlighting & remove old deps) [@MickLesk](https://github.com/MickLesk) ([#3378](https://github.com/community-scripts/ProxmoxVE/pull/3378))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- qBittorrent: Switch to static builds for faster updating/upgrading [@tremor021](https://github.com/tremor021) ([#3405](https://github.com/community-scripts/ProxmoxVE/pull/3405))
|
||||
- Refactor: ErsatzTV Script [@MickLesk](https://github.com/MickLesk) ([#3365](https://github.com/community-scripts/ProxmoxVE/pull/3365))
|
||||
|
||||
### 🧰 Maintenance
|
||||
@ -38,6 +114,10 @@ All LXC instances created using this repository come pre-installed with Midnight
|
||||
|
||||
- [core] install core deps (debian / ubuntu) [@MickLesk](https://github.com/MickLesk) ([#3366](https://github.com/community-scripts/ProxmoxVE/pull/3366))
|
||||
|
||||
- #### 💾 Core
|
||||
|
||||
- [core] extend hardware transcoding for fileflows #3392 [@MickLesk](https://github.com/MickLesk) ([#3396](https://github.com/community-scripts/ProxmoxVE/pull/3396))
|
||||
|
||||
- #### 📂 Github
|
||||
|
||||
- Refactor Changelog Workflow [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#3371](https://github.com/community-scripts/ProxmoxVE/pull/3371))
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
<a href="https://helper-scripts.com">
|
||||
<img src="https://img.shields.io/badge/Website-4c9b3f?style=for-the-badge&logo=github&logoColor=white" alt="Website" />
|
||||
</a>
|
||||
<a href="https://discord.gg/UHrpNWGwkH">
|
||||
<a href="https://discord.gg/jsYVk5JBxq">
|
||||
<img src="https://img.shields.io/badge/Discord-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" />
|
||||
</a>
|
||||
<a href="https://ko-fi.com/community_scripts">
|
||||
@ -82,7 +82,7 @@ We appreciate any contributions to the project—whether it's bug reports, featu
|
||||
|
||||
Join our community for support:
|
||||
|
||||
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/UHrpNWGwkH) for real-time support.
|
||||
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/jsYVk5JBxq) for real-time support.
|
||||
- **GitHub Discussions**: [Ask questions or report issues](https://github.com/community-scripts/ProxmoxVE/discussions).
|
||||
|
||||
## 🤝 Report a Bug or Feature Request
|
||||
|
||||
@ -13,7 +13,7 @@ This project currently supports the following versions of Proxmox VE:
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
Security vulnerabilities shouldn’t be reported publicly to prevent potential exploitation. Instead, please report any vulnerabilities privately by reaching out directly to us. You can either join our [Discord server](https://discord.gg/UHrpNWGwkH) and send a direct message to a maintainer or contact us via email at contact@community-scripts.org. Be sure to include a detailed description of the vulnerability and the steps to reproduce it. Thank you for helping us keep our project secure!
|
||||
Security vulnerabilities shouldn’t be reported publicly to prevent potential exploitation. Instead, please report any vulnerabilities privately by reaching out directly to us. You can either join our [Discord server](https://discord.gg/jsYVk5JBxq) and send a direct message to a maintainer or contact us via email at contact@community-scripts.org. Be sure to include a detailed description of the vulnerability and the steps to reproduce it. Thank you for helping us keep our project secure!
|
||||
|
||||
Once a vulnerability has been reported, the project maintainers will review it and acknowledge the report within 7 business days. We will then work to address the vulnerability and provide a fix as soon as possible. Depending on the severity of the issue, a patch may be released immediately or included in the next scheduled update.
|
||||
|
||||
|
||||
45
ct/alpine-gitea.sh
Normal file
45
ct/alpine-gitea.sh
Normal file
@ -0,0 +1,45 @@
|
||||
#!/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://gitea.io
|
||||
|
||||
APP="Alpine-Gitea"
|
||||
var_tags="alpine;git"
|
||||
var_cpu="1"
|
||||
var_ram="256"
|
||||
var_disk="1"
|
||||
var_os="alpine"
|
||||
var_version="3.21"
|
||||
var_unprivileged="1"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
msg_info "Updating Alpine Packages"
|
||||
apk update
|
||||
apk upgrade
|
||||
msg_ok "Updated Alpine Packages"
|
||||
|
||||
msg_info "Updating Gitea"
|
||||
apk upgrade gitea
|
||||
msg_ok "Updated Gitea"
|
||||
|
||||
msg_info "Restarting Gitea"
|
||||
rc-service gitea restart
|
||||
msg_ok "Restarted Gitea"
|
||||
}
|
||||
|
||||
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}"
|
||||
46
ct/alpine-mariadb.sh
Normal file
46
ct/alpine-mariadb.sh
Normal file
@ -0,0 +1,46 @@
|
||||
#!/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://mariadb.org
|
||||
|
||||
APP="Alpine-MariaDB"
|
||||
var_tags="${var_tags:-alpine;database}"
|
||||
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() {
|
||||
msg_info "Updating Alpine Packages"
|
||||
$STD apk update
|
||||
$STD apk upgrade
|
||||
msg_ok "Updated Alpine Packages"
|
||||
|
||||
msg_info "Updating MariaDB"
|
||||
$STD apk upgrade mariadb mariadb-client
|
||||
msg_ok "Updated MariaDB"
|
||||
|
||||
msg_info "Restarting MariaDB"
|
||||
$STD rc-service mariadb restart
|
||||
msg_ok "Restarted MariaDB"
|
||||
|
||||
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 IP:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}${IP}:3306${CL}"
|
||||
50
ct/alpine-node-red.sh
Normal file
50
ct/alpine-node-red.sh
Normal file
@ -0,0 +1,50 @@
|
||||
#!/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://nodered.org
|
||||
|
||||
APP="Alpine-Node-RED"
|
||||
var_tags="${var_tags:-alpine;automation}"
|
||||
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() {
|
||||
msg_info "Updating Alpine Packages"
|
||||
$STD apk update
|
||||
$STD apk upgrade
|
||||
msg_ok "Updated Alpine Packages"
|
||||
|
||||
msg_info "Updating Node.js and npm"
|
||||
$STD apk upgrade nodejs npm
|
||||
msg_ok "Updated Node.js and npm"
|
||||
|
||||
msg_info "Updating Node-RED"
|
||||
$STD npm install -g --unsafe-perm node-red
|
||||
msg_ok "Updated Node-RED"
|
||||
|
||||
msg_info "Restarting Node-RED"
|
||||
$STD rc-service nodered restart
|
||||
msg_ok "Restarted Node-RED"
|
||||
|
||||
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}:1880${CL}"
|
||||
@ -39,7 +39,7 @@ function update_script() {
|
||||
temp_file=$(mktemp)
|
||||
wget -qO- https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz -O "$temp_file"
|
||||
tar -xzf "$temp_file"
|
||||
mv /opt/ErsatzTV-${RELEASE}-linux-x64 /opt/ErsatzTV
|
||||
mv ErsatzTV-${RELEASE}-linux-x64 /opt/ErsatzTV
|
||||
cp -R ErsatzTV-backup/* /opt/ErsatzTV/
|
||||
rm -rf ErsatzTV-backup
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
@ -67,4 +67,4 @@ 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}:8409${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8409${CL}"
|
||||
|
||||
73
ct/fileflows.sh
Normal file
73
ct/fileflows.sh
Normal file
@ -0,0 +1,73 @@
|
||||
#!/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: kkroboth
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://fileflows.com/
|
||||
|
||||
APP="FileFlows"
|
||||
var_tags="media;automation"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
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/fileflows ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
update_available=$(curl -s -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable)
|
||||
if [[ "${update_available}" == "true" ]]; then
|
||||
msg_info "Stopping $APP"
|
||||
systemctl stop fileflows
|
||||
msg_ok "Stopped $APP"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
backup_filename="/opt/${APP}_backup_$(date +%F).tar.gz"
|
||||
tar -czf $backup_filename -C /opt/fileflows Data
|
||||
msg_ok "Backup Created"
|
||||
|
||||
msg_info "Updating $APP to latest version"
|
||||
temp_file=$(mktemp)
|
||||
curl -fsSL https://fileflows.com/downloads/zip -o $temp_file
|
||||
unzip -oq -d /opt/fileflows $temp_file
|
||||
msg_ok "Updated $APP to latest version"
|
||||
|
||||
msg_info "Starting $APP"
|
||||
systemctl start fileflows
|
||||
msg_ok "Started $APP"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf $temp_file
|
||||
rm -rf $backup_filename
|
||||
msg_ok "Cleanup Completed"
|
||||
|
||||
msg_ok "Update Successful"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at latest version"
|
||||
fi
|
||||
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:19200${CL}"
|
||||
@ -35,15 +35,14 @@ function update_script() {
|
||||
systemctl stop fluid-calendar.service
|
||||
msg_ok "Stopped $APP"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
tar -czf "/opt/${APP}_backup_$(date +%F).tar.gz" /opt/fluid-calendar
|
||||
msg_ok "Backup Created"
|
||||
|
||||
msg_info "Updating $APP to v${RELEASE}"
|
||||
cp /opt/fluid-calendar/.env /opt/fluid.env
|
||||
rm -rf /opt/fluid-calendar
|
||||
tmp_file=$(mktemp)
|
||||
wget -q "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -O $tmp_file
|
||||
unzip -q $tmp_file
|
||||
cp -rf ${APP}-${RELEASE}/* /opt/fluid-calendar
|
||||
mv ${APP}-${RELEASE}/ /opt/fluid-calendar
|
||||
mv /opt/fluid.env /opt/fluid-calendar/.env
|
||||
cd /opt/fluid-calendar
|
||||
export NEXT_TELEMETRY_DISABLED=1
|
||||
$STD npm install --legacy-peer-deps
|
||||
@ -58,8 +57,6 @@ function update_script() {
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf $tmp_file
|
||||
rm -rf "/opt/${APP}_backup_$(date +%F).tar.gz"
|
||||
rm -rf /tmp/${APP}-${RELEASE}
|
||||
msg_ok "Cleanup Completed"
|
||||
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
|
||||
@ -28,7 +28,7 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if ! dpkg -l | grep -q "^ii.*build-essential"; then
|
||||
$STD apt-get install -y build-essential
|
||||
fi
|
||||
@ -41,9 +41,9 @@ function update_script() {
|
||||
msg_info "Updating $APP to ${RELEASE}"
|
||||
rm -f /opt/gomft/gomft
|
||||
temp_file=$(mktemp)
|
||||
wget -q "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file
|
||||
curl -fsSL "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v.${RELEASE}.tar.gz" -o $temp_file
|
||||
tar -xzf $temp_file
|
||||
cp -rf GoMFT-${RELEASE}/* /opt/gomft
|
||||
cp -rf GoMFT-v.${RELEASE}/* /opt/gomft
|
||||
cd /opt/gomft
|
||||
$STD go mod download
|
||||
$STD go install github.com/a-h/templ/cmd/templ@latest
|
||||
|
||||
6
ct/headers/alpine-gitea
Normal file
6
ct/headers/alpine-gitea
Normal file
@ -0,0 +1,6 @@
|
||||
___ __ _ _______ __
|
||||
/ | / /___ (_)___ ___ / ____(_) /____ ____ _
|
||||
/ /| | / / __ \/ / __ \/ _ \______/ / __/ / __/ _ \/ __ `/
|
||||
/ ___ |/ / /_/ / / / / / __/_____/ /_/ / / /_/ __/ /_/ /
|
||||
/_/ |_/_/ .___/_/_/ /_/\___/ \____/_/\__/\___/\__,_/
|
||||
/_/
|
||||
6
ct/headers/alpine-mariadb
Normal file
6
ct/headers/alpine-mariadb
Normal file
@ -0,0 +1,6 @@
|
||||
___ __ _ __ ___ _ ____ ____
|
||||
/ | / /___ (_)___ ___ / |/ /___ ______(_)___ _/ __ \/ __ )
|
||||
/ /| | / / __ \/ / __ \/ _ \______/ /|_/ / __ `/ ___/ / __ `/ / / / __ |
|
||||
/ ___ |/ / /_/ / / / / / __/_____/ / / / /_/ / / / / /_/ / /_/ / /_/ /
|
||||
/_/ |_/_/ .___/_/_/ /_/\___/ /_/ /_/\__,_/_/ /_/\__,_/_____/_____/
|
||||
/_/
|
||||
6
ct/headers/alpine-node-red
Normal file
6
ct/headers/alpine-node-red
Normal file
@ -0,0 +1,6 @@
|
||||
___ __ _ _ __ __ ____ __________
|
||||
/ | / /___ (_)___ ___ / | / /___ ____/ /__ / __ \/ ____/ __ \
|
||||
/ /| | / / __ \/ / __ \/ _ \______/ |/ / __ \/ __ / _ \______/ /_/ / __/ / / / /
|
||||
/ ___ |/ / /_/ / / / / / __/_____/ /| / /_/ / /_/ / __/_____/ _, _/ /___/ /_/ /
|
||||
/_/ |_/_/ .___/_/_/ /_/\___/ /_/ |_/\____/\__,_/\___/ /_/ |_/_____/_____/
|
||||
/_/
|
||||
6
ct/headers/fileflows
Normal file
6
ct/headers/fileflows
Normal file
@ -0,0 +1,6 @@
|
||||
_______ __ ________
|
||||
/ ____(_) /__ / ____/ /___ _ _______
|
||||
/ /_ / / / _ \/ /_ / / __ \ | /| / / ___/
|
||||
/ __/ / / / __/ __/ / / /_/ / |/ |/ (__ )
|
||||
/_/ /_/_/\___/_/ /_/\____/|__/|__/____/
|
||||
|
||||
@ -40,7 +40,7 @@ function update_script() {
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Updating Homepage to v${RELEASE} (Patience)"
|
||||
systemctl stop homepage
|
||||
wget -q https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz
|
||||
curl -fsSL "https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz" -o $(basename "https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz")
|
||||
tar -xzf v${RELEASE}.tar.gz
|
||||
rm -rf v${RELEASE}.tar.gz
|
||||
cp -r homepage-${RELEASE}/* /opt/homepage/
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: tteck (tteckster) | Co-Author: Slaviša Arežina (tremor021)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://www.qbittorrent.org/
|
||||
|
||||
@ -27,10 +27,36 @@ function update_script() {
|
||||
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"
|
||||
if [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
touch /opt/${APP}_version.txt
|
||||
mkdir -p $HOME/.config/qBittorrent/
|
||||
mkdir -p /opt/qbittorrent/
|
||||
mv /.config/qBittorrent $HOME/.config/
|
||||
$STD apt-get remove --purge -y qbittorrent-nox
|
||||
sed -i 's@ExecStart=/usr/bin/qbittorrent-nox@ExecStart=/opt/qbittorrent/qbittorrent-nox@g' /etc/systemd/system/qbittorrent-nox.service
|
||||
systemctl daemon-reload
|
||||
fi
|
||||
FULLRELEASE=$(curl -s https://api.github.com/repos/userdocs/qbittorrent-nox-static/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
RELEASE=$(echo $FULLRELEASE | cut -c 9-13)
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop qbittorrent-nox
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating ${APP} to v${RELEASE}"
|
||||
rm -f /opt/qbittorrent/qbittorrent-nox
|
||||
curl -fsSL "https://github.com/userdocs/qbittorrent-nox-static/releases/download/${FULLRELEASE}/x86_64-qbittorrent-nox" -o /opt/qbittorrent/qbittorrent-nox
|
||||
chmod +x /opt/qbittorrent/qbittorrent-nox
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to v${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start qbittorrent-nox
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@ -41,4 +67,4 @@ 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}:8090${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}"
|
||||
|
||||
39
frontend/public/json/fileflows.json
Normal file
39
frontend/public/json/fileflows.json
Normal file
@ -0,0 +1,39 @@
|
||||
{
|
||||
"name": "FileFlows",
|
||||
"slug": "fileflows",
|
||||
"categories": [
|
||||
13
|
||||
],
|
||||
"date_created": "2025-03-24",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 19200,
|
||||
"documentation": "https://fileflows.com/docs",
|
||||
"website": "https://fileflows.com/",
|
||||
"logo": "https://raw.githubusercontent.com/revenz/FileFlows/refs/heads/develop/icon.png",
|
||||
"description": "FileFlows is a powerful, open-source tool for automating media file processing workflows, including encoding, decoding, and media management. It offers an intuitive GUI and extensive plugin support, making it ideal for tasks like video transcoding, organizing, and managing large media libraries.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/fileflows.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 2048,
|
||||
"hdd": 8,
|
||||
"os": "Debian",
|
||||
"version": "12"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": [
|
||||
{
|
||||
"text": "With Privileged/Unprivileged Hardware Acceleration Support",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1,34 +1,39 @@
|
||||
{
|
||||
"name": "FlowiseAI",
|
||||
"slug": "flowiseai",
|
||||
"categories": [
|
||||
20
|
||||
],
|
||||
"date_created": "2024-05-02",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 3000,
|
||||
"documentation": null,
|
||||
"website": "https://flowiseai.com/",
|
||||
"logo": "https://flowiseai.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Flogo-color-high.e60de2f8.png&w=256&q=75",
|
||||
"description": "FlowiseAI is an open source low-code tool for developers to build customized LLM orchestration flow & AI agents",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/flowiseai.sh",
|
||||
"resources": {
|
||||
"cpu": 4,
|
||||
"ram": 4096,
|
||||
"hdd": 10,
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": []
|
||||
}
|
||||
"name": "FlowiseAI",
|
||||
"slug": "flowiseai",
|
||||
"categories": [
|
||||
20
|
||||
],
|
||||
"date_created": "2024-05-02",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 3000,
|
||||
"documentation": "https://docs.flowiseai.com/",
|
||||
"website": "https://flowiseai.com/",
|
||||
"logo": "https://flowiseai.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Flogo-color-high.e60de2f8.png&w=256&q=75",
|
||||
"description": "FlowiseAI is an open source low-code tool for developers to build customized LLM orchestration flow & AI agents",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/flowiseai.sh",
|
||||
"resources": {
|
||||
"cpu": 4,
|
||||
"ram": 4096,
|
||||
"hdd": 10,
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": [
|
||||
{
|
||||
"text": "Application takes long time to install. Please be patient!",
|
||||
"type": "warning"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@ -24,6 +24,17 @@
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "alpine",
|
||||
"script": "ct/alpine-gitea.sh",
|
||||
"resources": {
|
||||
"cpu": 1,
|
||||
"ram": 256,
|
||||
"hdd": 1,
|
||||
"os": "alpine",
|
||||
"version": "3.21"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
@ -31,4 +42,4 @@
|
||||
"password": null
|
||||
},
|
||||
"notes": []
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,6 +24,17 @@
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "alpine",
|
||||
"script": "ct/alpine-mariadb.sh",
|
||||
"resources": {
|
||||
"cpu": 1,
|
||||
"ram": 256,
|
||||
"hdd": 1,
|
||||
"os": "alpine",
|
||||
"version": "3.21"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
|
||||
@ -24,6 +24,17 @@
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "alpine",
|
||||
"script": "ct/alpine-node-red.sh",
|
||||
"resources": {
|
||||
"cpu": 1,
|
||||
"ram": 256,
|
||||
"hdd": 1,
|
||||
"os": "alpine",
|
||||
"version": "3.21"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
@ -32,8 +43,8 @@
|
||||
},
|
||||
"notes": [
|
||||
{
|
||||
"text": "To install themes, type `update` in the LXC console.",
|
||||
"text": "To install themes, type `update` in the LXC console. (debian/ubuntu only)",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,49 +1,389 @@
|
||||
[
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v11.8.4",
|
||||
"date": "2025-03-29T08:28:12Z"
|
||||
},
|
||||
{
|
||||
"name": "tobychui/zoraxy",
|
||||
"version": "v3.1.9",
|
||||
"date": "2025-03-01T02:24:33Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.22.1705",
|
||||
"date": "2025-03-29T05:54:06Z"
|
||||
},
|
||||
{
|
||||
"name": "inspircd/inspircd",
|
||||
"version": "v4.7.0",
|
||||
"date": "2025-03-29T03:50:50Z"
|
||||
},
|
||||
{
|
||||
"name": "fhem/fhem-mirror",
|
||||
"version": "6.2",
|
||||
"date": "2025-03-24T10:36:10Z"
|
||||
"date": "2025-03-29T01:59:30Z"
|
||||
},
|
||||
{
|
||||
"name": "semaphoreui/semaphore",
|
||||
"version": "v2.13.1",
|
||||
"date": "2025-03-24T09:42:32Z"
|
||||
"name": "bunkerity/bunkerweb",
|
||||
"version": "v1.6.1",
|
||||
"date": "2025-03-15T17:29:17Z"
|
||||
},
|
||||
{
|
||||
"name": "zwave-js/zwave-js-ui",
|
||||
"version": "v10.1.1",
|
||||
"date": "2025-03-24T08:34:47Z"
|
||||
"name": "OliveTin/OliveTin",
|
||||
"version": "2025.3.28",
|
||||
"date": "2025-03-29T00:18:56Z"
|
||||
},
|
||||
{
|
||||
"name": "Checkmk/checkmk",
|
||||
"version": "v2.4.0b2-rc1",
|
||||
"date": "2025-03-24T07:20:45Z"
|
||||
"name": "msgbyte/tianji",
|
||||
"version": "v1.19.5",
|
||||
"date": "2025-03-28T22:03:01Z"
|
||||
},
|
||||
{
|
||||
"name": "homarr-labs/homarr",
|
||||
"version": "v1.13.1",
|
||||
"date": "2025-03-28T21:58:30Z"
|
||||
},
|
||||
{
|
||||
"name": "TasmoAdmin/TasmoAdmin",
|
||||
"version": "v4.2.3",
|
||||
"date": "2025-02-09T23:07:48Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.3.4",
|
||||
"date": "2025-03-21T20:22:46Z"
|
||||
},
|
||||
{
|
||||
"name": "gristlabs/grist-core",
|
||||
"version": "v1.5.0",
|
||||
"date": "2025-03-28T20:43:51Z"
|
||||
},
|
||||
{
|
||||
"name": "grocy/grocy",
|
||||
"version": "v4.5.0",
|
||||
"date": "2025-03-28T19:02:22Z"
|
||||
},
|
||||
{
|
||||
"name": "Brandawg93/PeaNUT",
|
||||
"version": "v5.6.1",
|
||||
"date": "2025-03-28T18:40:22Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.1.4",
|
||||
"date": "2025-03-13T15:41:42Z"
|
||||
},
|
||||
{
|
||||
"name": "pocketbase/pocketbase",
|
||||
"version": "v0.26.5",
|
||||
"date": "2025-03-28T17:41:23Z"
|
||||
},
|
||||
{
|
||||
"name": "NodeBB/NodeBB",
|
||||
"version": "v4.2.0",
|
||||
"date": "2025-03-19T18:34:01Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/uptime-kuma",
|
||||
"version": "2.0.0-beta.2-temp",
|
||||
"date": "2025-03-28T08:45:58Z"
|
||||
},
|
||||
{
|
||||
"name": "zitadel/zitadel",
|
||||
"version": "v2.71.5",
|
||||
"date": "2025-03-28T15:34:27Z"
|
||||
},
|
||||
{
|
||||
"name": "emqx/emqx",
|
||||
"version": "e5.9.0-beta.2",
|
||||
"date": "2025-03-28T15:06:27Z"
|
||||
},
|
||||
{
|
||||
"name": "goauthentik/authentik",
|
||||
"version": "version/2025.2.3",
|
||||
"date": "2025-03-28T14:28:34Z"
|
||||
},
|
||||
{
|
||||
"name": "hakimel/reveal.js",
|
||||
"version": "5.2.1",
|
||||
"date": "2025-03-28T13:00:23Z"
|
||||
},
|
||||
{
|
||||
"name": "cockpit-project/cockpit",
|
||||
"version": "336",
|
||||
"date": "2025-03-24T07:16:02Z"
|
||||
"version": "336.2",
|
||||
"date": "2025-03-28T10:16:47Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
"version": "debian/12.0.12",
|
||||
"date": "2025-03-16T11:59:24Z"
|
||||
},
|
||||
{
|
||||
"name": "gethomepage/homepage",
|
||||
"version": "v1.1.1",
|
||||
"date": "2025-03-28T04:12:31Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
"version": "v1.10.0-rc.3",
|
||||
"date": "2025-03-28T03:45:54Z"
|
||||
},
|
||||
{
|
||||
"name": "StarFleetCPTN/GoMFT",
|
||||
"version": "v.0.2.3",
|
||||
"date": "2025-03-27T23:54:49Z"
|
||||
},
|
||||
{
|
||||
"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",
|
||||
"version": "2025.2",
|
||||
"date": "2025-03-27T19:21:13Z"
|
||||
},
|
||||
{
|
||||
"name": "TriliumNext/Notes",
|
||||
"version": "v0.92.4",
|
||||
"date": "2025-03-17T16:00:19Z"
|
||||
},
|
||||
{
|
||||
"name": "fallenbagel/jellyseerr",
|
||||
"version": "preview-music-support",
|
||||
"date": "2025-03-27T16:54:41Z"
|
||||
},
|
||||
{
|
||||
"name": "immich-app/immich",
|
||||
"version": "v1.130.3",
|
||||
"date": "2025-03-27T16:38:04Z"
|
||||
},
|
||||
{
|
||||
"name": "zwave-js/zwave-js-ui",
|
||||
"version": "v10.1.3",
|
||||
"date": "2025-03-27T15:51:38Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/operating-system",
|
||||
"version": "15.0",
|
||||
"date": "2025-03-17T10:26:18Z"
|
||||
},
|
||||
{
|
||||
"name": "tailscale/tailscale",
|
||||
"version": "v1.82.0",
|
||||
"date": "2025-03-27T13:08:18Z"
|
||||
},
|
||||
{
|
||||
"name": "n8n-io/n8n",
|
||||
"version": "n8n@1.84.3",
|
||||
"date": "2025-03-27T11:54:33Z"
|
||||
},
|
||||
{
|
||||
"name": "zabbix/zabbix",
|
||||
"version": "7.2.5",
|
||||
"date": "2025-03-27T11:06:48Z"
|
||||
},
|
||||
{
|
||||
"name": "syncthing/syncthing",
|
||||
"version": "v1.29.3",
|
||||
"date": "2025-03-12T11:56:30Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.202.1",
|
||||
"date": "2025-03-27T08:24:55Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.1",
|
||||
"date": "2025-01-01T16:15:52Z"
|
||||
},
|
||||
{
|
||||
"name": "openobserve/openobserve",
|
||||
"version": "v0.14.5-rc6",
|
||||
"date": "2025-03-27T05:15:49Z"
|
||||
},
|
||||
{
|
||||
"name": "element-hq/synapse",
|
||||
"version": "v1.127.1",
|
||||
"date": "2025-03-26T21:44:28Z"
|
||||
},
|
||||
{
|
||||
"name": "wazuh/wazuh",
|
||||
"version": "coverity-w13-4.12.0",
|
||||
"date": "2025-03-26T21:11:43Z"
|
||||
},
|
||||
{
|
||||
"name": "duplicati/duplicati",
|
||||
"version": "v2.1.0.112-2.1.0.112_canary_2025-03-26",
|
||||
"date": "2025-03-26T21:04:38Z"
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.6.3-rc1",
|
||||
"date": "2025-03-26T20:39:01Z"
|
||||
},
|
||||
{
|
||||
"name": "runtipi/runtipi",
|
||||
"version": "v3.10.0",
|
||||
"date": "2025-03-15T14:38:16Z"
|
||||
},
|
||||
{
|
||||
"name": "glanceapp/glance",
|
||||
"version": "v0.7.8",
|
||||
"date": "2025-03-26T19:59:07Z"
|
||||
},
|
||||
{
|
||||
"name": "semaphoreui/semaphore",
|
||||
"version": "v2.13.2",
|
||||
"date": "2025-03-26T19:13:48Z"
|
||||
},
|
||||
{
|
||||
"name": "dgtlmoon/changedetection.io",
|
||||
"version": "0.49.9",
|
||||
"date": "2025-03-26T15:31:03Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus/prometheus",
|
||||
"version": "v0.303.0-rc.0",
|
||||
"date": "2025-03-26T12:48:46Z"
|
||||
},
|
||||
{
|
||||
"name": "jupyter/notebook",
|
||||
"version": "@jupyter-notebook/ui-components@7.4.0-beta.3",
|
||||
"date": "2025-03-26T10:07:53Z"
|
||||
},
|
||||
{
|
||||
"name": "forgejo/forgejo",
|
||||
"version": "v12.0.0-dev",
|
||||
"date": "2025-03-26T09:58:55Z"
|
||||
},
|
||||
{
|
||||
"name": "Checkmk/checkmk",
|
||||
"version": "v2.2.0p41",
|
||||
"date": "2025-03-26T09:55:26Z"
|
||||
},
|
||||
{
|
||||
"name": "sct/overseerr",
|
||||
"version": "v1.34.0",
|
||||
"date": "2025-03-26T08:48:34Z"
|
||||
},
|
||||
{
|
||||
"name": "esphome/esphome",
|
||||
"version": "2025.3.2",
|
||||
"date": "2025-03-25T23:06:45Z"
|
||||
},
|
||||
{
|
||||
"name": "grafana/grafana",
|
||||
"version": "v11.6.0",
|
||||
"date": "2025-03-25T22:10:15Z"
|
||||
},
|
||||
{
|
||||
"name": "Stirling-Tools/Stirling-PDF",
|
||||
"version": "v0.45.0",
|
||||
"date": "2025-03-25T18:48:17Z"
|
||||
},
|
||||
{
|
||||
"name": "ipfs/kubo",
|
||||
"version": "v0.34.1",
|
||||
"date": "2025-03-25T18:11:12Z"
|
||||
},
|
||||
{
|
||||
"name": "aceberg/WatchYourLAN",
|
||||
"version": "2.1.1",
|
||||
"date": "2025-03-25T17:21:41Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v0.44.0",
|
||||
"date": "2025-03-25T16:09:10Z"
|
||||
},
|
||||
{
|
||||
"name": "dotnetfactory/fluid-calendar",
|
||||
"version": "v1.3.0",
|
||||
"date": "2025-03-25T15:55:02Z"
|
||||
},
|
||||
{
|
||||
"name": "hansmi/prometheus-paperless-exporter",
|
||||
"version": "v0.0.7",
|
||||
"date": "2025-03-25T15:11:18Z"
|
||||
},
|
||||
{
|
||||
"name": "jenkinsci/jenkins",
|
||||
"version": "jenkins-2.503",
|
||||
"date": "2025-03-25T14:01:20Z"
|
||||
},
|
||||
{
|
||||
"name": "crowdsecurity/crowdsec",
|
||||
"version": "v1.6.8",
|
||||
"date": "2025-03-25T13:33:10Z"
|
||||
},
|
||||
{
|
||||
"name": "icereed/paperless-gpt",
|
||||
"version": "v0.14.0",
|
||||
"date": "2025-03-24T07:03:24Z"
|
||||
"version": "v0.14.1",
|
||||
"date": "2025-03-25T10:09:14Z"
|
||||
},
|
||||
{
|
||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||
"version": "pmm-6401-v1.114.0",
|
||||
"date": "2025-03-25T07:58:34Z"
|
||||
},
|
||||
{
|
||||
"name": "caddyserver/caddy",
|
||||
"version": "v2.9.1",
|
||||
"date": "2025-01-08T15:22:53Z"
|
||||
},
|
||||
{
|
||||
"name": "influxdata/influxdb",
|
||||
"version": "v3.0.0-0.beta.2",
|
||||
"date": "2025-03-24T21:12:19Z"
|
||||
},
|
||||
{
|
||||
"name": "ZoeyVid/NPMplus",
|
||||
"version": "2025-03-24-r2",
|
||||
"date": "2025-03-24T20:52:35Z"
|
||||
},
|
||||
{
|
||||
"name": "HabitRPG/habitica",
|
||||
"version": "v5.35.0",
|
||||
"date": "2025-03-24T20:51:10Z"
|
||||
},
|
||||
{
|
||||
"name": "go-gitea/gitea",
|
||||
"version": "v1.23.6",
|
||||
"date": "2025-03-24T20:38:45Z"
|
||||
},
|
||||
{
|
||||
"name": "docmost/docmost",
|
||||
"version": "v0.9.0",
|
||||
"date": "2025-03-24T18:25:37Z"
|
||||
},
|
||||
{
|
||||
"name": "Radarr/Radarr",
|
||||
"version": "v5.21.1.9799",
|
||||
"date": "2025-03-24T15:52:12Z"
|
||||
},
|
||||
{
|
||||
"name": "Graylog2/graylog2-server",
|
||||
"version": "6.2.0-beta.2",
|
||||
"date": "2025-03-24T12:20:51Z"
|
||||
},
|
||||
{
|
||||
"name": "wavelog/wavelog",
|
||||
"version": "2.0.2",
|
||||
"date": "2025-03-24T12:02:08Z"
|
||||
},
|
||||
{
|
||||
"name": "nzbgetcom/nzbget",
|
||||
"version": "v24.8",
|
||||
"date": "2025-03-18T07:33:51Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.22.1685",
|
||||
"date": "2025-03-24T05:54:06Z"
|
||||
},
|
||||
{
|
||||
"name": "pocketbase/pocketbase",
|
||||
"version": "v0.26.3",
|
||||
"date": "2025-03-24T04:42:52Z"
|
||||
},
|
||||
{
|
||||
"name": "firefly-iii/firefly-iii",
|
||||
"version": "v6.2.10",
|
||||
@ -59,96 +399,31 @@
|
||||
"version": "v1.17.0",
|
||||
"date": "2025-03-24T00:46:32Z"
|
||||
},
|
||||
{
|
||||
"name": "runtipi/runtipi",
|
||||
"version": "v3.10.0",
|
||||
"date": "2025-03-15T14:38:16Z"
|
||||
},
|
||||
{
|
||||
"name": "msgbyte/tianji",
|
||||
"version": "v1.19.2",
|
||||
"date": "2025-03-23T16:33:14Z"
|
||||
},
|
||||
{
|
||||
"name": "dgtlmoon/changedetection.io",
|
||||
"version": "0.49.7",
|
||||
"date": "2025-03-23T15:51:11Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.1.4",
|
||||
"date": "2025-03-13T15:41:42Z"
|
||||
},
|
||||
{
|
||||
"name": "Lidarr/Lidarr",
|
||||
"version": "v2.10.3.4602",
|
||||
"date": "2025-03-23T11:00:37Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
"version": "debian/12.0.12",
|
||||
"date": "2025-03-16T11:59:24Z"
|
||||
},
|
||||
{
|
||||
"name": "nicolargo/glances",
|
||||
"version": "v4.3.1",
|
||||
"date": "2025-03-23T09:02:54Z"
|
||||
},
|
||||
{
|
||||
"name": "forgejo/forgejo",
|
||||
"version": "v10.0.3",
|
||||
"date": "2025-03-23T08:58:24Z"
|
||||
},
|
||||
{
|
||||
"name": "Radarr/Radarr",
|
||||
"version": "v5.20.2.9777",
|
||||
"date": "2025-03-18T12:11:37Z"
|
||||
},
|
||||
{
|
||||
"name": "Prowlarr/Prowlarr",
|
||||
"version": "v1.32.2.4987",
|
||||
"date": "2025-03-16T09:41:37Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.1",
|
||||
"date": "2025-01-01T16:15:52Z"
|
||||
},
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v11.7.6",
|
||||
"date": "2025-03-23T05:08:22Z"
|
||||
},
|
||||
{
|
||||
"name": "esphome/esphome",
|
||||
"version": "2025.3.1",
|
||||
"date": "2025-03-23T04:45:21Z"
|
||||
},
|
||||
{
|
||||
"name": "usememos/memos",
|
||||
"version": "v0.24.2",
|
||||
"date": "2025-03-23T04:01:50Z"
|
||||
},
|
||||
{
|
||||
"name": "OliveTin/OliveTin",
|
||||
"version": "2025.3.23",
|
||||
"date": "2025-03-23T01:38:55Z"
|
||||
},
|
||||
{
|
||||
"name": "hoarder-app/hoarder",
|
||||
"version": "sdk/v0.23.0",
|
||||
"date": "2025-03-22T17:26:10Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
"version": "v1.10.0-rc.1",
|
||||
"date": "2025-03-22T06:34:33Z"
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.6.2",
|
||||
"date": "2025-03-18T03:11:33Z"
|
||||
},
|
||||
{
|
||||
"name": "netbox-community/netbox",
|
||||
"version": "v4.2.6",
|
||||
@ -159,11 +434,6 @@
|
||||
"version": "4.4.1",
|
||||
"date": "2024-12-20T13:21:31Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.3.4",
|
||||
"date": "2025-03-21T20:22:46Z"
|
||||
},
|
||||
{
|
||||
"name": "leiweibau/Pi.Alert",
|
||||
"version": "v2025-03-21",
|
||||
@ -174,21 +444,6 @@
|
||||
"version": "v2.7.6",
|
||||
"date": "2025-03-21T19:24:53Z"
|
||||
},
|
||||
{
|
||||
"name": "homarr-labs/homarr",
|
||||
"version": "v1.12.0",
|
||||
"date": "2025-03-21T19:14:59Z"
|
||||
},
|
||||
{
|
||||
"name": "influxdata/influxdb",
|
||||
"version": "v1.12.0rc0",
|
||||
"date": "2025-03-21T17:24:38Z"
|
||||
},
|
||||
{
|
||||
"name": "ZoeyVid/NPMplus",
|
||||
"version": "2025-03-21-r1",
|
||||
"date": "2025-03-21T14:54:00Z"
|
||||
},
|
||||
{
|
||||
"name": "photoprism/photoprism",
|
||||
"version": "250321-57590c48b",
|
||||
@ -199,51 +454,16 @@
|
||||
"version": "v0.107.59",
|
||||
"date": "2025-03-21T11:11:39Z"
|
||||
},
|
||||
{
|
||||
"name": "openobserve/openobserve",
|
||||
"version": "v0.14.5-rc5",
|
||||
"date": "2025-03-21T10:50:34Z"
|
||||
},
|
||||
{
|
||||
"name": "StarFleetCPTN/GoMFT",
|
||||
"version": "v0.1.18",
|
||||
"date": "2025-03-21T04:36:04Z"
|
||||
},
|
||||
{
|
||||
"name": "jhuckaby/Cronicle",
|
||||
"version": "v0.9.77",
|
||||
"date": "2025-03-21T02:25:42Z"
|
||||
},
|
||||
{
|
||||
"name": "ipfs/kubo",
|
||||
"version": "v0.34.0",
|
||||
"date": "2025-03-20T21:51:05Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v0.43.1",
|
||||
"date": "2025-03-20T20:38:06Z"
|
||||
},
|
||||
{
|
||||
"name": "stonith404/pingvin-share",
|
||||
"version": "v1.10.4",
|
||||
"date": "2025-03-20T18:56:10Z"
|
||||
},
|
||||
{
|
||||
"name": "dotnetfactory/fluid-calendar",
|
||||
"version": "v1.2.3",
|
||||
"date": "2025-03-20T17:54:55Z"
|
||||
},
|
||||
{
|
||||
"name": "ellite/Wallos",
|
||||
"version": "v2.48.0",
|
||||
"date": "2025-03-20T16:57:43Z"
|
||||
},
|
||||
{
|
||||
"name": "HabitRPG/habitica",
|
||||
"version": "v5.34.4",
|
||||
"date": "2025-03-20T16:54:45Z"
|
||||
},
|
||||
{
|
||||
"name": "neo4j/neo4j",
|
||||
"version": "4.4.42",
|
||||
@ -254,51 +474,16 @@
|
||||
"version": "8.0-rc1",
|
||||
"date": "2025-03-11T18:16:27Z"
|
||||
},
|
||||
{
|
||||
"name": "Stirling-Tools/Stirling-PDF",
|
||||
"version": "v0.44.3",
|
||||
"date": "2025-03-20T09:43:56Z"
|
||||
},
|
||||
{
|
||||
"name": "jenkinsci/jenkins",
|
||||
"version": "jenkins-2.502",
|
||||
"date": "2025-03-18T15:02:59Z"
|
||||
},
|
||||
{
|
||||
"name": "wazuh/wazuh",
|
||||
"version": "coverity-w11-4.12.0",
|
||||
"date": "2025-03-14T20:04:02Z"
|
||||
},
|
||||
{
|
||||
"name": "jupyter/notebook",
|
||||
"version": "@jupyter-notebook/ui-components@7.4.0-beta.2",
|
||||
"date": "2025-03-20T07:41:24Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.201.1",
|
||||
"date": "2025-03-20T06:59:18Z"
|
||||
},
|
||||
{
|
||||
"name": "rabbitmq/rabbitmq-server",
|
||||
"version": "v4.0.7",
|
||||
"date": "2025-02-26T19:07:11Z"
|
||||
},
|
||||
{
|
||||
"name": "NodeBB/NodeBB",
|
||||
"version": "v4.2.0",
|
||||
"date": "2025-03-19T18:34:01Z"
|
||||
},
|
||||
{
|
||||
"name": "seanmorley15/AdventureLog",
|
||||
"version": "v0.9.0",
|
||||
"date": "2025-03-19T13:30:02Z"
|
||||
},
|
||||
{
|
||||
"name": "hakimel/reveal.js",
|
||||
"version": "5.2.0",
|
||||
"date": "2025-03-19T11:03:56Z"
|
||||
},
|
||||
{
|
||||
"name": "Luligu/matterbridge",
|
||||
"version": "2.2.5",
|
||||
@ -309,46 +494,11 @@
|
||||
"version": "v0.22.1",
|
||||
"date": "2025-03-18T21:01:22Z"
|
||||
},
|
||||
{
|
||||
"name": "zitadel/zitadel",
|
||||
"version": "v2.66.14",
|
||||
"date": "2025-03-18T16:05:48Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus/prometheus",
|
||||
"version": "v2.53.4",
|
||||
"date": "2025-03-18T15:50:39Z"
|
||||
},
|
||||
{
|
||||
"name": "syncthing/syncthing",
|
||||
"version": "v1.29.3",
|
||||
"date": "2025-03-12T11:56:30Z"
|
||||
},
|
||||
{
|
||||
"name": "element-hq/synapse",
|
||||
"version": "v1.126.0",
|
||||
"date": "2025-03-11T16:29:42Z"
|
||||
},
|
||||
{
|
||||
"name": "OctoPrint/OctoPrint",
|
||||
"version": "1.10.3",
|
||||
"date": "2024-11-05T09:20:50Z"
|
||||
},
|
||||
{
|
||||
"name": "n8n-io/n8n",
|
||||
"version": "n8n@1.84.0",
|
||||
"date": "2025-03-17T13:58:36Z"
|
||||
},
|
||||
{
|
||||
"name": "zabbix/zabbix",
|
||||
"version": "7.2.5rc1",
|
||||
"date": "2025-03-18T14:10:32Z"
|
||||
},
|
||||
{
|
||||
"name": "crowdsecurity/crowdsec",
|
||||
"version": "v1.6.6",
|
||||
"date": "2025-03-18T13:05:01Z"
|
||||
},
|
||||
{
|
||||
"name": "apache/couchdb",
|
||||
"version": "3.4.3.post1",
|
||||
@ -374,51 +524,16 @@
|
||||
"version": "v0.8.5.11",
|
||||
"date": "2025-03-17T19:25:25Z"
|
||||
},
|
||||
{
|
||||
"name": "goauthentik/authentik",
|
||||
"version": "version/2025.2.2",
|
||||
"date": "2025-03-17T19:16:49Z"
|
||||
},
|
||||
{
|
||||
"name": "Sonarr/Sonarr",
|
||||
"version": "v4.0.14.2939",
|
||||
"date": "2025-03-17T19:12:37Z"
|
||||
},
|
||||
{
|
||||
"name": "TriliumNext/Notes",
|
||||
"version": "v0.92.4",
|
||||
"date": "2025-03-17T16:00:19Z"
|
||||
},
|
||||
{
|
||||
"name": "Graylog2/graylog2-server",
|
||||
"version": "6.2.0-beta.1",
|
||||
"date": "2025-03-17T13:00:39Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/operating-system",
|
||||
"version": "15.0",
|
||||
"date": "2025-03-17T10:26:18Z"
|
||||
},
|
||||
{
|
||||
"name": "webmin/webmin",
|
||||
"version": "2.303",
|
||||
"date": "2025-03-17T04:54:50Z"
|
||||
},
|
||||
{
|
||||
"name": "fallenbagel/jellyseerr",
|
||||
"version": "v2.5.1",
|
||||
"date": "2025-03-17T03:18:32Z"
|
||||
},
|
||||
{
|
||||
"name": "glanceapp/glance",
|
||||
"version": "v0.7.7",
|
||||
"date": "2025-03-17T02:24:06Z"
|
||||
},
|
||||
{
|
||||
"name": "gethomepage/homepage",
|
||||
"version": "v1.0.4",
|
||||
"date": "2025-03-16T22:19:31Z"
|
||||
},
|
||||
{
|
||||
"name": "autobrr/autobrr",
|
||||
"version": "v1.60.0",
|
||||
@ -434,11 +549,6 @@
|
||||
"version": "v3.5.0",
|
||||
"date": "2025-03-16T06:05:55Z"
|
||||
},
|
||||
{
|
||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||
"version": "v1.17.0-victorialogs",
|
||||
"date": "2025-03-16T00:22:43Z"
|
||||
},
|
||||
{
|
||||
"name": "pelican-dev/wings",
|
||||
"version": "v1.0.0-beta10",
|
||||
@ -449,16 +559,6 @@
|
||||
"version": "v1.0.0-beta18",
|
||||
"date": "2025-03-15T20:24:04Z"
|
||||
},
|
||||
{
|
||||
"name": "bunkerity/bunkerweb",
|
||||
"version": "v1.6.1",
|
||||
"date": "2025-03-15T17:29:17Z"
|
||||
},
|
||||
{
|
||||
"name": "duplicati/duplicati",
|
||||
"version": "v2.1.0.111-2.1.0.111_canary_2025-03-15",
|
||||
"date": "2025-03-15T11:06:44Z"
|
||||
},
|
||||
{
|
||||
"name": "henrygd/beszel",
|
||||
"version": "v0.10.2",
|
||||
@ -519,11 +619,6 @@
|
||||
"version": "4.0.1-beta.1",
|
||||
"date": "2024-12-13T00:16:24Z"
|
||||
},
|
||||
{
|
||||
"name": "emqx/emqx",
|
||||
"version": "e5.9.0-beta.1",
|
||||
"date": "2025-03-12T09:52:26Z"
|
||||
},
|
||||
{
|
||||
"name": "gotson/komga",
|
||||
"version": "1.21.2",
|
||||
@ -559,11 +654,6 @@
|
||||
"version": "v1.9.9",
|
||||
"date": "2025-03-10T03:22:11Z"
|
||||
},
|
||||
{
|
||||
"name": "caddyserver/caddy",
|
||||
"version": "v2.9.1",
|
||||
"date": "2025-01-08T15:22:53Z"
|
||||
},
|
||||
{
|
||||
"name": "awawa-dev/HyperHDR",
|
||||
"version": "v21.0.0.0",
|
||||
@ -574,11 +664,6 @@
|
||||
"version": "v2.0.0.4645",
|
||||
"date": "2017-03-07T18:56:06Z"
|
||||
},
|
||||
{
|
||||
"name": "Brandawg93/PeaNUT",
|
||||
"version": "v5.6.0",
|
||||
"date": "2025-03-08T19:02:31Z"
|
||||
},
|
||||
{
|
||||
"name": "YuukanOO/seelf",
|
||||
"version": "v2.4.2",
|
||||
@ -624,11 +709,6 @@
|
||||
"version": "3.0.0",
|
||||
"date": "2025-03-05T21:41:29Z"
|
||||
},
|
||||
{
|
||||
"name": "immich-app/immich",
|
||||
"version": "v1.129.0",
|
||||
"date": "2025-03-05T20:19:18Z"
|
||||
},
|
||||
{
|
||||
"name": "snipe/snipe-it",
|
||||
"version": "v8.0.4",
|
||||
@ -639,21 +719,11 @@
|
||||
"version": "tc_v0.6.4",
|
||||
"date": "2025-03-05T15:43:40Z"
|
||||
},
|
||||
{
|
||||
"name": "go-gitea/gitea",
|
||||
"version": "v1.23.5",
|
||||
"date": "2025-03-05T00:10:15Z"
|
||||
},
|
||||
{
|
||||
"name": "apache/tomcat",
|
||||
"version": "10.1.39",
|
||||
"date": "2025-03-04T19:05:18Z"
|
||||
},
|
||||
{
|
||||
"name": "tailscale/tailscale",
|
||||
"version": "v1.80.3",
|
||||
"date": "2025-03-04T18:47:25Z"
|
||||
},
|
||||
{
|
||||
"name": "pi-hole/pi-hole",
|
||||
"version": "v6.0.5",
|
||||
@ -679,31 +749,11 @@
|
||||
"version": "2.8.0",
|
||||
"date": "2025-03-02T04:30:50Z"
|
||||
},
|
||||
{
|
||||
"name": "inspircd/inspircd",
|
||||
"version": "v4.6.0",
|
||||
"date": "2025-03-01T10:29:31Z"
|
||||
},
|
||||
{
|
||||
"name": "tobychui/zoraxy",
|
||||
"version": "v3.1.9",
|
||||
"date": "2025-03-01T02:24:33Z"
|
||||
},
|
||||
{
|
||||
"name": "grocy/grocy",
|
||||
"version": "v4.4.2",
|
||||
"date": "2025-02-28T16:26:05Z"
|
||||
},
|
||||
{
|
||||
"name": "jordan-dalby/ByteStash",
|
||||
"version": "v1.5.7",
|
||||
"date": "2025-02-27T20:04:08Z"
|
||||
},
|
||||
{
|
||||
"name": "docmost/docmost",
|
||||
"version": "v0.8.4",
|
||||
"date": "2025-02-27T16:18:45Z"
|
||||
},
|
||||
{
|
||||
"name": "cloudflare/cloudflared",
|
||||
"version": "2025.2.1",
|
||||
@ -784,21 +834,6 @@
|
||||
"version": "v0.18.3",
|
||||
"date": "2025-02-21T20:51:12Z"
|
||||
},
|
||||
{
|
||||
"name": "wavelog/wavelog",
|
||||
"version": "2.0.1",
|
||||
"date": "2025-02-21T17:55:59Z"
|
||||
},
|
||||
{
|
||||
"name": "grafana/grafana",
|
||||
"version": "v11.5.2",
|
||||
"date": "2025-02-19T00:12:27Z"
|
||||
},
|
||||
{
|
||||
"name": "gristlabs/grist-core",
|
||||
"version": "v1.4.2",
|
||||
"date": "2025-02-18T21:43:36Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus-pve/prometheus-pve-exporter",
|
||||
"version": "v3.5.2",
|
||||
@ -864,11 +899,6 @@
|
||||
"version": "v1.9.0",
|
||||
"date": "2025-02-11T13:26:42Z"
|
||||
},
|
||||
{
|
||||
"name": "TasmoAdmin/TasmoAdmin",
|
||||
"version": "v4.2.3",
|
||||
"date": "2025-02-09T23:07:48Z"
|
||||
},
|
||||
{
|
||||
"name": "dani-garcia/vaultwarden",
|
||||
"version": "1.33.2",
|
||||
@ -924,21 +954,11 @@
|
||||
"version": "1.7.6",
|
||||
"date": "2025-02-01T09:50:52Z"
|
||||
},
|
||||
{
|
||||
"name": "hivemq/hivemq-community-edition",
|
||||
"version": "2025.1",
|
||||
"date": "2025-01-29T10:04:27Z"
|
||||
},
|
||||
{
|
||||
"name": "rustdesk/rustdesk-server",
|
||||
"version": "1.1.14",
|
||||
"date": "2025-01-25T12:48:28Z"
|
||||
},
|
||||
{
|
||||
"name": "hansmi/prometheus-paperless-exporter",
|
||||
"version": "v0.0.6",
|
||||
"date": "2025-01-22T22:19:33Z"
|
||||
},
|
||||
{
|
||||
"name": "crafty-controller/crafty-4",
|
||||
"version": "v4.4.7",
|
||||
@ -999,11 +1019,6 @@
|
||||
"version": "v0.24.6",
|
||||
"date": "2024-12-22T20:24:35Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/uptime-kuma",
|
||||
"version": "2.0.0-beta.1",
|
||||
"date": "2024-12-20T08:56:43Z"
|
||||
},
|
||||
{
|
||||
"name": "IceWhaleTech/CasaOS",
|
||||
"version": "v0.4.15",
|
||||
@ -1034,11 +1049,6 @@
|
||||
"version": "v1.7.3",
|
||||
"date": "2024-11-27T21:26:11Z"
|
||||
},
|
||||
{
|
||||
"name": "Bubka/2FAuth",
|
||||
"version": "v5.4.3",
|
||||
"date": "2024-11-27T14:02:18Z"
|
||||
},
|
||||
{
|
||||
"name": "lldap/lldap",
|
||||
"version": "v0.6.1",
|
||||
@ -1084,11 +1094,6 @@
|
||||
"version": "v2024.10.22-7ca5933",
|
||||
"date": "2024-10-22T09:58:03Z"
|
||||
},
|
||||
{
|
||||
"name": "aceberg/WatchYourLAN",
|
||||
"version": "2.0.4",
|
||||
"date": "2024-10-20T18:57:37Z"
|
||||
},
|
||||
{
|
||||
"name": "NLnetLabs/unbound",
|
||||
"version": "release-1.22.0",
|
||||
@ -1193,10 +1198,5 @@
|
||||
"name": "wger-project/wger",
|
||||
"version": "2.2",
|
||||
"date": "2023-12-06T12:08:09Z"
|
||||
},
|
||||
{
|
||||
"name": "sct/overseerr",
|
||||
"version": "preview-test-node-18",
|
||||
"date": "2023-11-06T10:21:37Z"
|
||||
}
|
||||
]
|
||||
|
||||
40
install/alpine-gitea-install.sh
Normal file
40
install/alpine-gitea-install.sh
Normal file
@ -0,0 +1,40 @@
|
||||
#!/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://gitea.io/
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apk add \
|
||||
newt \
|
||||
curl \
|
||||
openssh \
|
||||
nano \
|
||||
mc \
|
||||
gpg
|
||||
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Installing Gitea"
|
||||
$STD apk add --no-cache gitea
|
||||
msg_ok "Installed Gitea"
|
||||
|
||||
msg_info "Enabling Gitea Service"
|
||||
$STD rc-update add gitea default
|
||||
msg_ok "Enabled Gitea Service"
|
||||
|
||||
msg_info "Starting Gitea"
|
||||
$STD service gitea start
|
||||
msg_ok "Started Gitea"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
59
install/alpine-mariadb-install.sh
Normal file
59
install/alpine-mariadb-install.sh
Normal file
@ -0,0 +1,59 @@
|
||||
#!/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://mariadb.org/
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apk add \
|
||||
gpg \
|
||||
sudo
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Installing MariaDB"
|
||||
$STD apk add --no-cache mariadb mariadb-client
|
||||
$STD rc-update add mariadb default
|
||||
$STD rc-service mariadb start
|
||||
msg_ok "Installed MariaDB"
|
||||
|
||||
msg_info "Configuring MariaDB"
|
||||
mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql >/dev/null 2>&1
|
||||
$STD rc-service mariadb restart
|
||||
msg_ok "MariaDB Configured"
|
||||
|
||||
read -r -p "Would you like to install Adminer with lighthttpd? <y/N>: " prompt
|
||||
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
||||
msg_info "Installing Adminer"
|
||||
$STD apk add --no-cache lighttpd php php-cgi php-mysqli php-mbstring php-zip php-gd php-json php-curl jq
|
||||
sed -i 's|server.modules += ( "mod_cgi" )|server.modules += ( "mod_cgi", "mod_fastcgi" )|' /etc/lighttpd/lighttpd.conf
|
||||
echo 'fastcgi.server += ( ".php" => (( "bin-path" => "/usr/bin/php-cgi", "socket" => "/var/run/php-cgi.sock" )))' >>/etc/lighttpd/lighttpd.conf
|
||||
ADMINER_VERSION=$(curl -s https://api.github.com/repos/vrana/adminer/releases/latest | jq -r '.tag_name' | sed 's/v//')
|
||||
wget -q -O /var/www/adminer.php "https://github.com/vrana/adminer/releases/download/v${ADMINER_VERSION}/adminer-${ADMINER_VERSION}.php"
|
||||
chown lighttpd:lighttpd /var/www/adminer.php
|
||||
chmod 755 /var/www/adminer.php
|
||||
msg_ok "Adminer Installed"
|
||||
|
||||
msg_info "Starting Lighttpd"
|
||||
$STD rc-update add lighttpd default
|
||||
$STD rc-service lighttpd restart
|
||||
msg_ok "Lighttpd Started"
|
||||
|
||||
echo -e "Adminer is available at: ${BL}http://$(hostname -I | awk '{print $1}')/adminer${CL}"
|
||||
else
|
||||
echo -e "Skipped Adminer Installation..."
|
||||
fi
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
|
||||
msg_info "Cleaning up"
|
||||
msg_ok "Cleaned"
|
||||
56
install/alpine-node-red-install.sh
Normal file
56
install/alpine-node-red-install.sh
Normal file
@ -0,0 +1,56 @@
|
||||
#!/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://nodered.org/
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apk add --no-cache \
|
||||
gpg \
|
||||
git \
|
||||
nodejs \
|
||||
npm
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Creating Node-RED User"
|
||||
adduser -D -H -s /sbin/nologin -G users nodered
|
||||
msg_ok "Created Node-RED User"
|
||||
|
||||
msg_info "Installing Node-RED"
|
||||
npm install -g --unsafe-perm node-red
|
||||
msg_ok "Installed Node-RED"
|
||||
|
||||
msg_info "Creating Node-RED Service"
|
||||
service_path="/etc/init.d/nodered"
|
||||
|
||||
echo '#!/sbin/openrc-run
|
||||
description="Node-RED Service"
|
||||
|
||||
command="/usr/bin/node-red"
|
||||
command_args="--max-old-space-size=128 -v"
|
||||
command_user="nodered"
|
||||
pidfile="/var/run/nodered.pid"
|
||||
|
||||
depend() {
|
||||
use net
|
||||
}' >$service_path
|
||||
|
||||
chmod +x $service_path
|
||||
$STD rc-update add nodered default
|
||||
msg_ok "Created Node-RED Service"
|
||||
|
||||
msg_info "Starting Node-RED"
|
||||
$STD service nodered start
|
||||
msg_ok "Started Node-RED"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
@ -35,6 +35,7 @@ fi
|
||||
msg_ok "Set Up Hardware Acceleration"
|
||||
|
||||
msg_info "Installing ErsatzTV"
|
||||
temp_file=$(mktemp)
|
||||
cd /opt
|
||||
RELEASE=$(curl -s https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1)
|
||||
wget -qO- "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" -O "$temp_file"
|
||||
|
||||
69
install/fileflows-install.sh
Normal file
69
install/fileflows-install.sh
Normal file
@ -0,0 +1,69 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: kkroboth
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://fileflows.com/
|
||||
|
||||
# Import Functions und Setup
|
||||
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 \
|
||||
ffmpeg
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
read -r -p "Do you need the intel-media-va-driver-non-free driver for HW encoding (Debian 12 only)? <y/N> " prompt
|
||||
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
||||
msg_info "Installing Intel Hardware Acceleration (non-free)"
|
||||
cat <<EOF >/etc/apt/sources.list.d/non-free.list
|
||||
|
||||
deb http://deb.debian.org/debian bookworm non-free non-free-firmware
|
||||
deb-src http://deb.debian.org/debian bookworm non-free non-free-firmware
|
||||
|
||||
deb http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
|
||||
deb-src http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
|
||||
|
||||
deb http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
|
||||
deb-src http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
|
||||
EOF
|
||||
$STD apt-get update
|
||||
$STD apt-get -y install {intel-media-va-driver-non-free,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
|
||||
else
|
||||
msg_info "Installing Intel Hardware Acceleration"
|
||||
$STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
|
||||
fi
|
||||
msg_ok "Installed and Set Up Intel Hardware Acceleration"
|
||||
|
||||
msg_info "Installing ASP.NET Core Runtime"
|
||||
curl -fsSL https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -o packages-microsoft-prod.deb
|
||||
$STD dpkg -i packages-microsoft-prod.deb
|
||||
rm -rf packages-microsoft-prod.deb
|
||||
$STD apt-get update
|
||||
$STD apt-get install -y aspnetcore-runtime-8.0
|
||||
msg_ok "Installed ASP.NET Core Runtime"
|
||||
|
||||
msg_info "Setup ${APPLICATION}"
|
||||
$STD ln -svf /usr/bin/ffmpeg /usr/local/bin/ffmpeg
|
||||
$STD ln -svf /usr/bin/ffprobe /usr/local/bin/ffprobe
|
||||
temp_file=$(mktemp)
|
||||
curl -fsSL https://fileflows.com/downloads/zip -o $temp_file
|
||||
unzip -q -d /opt/fileflows $temp_file
|
||||
(cd /opt/fileflows/Server && dotnet FileFlows.Server.dll --systemd install --root true)
|
||||
systemctl enable -q --now fileflows.service
|
||||
msg_ok "Setup ${APPLICATION}"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -f $temp_file
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleaned"
|
||||
@ -26,7 +26,11 @@ $STD apt-get install -y nodejs
|
||||
msg_ok "Installed Node.js"
|
||||
|
||||
msg_info "Installing FlowiseAI (Patience)"
|
||||
$STD npm install -g flowise
|
||||
$STD npm install -g flowise \
|
||||
@opentelemetry/exporter-trace-otlp-grpc \
|
||||
@opentelemetry/exporter-trace-otlp-proto \
|
||||
@opentelemetry/sdk-trace-node \
|
||||
langchainhub
|
||||
mkdir -p /opt/flowiseai
|
||||
wget -q https://raw.githubusercontent.com/FlowiseAI/Flowise/main/packages/server/.env.example -O /opt/flowiseai/.env
|
||||
msg_ok "Installed FlowiseAI"
|
||||
|
||||
@ -34,10 +34,10 @@ msg_ok "Setup Golang"
|
||||
|
||||
msg_info "Setup ${APPLICATION} (Patience)"
|
||||
temp_file=$(mktemp)
|
||||
RELEASE=$(curl -s https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
wget -q "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -O $temp_file
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
curl -fsSL "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v.${RELEASE}.tar.gz" -o $temp_file
|
||||
tar -xzf $temp_file
|
||||
mv GoMFT-${RELEASE}/ /opt/gomft
|
||||
mv GoMFT-v.${RELEASE}/ /opt/gomft
|
||||
cd /opt/gomft
|
||||
$STD go mod download
|
||||
$STD go install github.com/a-h/templ/cmd/templ@latest
|
||||
|
||||
@ -32,7 +32,7 @@ msg_ok "Installed Node.js"
|
||||
LOCAL_IP=$(hostname -I | awk '{print $1}')
|
||||
RELEASE=$(curl -s https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
msg_info "Installing Homepage v${RELEASE} (Patience)"
|
||||
wget -q https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz
|
||||
curl -fsSL "https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz" -o $(basename "https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz")
|
||||
$STD tar -xzf v${RELEASE}.tar.gz
|
||||
rm -rf v${RELEASE}.tar.gz
|
||||
mkdir -p /opt/homepage/config
|
||||
|
||||
@ -70,9 +70,9 @@ PASSKEY=$(openssl rand -base64 24 | tr -d '/+=')
|
||||
WEBHOOK_SECRET=$(openssl rand -base64 24 | tr -d '/+=')
|
||||
JWT_SECRET=$(openssl rand -base64 24 | tr -d '/+=')
|
||||
|
||||
sed -i "s/^DB_USERNAME=.*/DB_USERNAME=komodo_admin/" /opt/komodo/compose.env
|
||||
sed -i "s/^DB_PASSWORD=.*/DB_PASSWORD=${DB_PASSWORD}/" /opt/komodo/compose.env
|
||||
sed -i "s/^PASSKEY=.*/PASSKEY=${PASSKEY}/" /opt/komodo/compose.env
|
||||
sed -i "s/^KOMODO_DB_USERNAME=.*/KOMODO_DB_USERNAME=komodo_admin/" /opt/komodo/compose.env
|
||||
sed -i "s/^KOMODO_DB_PASSWORD=.*/KOMODO_DB_PASSWORD=${DB_PASSWORD}/" /opt/komodo/compose.env
|
||||
sed -i "s/^KOMODO_PASSKEY=.*/KOMODO_PASSKEY=${PASSKEY}/" /opt/komodo/compose.env
|
||||
sed -i "s/^KOMODO_WEBHOOK_SECRET=.*/KOMODO_WEBHOOK_SECRET=${WEBHOOK_SECRET}/" /opt/komodo/compose.env
|
||||
sed -i "s/^KOMODO_JWT_SECRET=.*/KOMODO_JWT_SECRET=${JWT_SECRET}/" /opt/komodo/compose.env
|
||||
msg_ok "Setup Komodo Environment"
|
||||
|
||||
@ -43,6 +43,7 @@ After=syslog.target network.target
|
||||
Type=simple
|
||||
ExecStart=/usr/local/bin/ipfs daemon
|
||||
Restart=on-failure
|
||||
Environment=HOME=/root
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: tteck (tteckster) | Co-Author: Slaviša Arežina (tremor021)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://www.qbittorrent.org/
|
||||
|
||||
@ -13,10 +13,14 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing qbittorrent-nox"
|
||||
$STD apt-get install -y qbittorrent-nox
|
||||
mkdir -p /.config/qBittorrent/
|
||||
cat <<EOF >/.config/qBittorrent/qBittorrent.conf
|
||||
msg_info "Setup qBittorrent-nox"
|
||||
FULLRELEASE=$(curl -s https://api.github.com/repos/userdocs/qbittorrent-nox-static/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
RELEASE=$(echo $FULLRELEASE | cut -c 9-13)
|
||||
mkdir -p /opt/qbittorrent
|
||||
curl -fsSL "https://github.com/userdocs/qbittorrent-nox-static/releases/download/${FULLRELEASE}/x86_64-qbittorrent-nox" -o /opt/qbittorrent/qbittorrent-nox
|
||||
chmod +x /opt/qbittorrent/qbittorrent-nox
|
||||
mkdir -p $HOME/.config/qBittorrent/
|
||||
cat <<EOF >$HOME/.config/qBittorrent/qBittorrent.conf
|
||||
[LegalNotice]
|
||||
Accepted=true
|
||||
|
||||
@ -26,16 +30,21 @@ WebUI\Port=8090
|
||||
WebUI\UseUPnP=false
|
||||
WebUI\Username=admin
|
||||
EOF
|
||||
msg_ok "qbittorrent-nox"
|
||||
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
||||
msg_ok "Setup qBittorrent-nox"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/qbittorrent-nox.service
|
||||
[Unit]
|
||||
Description=qBittorrent client
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/qbittorrent-nox
|
||||
Type=simple
|
||||
User=root
|
||||
ExecStart=/opt/qbittorrent/qbittorrent-nox
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
|
||||
@ -8,7 +8,6 @@
|
||||
color() {
|
||||
# Colors
|
||||
YW=$(echo "\033[33m")
|
||||
YWB=$(echo "\033[93m")
|
||||
BL=$(echo "\033[36m")
|
||||
RD=$(echo "\033[01;31m")
|
||||
GN=$(echo "\033[1;92m")
|
||||
@ -30,10 +29,8 @@ color() {
|
||||
INFO="${TAB}💡${TAB}${CL}"
|
||||
NETWORK="${TAB}📡${TAB}${CL}"
|
||||
OS="${TAB}🖥️${TAB}${CL}"
|
||||
OSVERSION="${TAB}🌟${TAB}${CL}"
|
||||
HOSTNAME="${TAB}🏠${TAB}${CL}"
|
||||
GATEWAY="${TAB}🌐${TAB}${CL}"
|
||||
DEFAULT="${TAB}⚙️${TAB}${CL}"
|
||||
}
|
||||
|
||||
# Function to set STD mode based on verbosity
|
||||
@ -143,6 +140,11 @@ update_os() {
|
||||
$STD apk update
|
||||
$STD apk upgrade
|
||||
msg_ok "Updated Container OS"
|
||||
|
||||
msg_info "Installing core dependencies"
|
||||
$STD apk update
|
||||
$STD apk add newt curl openssh nano mc ncurses
|
||||
msg_ok "Core dependencies installed"
|
||||
}
|
||||
|
||||
# This function modifies the message of the day (motd) and SSH settings
|
||||
@ -181,7 +183,7 @@ motd_ssh() {
|
||||
|
||||
# Validate Timezone for some LXC's
|
||||
validate_tz() {
|
||||
[[ -f "/usr/share/zoneinfo/$1" ]]
|
||||
[[ -f "/usr/share/zoneinfo/$1" ]]
|
||||
}
|
||||
|
||||
# This function customizes the container and enables passwordless login for the root user
|
||||
@ -191,4 +193,7 @@ customize() {
|
||||
bash -c "passwd -d root" >/dev/null 2>&1
|
||||
msg_ok "Customized Container"
|
||||
fi
|
||||
|
||||
echo "bash -c \"\$(curl -fsSL https://github.com/community-scripts/ProxmoxVE/raw/main/ct/${app}.sh)\"" >/usr/bin/update
|
||||
chmod +x /usr/bin/update
|
||||
}
|
||||
|
||||
105
misc/build.func
105
misc/build.func
@ -29,15 +29,13 @@ color() {
|
||||
|
||||
# Formatting
|
||||
CL=$(echo "\033[m")
|
||||
UL=$(echo "\033[4m")
|
||||
BOLD=$(echo "\033[1m")
|
||||
BFR="\\r\\033[K"
|
||||
HOLD=" "
|
||||
TAB=" "
|
||||
|
||||
# Icons
|
||||
CM="${TAB}✔️${TAB}${CL}"
|
||||
CROSS="${TAB}✖️${TAB}${CL}"
|
||||
CM="${TAB}✔️${TAB}"
|
||||
CROSS="${TAB}✖️${TAB}"
|
||||
INFO="${TAB}💡${TAB}${CL}"
|
||||
OS="${TAB}🖥️${TAB}${CL}"
|
||||
OSVERSION="${TAB}🌟${TAB}${CL}"
|
||||
@ -81,58 +79,75 @@ error_handler() {
|
||||
}
|
||||
|
||||
# This function displays an informational message with logging support.
|
||||
declare -A MSG_INFO_SHOWN
|
||||
SPINNER_ACTIVE=0
|
||||
SPINNER_PID=""
|
||||
SPINNER_MSG=""
|
||||
|
||||
trap 'stop_spinner' EXIT INT TERM HUP
|
||||
|
||||
start_spinner() {
|
||||
local msg="$1"
|
||||
local frames=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
|
||||
local frames=(⠋ ⠙ ⠹ ⠸ ⠼ ⠴ ⠦ ⠧ ⠇ ⠏)
|
||||
local spin_i=0
|
||||
local interval=0.1
|
||||
local term_width=$(tput cols)
|
||||
|
||||
SPINNER_MSG="$msg"
|
||||
printf "\r\e[2K" >&2
|
||||
|
||||
{
|
||||
while [ "${SPINNER_ACTIVE:-1}" -eq 1 ]; do
|
||||
printf "\r\e[2K${frames[spin_i]} ${YW}%b${CL}" "$msg" >&2
|
||||
while [[ "$SPINNER_ACTIVE" -eq 1 ]]; do
|
||||
printf "\r\e[2K%s %b" "${frames[spin_i]}" "${YW}${SPINNER_MSG}${CL}" >&2
|
||||
spin_i=$(((spin_i + 1) % ${#frames[@]}))
|
||||
sleep "$interval"
|
||||
done
|
||||
} &
|
||||
|
||||
SPINNER_PID=$!
|
||||
disown "$SPINNER_PID"
|
||||
}
|
||||
|
||||
stop_spinner() {
|
||||
if [[ ${SPINNER_PID+v} && -n "$SPINNER_PID" ]] && kill -0 "$SPINNER_PID" 2>/dev/null; then
|
||||
kill "$SPINNER_PID" 2>/dev/null
|
||||
sleep 0.1
|
||||
kill -0 "$SPINNER_PID" 2>/dev/null && kill -9 "$SPINNER_PID" 2>/dev/null
|
||||
wait "$SPINNER_PID" 2>/dev/null || true
|
||||
fi
|
||||
SPINNER_ACTIVE=0
|
||||
unset SPINNER_PID
|
||||
}
|
||||
|
||||
spinner_guard() {
|
||||
if [[ "$SPINNER_ACTIVE" -eq 1 ]] && [[ -n "$SPINNER_PID" ]]; then
|
||||
kill "$SPINNER_PID" 2>/dev/null
|
||||
wait "$SPINNER_PID" 2>/dev/null || true
|
||||
SPINNER_ACTIVE=0
|
||||
unset SPINNER_PID
|
||||
fi
|
||||
}
|
||||
|
||||
msg_info() {
|
||||
local msg="$1"
|
||||
if [ "${SPINNER_ACTIVE:-0}" -eq 1 ]; then
|
||||
return
|
||||
fi
|
||||
[[ -n "${MSG_INFO_SHOWN["$msg"]+x}" ]] && return
|
||||
MSG_INFO_SHOWN["$msg"]=1
|
||||
|
||||
spinner_guard
|
||||
SPINNER_ACTIVE=1
|
||||
start_spinner "$msg"
|
||||
}
|
||||
|
||||
msg_ok() {
|
||||
if [ -n "${SPINNER_PID:-}" ] && ps -p "$SPINNER_PID" >/dev/null 2>&1; then
|
||||
kill "$SPINNER_PID" >/dev/null 2>&1
|
||||
wait "$SPINNER_PID" 2>/dev/null || true
|
||||
fi
|
||||
|
||||
local msg="$1"
|
||||
printf "\r\e[2K${CM}${GN}%b${CL}\n" "$msg" >&2
|
||||
unset SPINNER_PID
|
||||
SPINNER_ACTIVE=0
|
||||
|
||||
log_message "OK" "$msg"
|
||||
stop_spinner
|
||||
printf "\r\e[2K%s %b\n" "${CM}" "${GN}${msg}${CL}" >&2
|
||||
unset MSG_INFO_SHOWN["$msg"]
|
||||
}
|
||||
|
||||
msg_error() {
|
||||
if [ -n "${SPINNER_PID:-}" ] && ps -p "$SPINNER_PID" >/dev/null 2>&1; then
|
||||
kill "$SPINNER_PID" >/dev/null 2>&1
|
||||
wait "$SPINNER_PID" 2>/dev/null || true
|
||||
fi
|
||||
|
||||
stop_spinner
|
||||
local msg="$1"
|
||||
printf "\r\e[2K${CROSS}${RD}%b${CL}\n" "$msg" >&2
|
||||
unset SPINNER_PID
|
||||
SPINNER_ACTIVE=0
|
||||
printf "\r\e[2K%s %b\n" "${CROSS}" "${RD}${msg}${CL}" >&2
|
||||
log_message "ERROR" "$msg"
|
||||
}
|
||||
|
||||
@ -1135,7 +1150,7 @@ EOF
|
||||
fi
|
||||
|
||||
if [ "$CT_TYPE" == "0" ]; then
|
||||
if [[ "$APP" == "Channels" || "$APP" == "Emby" || "$APP" == "ErsatzTV" || "$APP" == "Frigate" || "$APP" == "Jellyfin" || "$APP" == "Plex" || "$APP" == "Scrypted" || "$APP" == "Tdarr" || "$APP" == "Unmanic" || "$APP" == "Ollama" ]]; then
|
||||
if [[ "$APP" == "Channels" || "$APP" == "Emby" || "$APP" == "ErsatzTV" || "$APP" == "Frigate" || "$APP" == "Jellyfin" || "$APP" == "Plex" || "$APP" == "Scrypted" || "$APP" == "Tdarr" || "$APP" == "Unmanic" || "$APP" == "Ollama" || "$APP" == "FileFlows" ]]; then
|
||||
cat <<EOF >>$LXC_CONFIG
|
||||
# VAAPI hardware transcoding
|
||||
lxc.cgroup2.devices.allow: c 226:0 rwm
|
||||
@ -1147,7 +1162,7 @@ lxc.mount.entry: /dev/dri/renderD128 dev/dri/renderD128 none bind,optional,creat
|
||||
EOF
|
||||
fi
|
||||
else
|
||||
if [[ "$APP" == "Channels" || "$APP" == "Emby" || "$APP" == "ErsatzTV" || "$APP" == "Frigate" || "$APP" == "Jellyfin" || "$APP" == "Plex" || "$APP" == "Scrypted" || "$APP" == "Tdarr" || "$APP" == "Unmanic" || "$APP" == "Ollama" ]]; then
|
||||
if [[ "$APP" == "Channels" || "$APP" == "Emby" || "$APP" == "ErsatzTV" || "$APP" == "Frigate" || "$APP" == "Jellyfin" || "$APP" == "Plex" || "$APP" == "Scrypted" || "$APP" == "Tdarr" || "$APP" == "Unmanic" || "$APP" == "Ollama" || "$APP" == "FileFlows" ]]; then
|
||||
if [[ -e "/dev/dri/renderD128" ]]; then
|
||||
if [[ -e "/dev/dri/card0" ]]; then
|
||||
cat <<EOF >>$LXC_CONFIG
|
||||
@ -1250,21 +1265,21 @@ exit_script() {
|
||||
#200 exit codes indicate error in create_lxc.sh
|
||||
#100 exit codes indicate error in install.func
|
||||
|
||||
if [ $exit_code -ne 0 ]; then
|
||||
if [ $exit_code -ne 0 ]; then
|
||||
case $exit_code in
|
||||
100) post_update_to_api "failed" "100: Unexpected error in create_lxc.sh" ;;
|
||||
101) post_update_to_api "failed" "101: No network connection detected in create_lxc.sh" ;;
|
||||
200) post_update_to_api "failed" "200: LXC creation failed in create_lxc.sh" ;;
|
||||
201) post_update_to_api "failed" "201: Invalid Storage class in create_lxc.sh" ;;
|
||||
202) post_update_to_api "failed" "202: User aborted menu in create_lxc.sh" ;;
|
||||
203) post_update_to_api "failed" "203: CTID not set in create_lxc.sh" ;;
|
||||
204) post_update_to_api "failed" "204: PCT_OSTYPE not set in create_lxc.sh" ;;
|
||||
205) post_update_to_api "failed" "205: CTID cannot be less than 100 in create_lxc.sh" ;;
|
||||
206) post_update_to_api "failed" "206: CTID already in use in create_lxc.sh" ;;
|
||||
207) post_update_to_api "failed" "207: Template not found in create_lxc.sh" ;;
|
||||
208) post_update_to_api "failed" "208: Error downloading template in create_lxc.sh" ;;
|
||||
209) post_update_to_api "failed" "209: Container creation failed, but template is intact in create_lxc.sh" ;;
|
||||
*) post_update_to_api "failed" "Unknown error, exit code: $exit_code in create_lxc.sh" ;;
|
||||
100) post_update_to_api "failed" "100: Unexpected error in create_lxc.sh" ;;
|
||||
101) post_update_to_api "failed" "101: No network connection detected in create_lxc.sh" ;;
|
||||
200) post_update_to_api "failed" "200: LXC creation failed in create_lxc.sh" ;;
|
||||
201) post_update_to_api "failed" "201: Invalid Storage class in create_lxc.sh" ;;
|
||||
202) post_update_to_api "failed" "202: User aborted menu in create_lxc.sh" ;;
|
||||
203) post_update_to_api "failed" "203: CTID not set in create_lxc.sh" ;;
|
||||
204) post_update_to_api "failed" "204: PCT_OSTYPE not set in create_lxc.sh" ;;
|
||||
205) post_update_to_api "failed" "205: CTID cannot be less than 100 in create_lxc.sh" ;;
|
||||
206) post_update_to_api "failed" "206: CTID already in use in create_lxc.sh" ;;
|
||||
207) post_update_to_api "failed" "207: Template not found in create_lxc.sh" ;;
|
||||
208) post_update_to_api "failed" "208: Error downloading template in create_lxc.sh" ;;
|
||||
209) post_update_to_api "failed" "209: Container creation failed, but template is intact in create_lxc.sh" ;;
|
||||
*) post_update_to_api "failed" "Unknown error, exit code: $exit_code in create_lxc.sh" ;;
|
||||
esac
|
||||
fi
|
||||
}
|
||||
|
||||
@ -59,6 +59,7 @@ install() {
|
||||
header_info
|
||||
|
||||
msg_info "Setting up repository"
|
||||
$STD apt-get install -y debian-keyring
|
||||
wget -q https://repo.netdata.cloud/repos/repoconfig/debian/bookworm/netdata-repo_5-1+debian12_all.deb
|
||||
$STD dpkg -i netdata-repo_5-1+debian12_all.deb
|
||||
rm -rf netdata-repo_5-1+debian12_all.deb
|
||||
|
||||
Reference in New Issue
Block a user