Compare commits

...

51 Commits

Author SHA1 Message Date
9de702c301 Update CHANGELOG.md (#4691)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-24 01:14:44 +01:00
a47d6efe41 Update versions.json (#4690)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-24 02:14:11 +02:00
36253b0045 Update CHANGELOG.md (#4687)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
Auto Update .app-files / update-app-files (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 20:23:57 +01:00
34e7c33e05 Remove rtsptoweb (deprecated) (#4686)
* Delete ct/rtsptoweb.sh

* Delete install/rtsptoweb-install.sh

* Delete ct/headers/rtsptoweb
2025-05-23 21:23:21 +02:00
e0a47f0aa3 Update zammad.json (#4682) 2025-05-23 15:06:28 +02:00
bce10d447e Update versions.json (#4683)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 14:07:25 +02:00
0d9804fcfe Update CHANGELOG.md (#4681)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 12:07:39 +01:00
3b7c63183b Update Icons to selfhst/icons (#4680)
FreePBX & Configarr
2025-05-23 13:07:10 +02:00
2d323d94ec Update CHANGELOG.md (#4675)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 06:43:43 +01:00
ab0ed91c4f TYPO: Fix nexcloud to nextcloud (#4670) 2025-05-23 07:43:15 +02:00
31e99bc49b Update CHANGELOG.md (#4672)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 01:15:17 +01:00
5b27942981 Update versions.json (#4671)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 02:14:43 +02:00
161bafa818 Paperless-AI: Upscale the resources (#4668)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Auto Update .app-files / update-app-files (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
* Upscale the resources

* Update

* Update
2025-05-22 20:17:03 +02:00
a5241ef1c5 Update CHANGELOG.md (#4666)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 18:35:37 +01:00
bf3f7dc3b1 Update commafeed.json (#4665) 2025-05-22 19:34:59 +02:00
7264934136 Update .app files (#4658)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-22 15:37:52 +02:00
a0745de096 Update CHANGELOG.md (#4661)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:30:45 +01:00
4f4ec7d477 Update CHANGELOG.md (#4660)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:29:10 +01:00
ba3de8d080 Update date in json (#4659)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:28:33 +01:00
0f8932b125 Update CHANGELOG.md (#4657)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:27:23 +01:00
348354079b 'Add new script' (#4648)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-22 15:27:18 +02:00
48db08192a cloudflare-ddns (#4647)
* 'Add new script'

* Update cloudflare-ddns.json

---------

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-05-22 15:26:39 +02:00
b6f410e895 Update CHANGELOG.md (#4656)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:34:12 +01:00
1221fec5ab Update CHANGELOG.md (#4655)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:33:57 +01:00
faa805547c Update CHANGELOG.md (#4654)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:33:38 +01:00
fe0ac37ff1 slskd: fix #4649 (#4651) 2025-05-22 14:33:20 +02:00
eed391917c Update CHANGELOG.md (#4653)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:33:05 +01:00
76da24386d Update CHANGELOG.md (#4652)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:32:47 +01:00
8e7caf4cd9 enable FUSE and TUN Handling (#4644) 2025-05-22 14:32:27 +02:00
7d3040ab76 [gh]: Feature: Header-Generation for vm | tools | addon (#4643) 2025-05-22 14:32:21 +02:00
6a3bf770fb Update versions.json (#4650)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:07:25 +02:00
6805b01df2 Update alpine-node-red-install.sh
Some checks failed
Auto Update .app-files / update-app-files (push) Has been cancelled
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
2025-05-22 11:17:26 +02:00
7520917dcc Update CHANGELOG.md (#4641)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 08:08:56 +01:00
ec186b0288 Paperless-AI: Add RAG chat (#4635)
* Add RAG

* Oops
2025-05-22 09:08:19 +02:00
c7afd9c427 quickfix json babybuddy 2025-05-22 08:30:50 +02:00
bd3b022b08 Update CHANGELOG.md (#4638)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 01:15:11 +01:00
49fcd68f42 Update versions.json (#4637)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 02:14:33 +02:00
1382742c26 Update CHANGELOG.md (#4634)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 20:12:29 +01:00
9e2441ff53 Tandoor Recipes: Capture version information when installing (#4633)
* Capture version information when installing Tandoor

When installing Tandoor, run the version.py script to record version information.

* Set up Tandoor version earlier

Move Tandoor's version script execution into main install block.
2025-05-21 21:12:03 +02:00
490dbc725e Update CHANGELOG.md (#4629)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 14:03:16 +01:00
d9201e2cac Alpine-Node-RED: Update Service File (#4628)
* Update alpine-node-red-install.sh

* Update alpine-node-red-install.sh
2025-05-21 15:02:38 +02:00
52c09646b2 Update versions.json (#4626)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 14:07:43 +02:00
b5d70d5201 Update CHANGELOG.md (#4625)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Auto Update .app-files / update-app-files (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 12:01:04 +01:00
7089b9ef7b Update CHANGELOG.md (#4624)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 12:00:45 +01:00
034d7df9cd Update date in json (#4623)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-21 11:59:40 +01:00
f41ac673a3 Update CHANGELOG.md (#4622)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 11:59:26 +01:00
a7382f9273 Update date in json (#4621)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-21 11:59:20 +01:00
cb1465544d 'Add new script' (#4620)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-21 12:59:12 +02:00
796c31eae4 babybuddy (#4619)
* 'Add new script'

* Update babybuddy.sh

* add license

---------

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-05-21 12:58:47 +02:00
047c2c44d6 Update CHANGELOG.md (#4618)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 07:02:38 +01:00
1baa841963 Fix update for older installs (#4612) 2025-05-21 08:02:03 +02:00
40 changed files with 1141 additions and 341 deletions

View File

@ -1,34 +1,50 @@
#!/usr/bin/env bash
# Base directory for headers
headers_dir="./ct/headers"
# Function for generating Figlet headers
generate_headers() {
local base_dir=$1
local target_subdir=$2
local search_pattern=$3
# Ensure the headers directory exists and clear it
mkdir -p "$headers_dir"
rm -f "$headers_dir"/*
local headers_dir="${base_dir}/headers"
mkdir -p "$headers_dir"
rm -f "$headers_dir"/*
# Find all .sh files in ./ct directory, sorted alphabetically
find ./ct -type f -name "*.sh" | sort | while read -r script; do
# Extract the APP name from the APP line
app_name=$(grep -oP '^APP="\K[^"]+' "$script" 2>/dev/null)
if [[ -n "$app_name" ]]; then
# Define the output file name in the headers directory
output_file="${headers_dir}/$(basename "${script%.*}")"
# Generate figlet output
figlet_output=$(figlet -w 500 -f slant "$app_name")
# Check if figlet output is not empty
if [[ -n "$figlet_output" ]]; then
echo "$figlet_output" > "$output_file"
echo "Generated: $output_file"
else
echo "Figlet failed for $app_name in $script"
fi
# Recursive or non-recursive search
if [[ "$search_pattern" == "**" ]]; then
shopt -s globstar nullglob
file_list=("${base_dir}"/**/*.sh)
shopt -u globstar
else
echo "No APP name found in $script, skipping."
file_list=("${base_dir}"/*.sh)
fi
done
echo "Completed processing .sh files."
for script in "${file_list[@]}"; do
[[ -f "$script" ]] || continue
app_name=$(grep -oP '^APP="\K[^"]+' "$script" 2>/dev/null)
if [[ -n "$app_name" ]]; then
output_file="${headers_dir}/$(basename "${script%.*}")"
figlet_output=$(figlet -w 500 -f slant "$app_name")
if [[ -n "$figlet_output" ]]; then
echo "$figlet_output" >"$output_file"
echo "Generated: $output_file"
else
echo "Figlet failed for $app_name in $script"
fi
else
echo "No APP name found in $script, skipping."
fi
done
}
# ct
generate_headers "./ct" "headers" "*"
# tools (addon, pve, ...)
generate_headers "./tools" "headers" "**"
# vm
generate_headers "./vm" "headers" "*"
echo "Completed processing all sections."

View File

@ -14,8 +14,73 @@ 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-05-24
## 2025-05-23
### 🚀 Updated Scripts
- #### 🔧 Refactor
- TYPO: Fix nexcloud to nextcloud (VM) [@Stoufiler](https://github.com/Stoufiler) ([#4670](https://github.com/community-scripts/ProxmoxVE/pull/4670))
### 🌐 Website
- #### 📝 Script Information
- Update Icons to selfhst/icons (FreePBX & Configarr) [@MickLesk](https://github.com/MickLesk) ([#4680](https://github.com/community-scripts/ProxmoxVE/pull/4680))
### 💥 Breaking Changes
- Remove rtsptoweb (deprecated) [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#4686](https://github.com/community-scripts/ProxmoxVE/pull/4686))
## 2025-05-22
### 🆕 New Scripts
- FreePBX ([#4648](https://github.com/community-scripts/ProxmoxVE/pull/4648))
- cloudflare-ddns ([#4647](https://github.com/community-scripts/ProxmoxVE/pull/4647))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- slskd: fix #4649 [@vhsdream](https://github.com/vhsdream) ([#4651](https://github.com/community-scripts/ProxmoxVE/pull/4651))
- #### ✨ New Features
- Paperless-AI: Add RAG chat [@tremor021](https://github.com/tremor021) ([#4635](https://github.com/community-scripts/ProxmoxVE/pull/4635))
### 🧰 Maintenance
- #### 📂 Github
- [gh]: Feature: Header-Generation for vm | tools | addon [@MickLesk](https://github.com/MickLesk) ([#4643](https://github.com/community-scripts/ProxmoxVE/pull/4643))
### 🌐 Website
- #### 📝 Script Information
- Commafeed: move to Documents category [@diemade](https://github.com/diemade) ([#4665](https://github.com/community-scripts/ProxmoxVE/pull/4665))
## 2025-05-21
### 🆕 New Scripts
- configarr ([#4620](https://github.com/community-scripts/ProxmoxVE/pull/4620))
- babybuddy ([#4619](https://github.com/community-scripts/ProxmoxVE/pull/4619))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Alpine-Node-RED: Update Service File [@MickLesk](https://github.com/MickLesk) ([#4628](https://github.com/community-scripts/ProxmoxVE/pull/4628))
- RustDesk Server: Fix update for older installs [@tremor021](https://github.com/tremor021) ([#4612](https://github.com/community-scripts/ProxmoxVE/pull/4612))
- #### ✨ New Features
- Tandoor Recipes: Capture version information when installing [@jbolla](https://github.com/jbolla) ([#4633](https://github.com/community-scripts/ProxmoxVE/pull/4633))
## 2025-05-20
### 🚀 Updated Scripts

86
ct/babybuddy.sh Normal file
View File

@ -0,0 +1,86 @@
#!/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://github.com/babybuddy/babybuddy
APP="Baby Buddy"
var_tags="${var_tags:-baby}"
var_disk="${var_disk:-5}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/babybuddy ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/babybuddy/babybuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/babybuddy_version.txt)" ]]; then
setup_uv
msg_info "Stopping Services"
systemctl stop nginx
systemctl stop uwsgi
msg_ok "Services Stopped"
msg_info "Cleaning old files"
cp babybuddy/settings/production.py /tmp/production.py.bak
find . -mindepth 1 -maxdepth 1 ! -name '.venv' -exec rm -rf {} +
msg_ok "Cleaned old files"
msg_info "Updating ${APP} to v${RELEASE}"
temp_file=$(mktemp)
curl -fsSL "https://github.com/babybuddy/babybuddy/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
cd /opt/babybuddy
tar zxf "$temp_file" --strip-components=1 -C /opt/babybuddy
mv /tmp/production.py.bak babybuddy/settings/production.py
cd /opt/babybuddy
source .venv/bin/activate
$STD uv pip install -r requirements.txt
$STD python manage.py migrate
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Fixing permissions"
chown -R www-data:www-data /opt/data
chmod 640 /opt/data/db.sqlite3
chmod 750 /opt/data
msg_ok "Permissions fixed"
msg_info "Starting Services"
systemctl start uwsgi
systemctl start nginx
msg_ok "Services Started"
msg_info "Cleaning up"
rm -f "$temp_file"
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
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}${CL}"

37
ct/cloudflare-ddns.sh Normal file
View File

@ -0,0 +1,37 @@
#!/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: edoardop13
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/favonia/cloudflare-ddns
APP="Cloudflare-DDNS"
var_tags="${var_tags:-network}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/cloudflare-ddns.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "There is no update function for ${APP}."
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"

66
ct/configarr.sh Normal file
View File

@ -0,0 +1,66 @@
#!/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: finkerle
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/raydak-labs/configarr
APP="Configarr"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/configarr ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/raydak-labs/configarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat /opt/configarr_version.txt)" ]] || [[ ! -f /opt/configarr_version.txt ]]; then
msg_info "Stopping $APP"
systemctl stop configarr-task.timer
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
mkdir -p /opt/backup/
mv /opt/configarr/{config.yml,secrets.yml,.env} "/opt/backup/"
rm -rf /opt/configarr
fetch_and_deploy_gh_release "raydak-labs/configarr"
mv /opt/backup/* /opt/configarr/
cd /opt/configarr
$STD pnpm install
$STD pnpm run build
msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP"
systemctl start configarr-task.timer
msg_ok "Started configarr"
rm -rf /opt/backup
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
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 (no web-ui):${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8989${CL}"

View File

@ -1,15 +1,15 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 tteck
# Author: tteck (tteckster)
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Arian Nasr (arian-nasr)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/deepch/RTSPtoWeb
# Source: https://www.freepbx.org/
APP="RTSPtoWeb"
var_tags="${var_tags:-media}"
APP="FreePBX"
var_tags="pbx;voip;telephony"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
@ -23,14 +23,12 @@ function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /var ]]; then
if [[ ! -f /lib/systemd/system/freepbx.service ]]; 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"
msg_error "Currently we don't provide an update function for this ${APP}."
exit
}
@ -41,4 +39,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}:8083${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"

6
ct/headers/babybuddy Normal file
View File

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

View File

@ -0,0 +1,6 @@
________ ________ ____ ____ _ _______
/ ____/ /___ __ ______/ / __/ /___ _________ / __ \/ __ \/ | / / ___/
/ / / / __ \/ / / / __ / /_/ / __ `/ ___/ _ \______/ / / / / / / |/ /\__ \
/ /___/ / /_/ / /_/ / /_/ / __/ / /_/ / / / __/_____/ /_/ / /_/ / /| /___/ /
\____/_/\____/\__,_/\__,_/_/ /_/\__,_/_/ \___/ /_____/_____/_/ |_//____/

6
ct/headers/configarr Normal file
View File

@ -0,0 +1,6 @@
______ _____
/ ____/___ ____ / __(_)___ _____ ___________
/ / / __ \/ __ \/ /_/ / __ `/ __ `/ ___/ ___/
/ /___/ /_/ / / / / __/ / /_/ / /_/ / / / /
\____/\____/_/ /_/_/ /_/\__, /\__,_/_/ /_/
/____/

6
ct/headers/freepbx Normal file
View File

@ -0,0 +1,6 @@
______ ____ ____ _ __
/ ____/_______ ___ / __ \/ __ ) |/ /
/ /_ / ___/ _ \/ _ \/ /_/ / __ | /
/ __/ / / / __/ __/ ____/ /_/ / |
/_/ /_/ \___/\___/_/ /_____/_/|_|

View File

@ -1,6 +0,0 @@
____ ___________ ____ __ _ __ __
/ __ \/_ __/ ___// __ \/ /_____| | / /__ / /_
/ /_/ / / / \__ \/ /_/ / __/ __ \ | /| / / _ \/ __ \
/ _, _/ / / ___/ / ____/ /_/ /_/ / |/ |/ / __/ /_/ /
/_/ |_| /_/ /____/_/ \__/\____/|__/|__/\___/_.___/

View File

@ -9,7 +9,7 @@ APP="Paperless-AI"
var_tags="${var_tags:-ai;document}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}"
var_disk="${var_disk:-12}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
@ -27,6 +27,9 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! dpkg -s python3-pip >/dev/null 2>&1; then
$STD apt-get install -y python3-pip
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/clusterzx/paperless-ai/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
msg_info "Stopping $APP"
@ -42,6 +45,25 @@ function update_script() {
mkdir -p /opt/paperless-ai/data
cp -a /opt/paperless-ai_bak/data/. /opt/paperless-ai/data/
cd /opt/paperless-ai
if [[ ! -f /etc/systemd/system/paperless-rag.service ]]; then
cat <<EOF >/etc/systemd/system/paperless-rag.service
[Unit]
Description=PaperlessAI-RAG Service
After=network.target
[Service]
WorkingDirectory=/opt/paperless-ai
ExecStart=/usr/bin/python3 main.py --host 0.0.0.0 --port 8000 --initialize
Restart=always
[Install]
WantedBy=multi-user.target
EOF
echo "RAG_SERVICE_URL=http://localhost:8000" >>/opt/paperless-ai/data/.env
echo "RAG_SERVICE_ENABLED=true" >>/opt/paperless-ai/data/.env
fi
$STD pip install --no-cache-dir -r requirements.txt
mkdir -p data/chromadb
$STD npm install
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}"

View File

@ -38,7 +38,9 @@ function update_script() {
msg_info "Stopping $APP"
systemctl stop rustdesk-hbbr
systemctl stop rustdesk-hbbs
systemctl stop rustdesk-api
if [[ -f /lib/systemd/system/rustdesk-api.service ]]; then
systemctl stop rustdesk-api
fi
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"

View File

@ -0,0 +1,40 @@
{
"name": "Baby Buddy",
"slug": "babybuddy",
"categories": [
23
],
"date_created": "2025-05-21",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 80,
"documentation": "https://docs.baby-buddy.net/",
"website": "https://github.com/babybuddy/babybuddy",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/baby-buddy.svg",
"config_path": "/opt/babybuddy/babybuddy/settings/production.py",
"description": "Baby Buddy is an open-source web application designed to assist caregivers in tracking various aspects of a baby's daily routine, including sleep, feedings, diaper changes, tummy time, and more. By recording this data, caregivers can better understand and anticipate their baby's needs, reducing guesswork in daily care. The application offers a user-friendly dashboard for data entry and visualization, supports multiple users, and provides features like timers and reminders. Additionally, Baby Buddy can be integrated with platforms like Home Assistant and Grafana for enhanced functionality.",
"install_methods": [
{
"type": "default",
"script": "ct/babybuddy.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 5,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": "admin",
"password": "admin"
},
"notes": [
{
"text": "for private SSL setup visit: `https://github.com/babybuddy/babybuddy/blob/master/docs/setup/ssl.md`",
"type": "info"
}
]
}

View File

@ -0,0 +1,44 @@
{
"name": "Cloudflare-DDNS",
"slug": "cloudflare-ddns",
"categories": [
4
],
"date_created": "2025-05-22",
"type": "ct",
"updateable": false,
"privileged": false,
"interface_port": null,
"documentation": "https://github.com/favonia/cloudflare-ddns/blob/main/README.markdown",
"config_path": "/etc/systemd/system/cloudflare-ddns.service",
"website": "https://github.com/favonia/cloudflare-ddns",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/cloudflare.webp",
"description": "A feature-rich and robust Cloudflare DDNS updater with a small footprint. The program will detect your machines public IP addresses and update DNS records using the Cloudflare API",
"install_methods": [
{
"type": "default",
"script": "ct/cloudflare-ddns.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 2,
"os": "Debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "To setup the updater you must have the Cloudflare Token and the domains, please read the Github documentation at `https://github.com/favonia/cloudflare-ddns?tab=readme-ov-file#-step-1-updating-the-compose-file` (only the expandable section)",
"type": "warning"
},
{
"text": "To update the configuration edit `/etc/systemd/system/cloudflare-ddns.service`. After edit please restard with `systemctl restart cloudflare-ddns`",
"type": "info"
}
]
}

View File

@ -2,7 +2,7 @@
"name": "CommaFeed",
"slug": "commafeed",
"categories": [
19
12
],
"date_created": "2024-05-02",
"type": "ct",

View File

@ -0,0 +1,40 @@
{
"name": "Configarr",
"slug": "configarr",
"categories": [
14
],
"date_created": "2025-05-21",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8989,
"documentation": "https://configarr.raydak.de/docs/intro",
"config_path": "/opt/configarr/config.yml",
"website": "https://configarr.raydak.de/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/configarr.webp",
"description": "Configarr is an open-source tool designed to simplify configuration and synchronization for Sonarr and Radarr (and other experimental). It integrates with TRaSH Guides to automate updates of custom formats, quality profiles, and other settings, while also supporting user-defined configurations.",
"install_methods": [
{
"type": "default",
"script": "ct/configarr.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 4,
"os": "Debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "change secrets file /opt/configarr/secrets.yml",
"type": "info"
}
]
}

View File

@ -0,0 +1,40 @@
{
"name": "FreePBX",
"slug": "freepbx",
"categories": [
0
],
"date_created": "2025-05-22",
"type": "ct",
"updateable": false,
"privileged": false,
"interface_port": 80,
"documentation": "https://sangomakb.atlassian.net/wiki/spaces/FP/overview?homepageId=8454359",
"website": "https://www.freepbx.org/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/freepbx.webp",
"config_path": "",
"description": "FreePBX is a web-based open-source graphical user interface that manages Asterisk, a voice over IP and telephony server.",
"install_methods": [
{
"type": "default",
"script": "ct/freepbx.sh",
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 10,
"os": "debian",
"version": "12"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "This script uses the official FreePBX install script. Check it here: https://github.com/FreePBX/sng_freepbx_debian_install",
"type": "info"
}
]
}

View File

@ -21,7 +21,7 @@
"resources": {
"cpu": 2,
"ram": 2048,
"hdd": 5,
"hdd": 12,
"os": "debian",
"version": "12"
}

View File

@ -1,23 +1,198 @@
[
{
"name": "esphome/esphome",
"version": "2025.4.2",
"date": "2025-05-11T22:18:43Z"
"name": "homarr-labs/homarr",
"version": "v1.21.0",
"date": "2025-05-23T19:17:15Z"
},
{
"name": "mongodb/mongo",
"version": "r6.0.24-rc0",
"date": "2025-05-20T21:33:16Z"
"name": "immich-app/immich",
"version": "v1.133.1",
"date": "2025-05-23T18:14:44Z"
},
{
"name": "clusterzx/paperless-ai",
"version": "v3.0.3",
"date": "2025-05-20T19:37:45Z"
"name": "Threadfin/Threadfin",
"version": "1.2.33",
"date": "2025-05-23T15:59:05Z"
},
{
"name": "home-assistant/core",
"version": "2025.5.3",
"date": "2025-05-23T15:10:33Z"
},
{
"name": "docker/compose",
"version": "v2.36.2",
"date": "2025-05-23T14:21:20Z"
},
{
"name": "zitadel/zitadel",
"version": "v3.2.0",
"date": "2025-05-23T13:58:07Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.1.4",
"date": "2025-05-23T12:29:19Z"
},
{
"name": "wazuh/wazuh",
"version": "v4.10.2",
"date": "2025-05-23T11:56:41Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.0",
"date": "2025-05-12T09:12:04Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.2",
"date": "2025-05-11T16:40:55Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.1941",
"date": "2025-05-23T05:59:10Z"
},
{
"name": "ollama/ollama",
"version": "v0.7.1-rc2",
"date": "2025-05-23T01:53:31Z"
},
{
"name": "rogerfar/rdt-client",
"version": "v2.0.113",
"date": "2025-05-23T01:47:35Z"
},
{
"name": "grafana/grafana",
"version": "v11.2.10",
"date": "2025-05-22T23:50:45Z"
},
{
"name": "keycloak/keycloak",
"version": "26.0.12",
"date": "2025-05-15T14:06:52Z"
},
{
"name": "crowdsecurity/crowdsec",
"version": "v1.6.8",
"date": "2025-03-25T13:33:10Z"
},
{
"name": "traccar/traccar",
"version": "v6.7.0",
"date": "2025-05-22T14:41:14Z"
},
{
"name": "MariaDB/server",
"version": "mariadb-11.4.7",
"date": "2025-05-22T14:22:22Z"
},
{
"name": "neo4j/neo4j",
"version": "4.4.44",
"date": "2025-05-22T13:58:43Z"
},
{
"name": "apache/cassandra",
"version": "4.0.18-tentative",
"date": "2025-05-22T11:46:18Z"
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-05-22T06:34:13Z"
},
{
"name": "0xERR0R/blocky",
"version": "v0.26",
"date": "2025-05-20T19:34:05Z"
"version": "v0.26.2",
"date": "2025-05-22T05:24:42Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.1.9",
"date": "2025-03-01T02:24:33Z"
},
{
"name": "apache/tika",
"version": "3.2.0-rc2",
"date": "2025-05-21T20:09:07Z"
},
{
"name": "tailscale/tailscale",
"version": "v1.84.0",
"date": "2025-05-21T19:39:53Z"
},
{
"name": "clusterzx/paperless-ai",
"version": "v3.0.4",
"date": "2025-05-21T19:03:53Z"
},
{
"name": "mongodb/mongo",
"version": "r8.0.10-rc0",
"date": "2025-05-21T18:22:25Z"
},
{
"name": "ipfs/kubo",
"version": "v0.35.0",
"date": "2025-05-21T18:00:32Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.20.10",
"date": "2025-05-21T17:22:32Z"
},
{
"name": "cross-seed/cross-seed",
"version": "v6.12.5",
"date": "2025-05-17T02:52:33Z"
},
{
"name": "cockpit-project/cockpit",
"version": "339",
"date": "2025-05-21T14:49:36Z"
},
{
"name": "mattermost/mattermost",
"version": "v9.11.16",
"date": "2025-05-21T13:57:13Z"
},
{
"name": "theonedev/onedev",
"version": "v11.9.9",
"date": "2025-05-21T13:13:31Z"
},
{
"name": "glpi-project/glpi",
"version": "10.0.18",
"date": "2025-02-12T11:07:02Z"
},
{
"name": "esphome/esphome",
"version": "2025.5.0",
"date": "2025-05-21T08:32:53Z"
},
{
"name": "syncthing/syncthing",
"version": "v1.29.6",
"date": "2025-05-06T07:57:02Z"
},
{
"name": "inventree/InvenTree",
"version": "0.17.12",
"date": "2025-05-21T05:44:55Z"
},
{
"name": "diced/zipline",
"version": "v4.1.0",
"date": "2025-05-21T04:12:44Z"
},
{
"name": "icereed/paperless-gpt",
"version": "v0.19.0",
"date": "2025-05-21T03:46:14Z"
},
{
"name": "matze/wastebin",
@ -39,11 +214,6 @@
"version": "v1.130.0",
"date": "2025-05-20T15:33:54Z"
},
{
"name": "syncthing/syncthing",
"version": "v1.29.6",
"date": "2025-05-06T07:57:02Z"
},
{
"name": "documenso/documenso",
"version": "v1.11.1",
@ -59,21 +229,11 @@
"version": "7.2.7",
"date": "2025-05-20T11:00:56Z"
},
{
"name": "mattermost/mattermost",
"version": "server/public/v0.1.13",
"date": "2025-05-16T03:44:25Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.0.3",
"date": "2025-05-20T06:51:42Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.1930",
"date": "2025-05-20T06:38:17Z"
},
{
"name": "crafty-controller/crafty-4",
"version": "v4.4.9",
@ -84,11 +244,6 @@
"version": "v5.36.4",
"date": "2025-05-19T22:28:11Z"
},
{
"name": "apache/cassandra",
"version": "cassandra-4.1.9",
"date": "2025-05-19T21:37:07Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.16.1",
@ -99,11 +254,6 @@
"version": "v0.8.3",
"date": "2025-05-19T20:45:10Z"
},
{
"name": "keycloak/keycloak",
"version": "26.0.12",
"date": "2025-05-15T14:06:52Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "v1.6.1",
@ -129,11 +279,6 @@
"version": "n8n@1.91.3",
"date": "2025-05-08T12:25:10Z"
},
{
"name": "docker/compose",
"version": "v2.36.1",
"date": "2025-05-19T12:26:41Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "6.3.0-beta.1",
@ -154,11 +299,6 @@
"version": "v2.1.0",
"date": "2025-05-18T18:20:43Z"
},
{
"name": "rogerfar/rdt-client",
"version": "v2.0.112",
"date": "2025-05-18T17:44:52Z"
},
{
"name": "YunoHost/yunohost",
"version": "debian/12.1.6.1",
@ -169,11 +309,6 @@
"version": "2.34.0",
"date": "2025-05-18T13:22:17Z"
},
{
"name": "runtipi/runtipi",
"version": "v4.1.1",
"date": "2025-05-16T17:37:30Z"
},
{
"name": "hansmi/prometheus-paperless-exporter",
"version": "v0.0.8",
@ -184,16 +319,6 @@
"version": "v1.35.1.5034",
"date": "2025-04-30T11:02:36Z"
},
{
"name": "theonedev/onedev",
"version": "v11.9.8",
"date": "2025-05-17T13:13:22Z"
},
{
"name": "inventree/InvenTree",
"version": "0.17.12",
"date": "2025-05-17T19:16:00Z"
},
{
"name": "Radarr/Radarr",
"version": "v5.23.3.9987",
@ -224,26 +349,11 @@
"version": "v0.304.0",
"date": "2025-05-17T07:29:09Z"
},
{
"name": "cross-seed/cross-seed",
"version": "v6.12.5",
"date": "2025-05-17T02:52:33Z"
},
{
"name": "advplyr/audiobookshelf",
"version": "v2.23.0",
"date": "2025-05-16T22:13:53Z"
},
{
"name": "home-assistant/core",
"version": "2025.5.2",
"date": "2025-05-16T21:09:45Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.20.0",
"date": "2025-05-16T19:18:10Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.4.1",
@ -264,21 +374,11 @@
"version": "e5.10.0-alpha.1",
"date": "2025-05-16T13:30:53Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w20-4.13.0",
"date": "2025-05-14T12:06:20Z"
},
{
"name": "gotson/komga",
"version": "1.21.3",
"date": "2025-05-16T04:31:05Z"
},
{
"name": "ipfs/kubo",
"version": "v0.34.1",
"date": "2025-03-25T18:11:12Z"
},
{
"name": "coder/code-server",
"version": "v4.100.2",
@ -309,21 +409,11 @@
"version": "v10.5.1",
"date": "2025-05-15T09:59:28Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.2",
"date": "2025-05-11T16:40:55Z"
},
{
"name": "FlowiseAI/Flowise",
"version": "flowise@3.0.0",
"date": "2025-05-15T01:49:47Z"
},
{
"name": "ollama/ollama",
"version": "v0.7.0",
"date": "2025-05-14T23:42:30Z"
},
{
"name": "Ombi-app/Ombi",
"version": "v4.47.1",
@ -344,11 +434,6 @@
"version": "0.42.1",
"date": "2020-06-07T07:27:04Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.0",
"date": "2025-05-12T09:12:04Z"
},
{
"name": "blakeblackshear/frigate",
"version": "v0.14.1",
@ -379,11 +464,6 @@
"version": "8.0.1",
"date": "2025-05-13T13:31:53Z"
},
{
"name": "zitadel/zitadel",
"version": "v2.65.9",
"date": "2025-05-13T05:14:39Z"
},
{
"name": "go-gitea/gitea",
"version": "v1.23.8",
@ -399,21 +479,11 @@
"version": "v2.1.0.118-2.1.0.118_canary_2025-05-12",
"date": "2025-05-12T18:50:44Z"
},
{
"name": "neo4j/neo4j",
"version": "4.4.43",
"date": "2025-05-12T15:33:17Z"
},
{
"name": "usememos/memos",
"version": "v0.24.3",
"date": "2025-05-12T15:23:21Z"
},
{
"name": "apache/tika",
"version": "3.2.0-rc1",
"date": "2025-05-12T13:06:47Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.49.17",
@ -459,11 +529,6 @@
"version": "v1.0.0-beta21",
"date": "2025-05-09T23:14:23Z"
},
{
"name": "crowdsecurity/crowdsec",
"version": "v1.6.8",
"date": "2025-03-25T13:33:10Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v0.53.0",
@ -499,11 +564,6 @@
"version": "v5.7.5",
"date": "2025-05-07T14:01:45Z"
},
{
"name": "glpi-project/glpi",
"version": "10.0.18",
"date": "2025-02-12T11:07:02Z"
},
{
"name": "ZoeyVid/NPMplus",
"version": "2025-05-07-r1",
@ -514,16 +574,6 @@
"version": "v0.14.7",
"date": "2025-05-07T11:32:23Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.1.3",
"date": "2025-05-07T11:09:21Z"
},
{
"name": "cockpit-project/cockpit",
"version": "338",
"date": "2025-05-07T10:43:29Z"
},
{
"name": "jupyter/notebook",
"version": "@jupyter-notebook/ui-components@7.5.0-alpha.0",
@ -534,11 +584,6 @@
"version": "v0.19.0",
"date": "2025-05-06T18:05:42Z"
},
{
"name": "MariaDB/server",
"version": "mariadb-11.4.6",
"date": "2025-05-06T15:30:49Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.12.2",
@ -569,26 +614,11 @@
"version": "REL_13_21",
"date": "2025-05-05T20:34:49Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.20.9",
"date": "2025-05-05T19:24:09Z"
},
{
"name": "grafana/grafana",
"version": "v12.0.0",
"date": "2025-05-05T18:28:19Z"
},
{
"name": "apache/couchdb",
"version": "3.5.0",
"date": "2025-05-05T16:28:24Z"
},
{
"name": "icereed/paperless-gpt",
"version": "v0.18.0",
"date": "2025-05-05T15:34:40Z"
},
{
"name": "traefik/traefik",
"version": "v3.4.0",
@ -684,11 +714,6 @@
"version": "v1.2.0",
"date": "2025-04-28T17:55:01Z"
},
{
"name": "immich-app/immich",
"version": "v1.132.3",
"date": "2025-04-28T14:11:06Z"
},
{
"name": "karakeep-app/karakeep",
"version": "v0.24.1",
@ -704,11 +729,6 @@
"version": "release-5.1.0",
"date": "2025-04-27T08:53:48Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.1.9",
"date": "2025-03-01T02:24:33Z"
},
{
"name": "openhab/openhab-core",
"version": "4.3.5",
@ -769,11 +789,6 @@
"version": "v2.10.0",
"date": "2025-04-18T20:46:28Z"
},
{
"name": "tailscale/tailscale",
"version": "v1.82.5",
"date": "2025-04-17T20:59:15Z"
},
{
"name": "TriliumNext/Notes",
"version": "v0.93.0",
@ -824,11 +839,6 @@
"version": "4.5.1",
"date": "2025-04-11T09:57:47Z"
},
{
"name": "Threadfin/Threadfin",
"version": "1.2.32",
"date": "2025-04-07T20:01:09Z"
},
{
"name": "thomiceli/opengist",
"version": "v1.10.0",
@ -864,11 +874,6 @@
"version": "v2.31.0",
"date": "2025-04-01T18:12:45Z"
},
{
"name": "diced/zipline",
"version": "v4.0.2",
"date": "2025-04-01T04:51:05Z"
},
{
"name": "Kometa-Team/Kometa",
"version": "v2.2.0",
@ -1094,11 +1099,6 @@
"version": "v0.5.7",
"date": "2025-01-17T15:57:17Z"
},
{
"name": "traccar/traccar",
"version": "v6.6",
"date": "2025-01-11T17:26:49Z"
},
{
"name": "ErsatzTV/ErsatzTV",
"version": "v25.1.0",

View File

@ -10,7 +10,7 @@
"privileged": false,
"interface_port": null,
"documentation": "https://docs.zammad.org/en/latest/",
"website": "https://zammad.com/",
"website": "https://zammad.org/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/zammad.webp",
"config_path": "/etc/nginx/sites-available/zammad.conf",
"description": "Zammad is a web based open source helpdesk/customer support system with many features to manage customer communication via several channels like telephone, facebook, twitter, chat and emails. It is distributed under version 3 of the GNU AFFERO General Public License (GNU AGPLv3).",

View File

@ -15,10 +15,10 @@ update_os
msg_info "Installing Dependencies"
$STD apk add --no-cache \
gpg \
git \
nodejs \
npm
gpg \
git \
nodejs \
npm
msg_ok "Installed Dependencies"
msg_info "Creating Node-RED User"
@ -26,16 +26,22 @@ 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
$STD npm install -g --unsafe-perm node-red
msg_ok "Installed Node-RED"
msg_info "Creating /home/nodered"
mkdir -p /home/nodered
chown -R nodered:users /home/nodered
chmod 750 /home/nodered
msg_ok "Created /home/nodered"
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="/usr/local/bin/node-red"
command_args="--max-old-space-size=128 -v"
command_user="nodered"
pidfile="/var/run/nodered.pid"
@ -49,7 +55,7 @@ $STD rc-update add nodered default
msg_ok "Created Node-RED Service"
msg_info "Starting Node-RED"
$STD service nodered start
$STD rc-service nodered start
msg_ok "Started Node-RED"
motd_ssh

View File

@ -0,0 +1,108 @@
#!/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://github.com/babybuddy/babybuddy
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 \
uwsgi \
uwsgi-plugin-python3 \
libopenjp2-7-dev \
libpq-dev \
nginx \
python3
msg_ok "Installed Dependencies"
setup_uv
msg_info "Installing Babybuddy"
RELEASE=$(curl -fsSL https://api.github.com/repos/babybuddy/babybuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
temp_file=$(mktemp)
mkdir -p /opt/{babybuddy,data}
curl -fsSL "https://github.com/babybuddy/babybuddy/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar zxf "$temp_file" --strip-components=1 -C /opt/babybuddy
cd /opt/babybuddy
$STD uv venv .venv
$STD source .venv/bin/activate
$STD uv pip install -r requirements.txt
cp babybuddy/settings/production.example.py babybuddy/settings/production.py
SECRET_KEY=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)
ALLOWED_HOSTS=$(hostname -I | tr ' ' ',' | sed 's/,$//')",127.0.0.1,localhost"
sed -i \
-e "s/^SECRET_KEY = \"\"/SECRET_KEY = \"$SECRET_KEY\"/" \
-e "s/^ALLOWED_HOSTS = \[\"\"\]/ALLOWED_HOSTS = \[$(echo \"$ALLOWED_HOSTS\" | sed 's/,/\",\"/g')\]/" \
babybuddy/settings/production.py
export DJANGO_SETTINGS_MODULE=babybuddy.settings.production
$STD python manage.py migrate
chown -R www-data:www-data /opt/data
chmod 640 /opt/data/db.sqlite3
chmod 750 /opt/data
msg_ok "Installed Babybuddy"
msg_info "Configuring uWSGI"
cat <<EOF >/etc/uwsgi/apps-available/babybuddy.ini
[uwsgi]
plugins = python3
project = babybuddy
base_dir = /opt/babybuddy
chdir = %(base_dir)
virtualenv = %(base_dir)/.venv
module = %(project).wsgi:application
env = DJANGO_SETTINGS_MODULE=%(project).settings.production
master = True
vacuum = True
socket = /var/run/uwsgi/app/babybuddy/socket
chmod-socket = 660
uid = www-data
gid = www-data
EOF
ln -sf /etc/uwsgi/apps-available/babybuddy.ini /etc/uwsgi/apps-enabled/babybuddy.ini
service uwsgi restart
msg_ok "Configured uWSGI"
msg_info "Configuring NGINX"
cat <<EOF >/etc/nginx/sites-available/babybuddy
upstream babybuddy {
server unix:///var/run/uwsgi/app/babybuddy/socket;
}
server {
listen 80;
server_name _;
location / {
uwsgi_pass babybuddy;
include uwsgi_params;
}
location /media {
alias /opt/data/media;
}
}
EOF
ln -sf /etc/nginx/sites-available/babybuddy /etc/nginx/sites-enabled/babybuddy
rm /etc/nginx/sites-enabled/default
systemctl enable -q --now nginx
service nginx reload
msg_ok "Configured NGINX"
motd_ssh
customize
msg_info "Cleaning up"
rm -f "$temp_file"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -0,0 +1,87 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: edoardop13
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/favonia/cloudflare-ddns
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
install_go
msg_info "Configure Application"
var_cf_api_token="default"
read -rp "Enter the Cloudflare API token: " var_cf_api_token
var_cf_domains="default"
read -rp "Enter the domains separated with a comma (*.example.org,www.example.org) " var_cf_domains
var_cf_proxied="false"
while true; do
read -rp "Proxied? (y/n): " answer
case "$answer" in
[Yy]*)
var_cf_proxied="true"
break
;;
[Nn]*)
var_cf_proxied="false"
break
;;
*) echo "Please answer y or n." ;;
esac
done
var_cf_ip6_provider="none"
while true; do
read -rp "Enable IPv6 support? (y/n): " answer
case "$answer" in
[Yy]*)
var_cf_ip6_provider="auto"
break
;;
[Nn]*)
var_cf_ip6_provider="none"
break
;;
*) echo "Please answer y or n." ;;
esac
done
msg_ok "Configured Application"
msg_info "Setting up service"
mkdir -p /root/go
cat <<EOF >/etc/systemd/system/cloudflare-ddns.service
[Unit]
Description=Cloudflare DDNS Service (Go run)
After=network.target
[Service]
Environment="CLOUDFLARE_API_TOKEN=${var_cf_api_token}"
Environment="DOMAINS=${var_cf_domains}"
Environment="PROXIED=${var_cf_proxied}"
Environment="IP6_PROVIDER=${var_cf_ip6_provider}"
Environment="GOPATH=/root/go"
Environment="GOCACHE=/tmp/go-build"
ExecStart=/usr/bin/go/bin/go run github.com/favonia/cloudflare-ddns/cmd/ddns@latest
Restart=always
RestartSec=300
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now cloudflare-ddns
msg_ok "Setup Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -0,0 +1,70 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: finkerle
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/raydak-labs/configarr
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 \
git
msg_ok "Installed Dependencies"
NODE_MODULE="pnpm@latest" install_node_and_modules
fetch_and_deploy_gh_release "raydak-labs/configarr"
msg_info "Setup ${APPLICATION}"
cat <<EOF >/opt/configarr/.env
ROOT_PATH=/opt/configarr
CUSTOM_REPO_ROOT=/opt/configarr/repos
CONFIG_LOCATION=/opt/configarr/config.yml
SECRETS_LOCATION=/opt/configarr/secrets.yml
EOF
mv /opt/configarr/secrets.yml.template /opt/configarr/secrets.yml
sed 's|#localConfigTemplatesPath: /app/templates|#localConfigTemplatesPath: /opt/configarr/templates|' /opt/configarr/config.yml.template >/opt/configarr/config.yml
cd /opt/configarr
$STD pnpm install
$STD pnpm run build
msg_ok "Setup ${APPLICATION}"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/configarr-task.service
[Unit]
Description=Run Configarr Task
[Service]
Type=oneshot
WorkingDirectory=/opt/configarr
ExecStart=/usr/bin/node /opt/configarr/bundle.cjs
EOF
cat <<EOF >/etc/systemd/system/configarr-task.timer
[Unit]
Description=Run Configarr every 5 minutes
[Timer]
OnBootSec=2min
OnUnitActiveSec=5min
Persistent=true
[Install]
WantedBy=timers.target
EOF
systemctl enable -q --now configarr-task.timer configarr-task.service
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -0,0 +1,28 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Arian Nasr (arian-nasr)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.freepbx.org/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing FreePBX (Patience)"
curl -fsSL https://github.com/FreePBX/sng_freepbx_debian_install/raw/master/sng_freepbx_debian_install.sh -o /opt/sng_freepbx_debian_install.sh
$STD bash /opt/sng_freepbx_debian_install.sh
msg_ok "Installed FreePBX"
motd_ssh
customize
msg_info "Cleaning up"
rm /opt/sng_freepbx_debian_install.sh
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -15,20 +15,15 @@ update_os
msg_info "Installing Dependencies"
$STD apt-get install -y \
gpg \
build-essential
msg_ok "Installed Dependencies"
msg_info "Setting up Node.js Repository"
mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
msg_ok "Set up Node.js Repository"
msg_info "Installing Python3"
$STD apt-get install -y \
python3-pip
msg_ok "Installed Python3"
msg_info "Installing Node.js"
$STD apt-get update
$STD apt-get install -y nodejs
msg_ok "Installed Node.js"
install_node_and_modules
msg_info "Setup Paperless-AI"
cd /opt
@ -37,6 +32,8 @@ curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEA
unzip -q v${RELEASE}.zip
mv paperless-ai-${RELEASE} /opt/paperless-ai
cd /opt/paperless-ai
$STD pip install --no-cache-dir -r requirements.txt
mkdir -p data/chromadb
$STD npm install
mkdir -p /opt/paperless-ai/data
cat <<EOF >/opt/paperless-ai/data/.env
@ -61,6 +58,8 @@ API_KEY=
CUSTOM_API_KEY=
CUSTOM_BASE_URL=
CUSTOM_MODEL=
RAG_SERVICE_URL=http://localhost:8000
RAG_SERVICE_ENABLED=true
EOF
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
msg_ok "Setup Paperless-AI"
@ -69,7 +68,8 @@ msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/paperless-ai.service
[Unit]
Description=PaperlessAI Service
After=network.target
After=network.target paperless-rag.service
Requires=paperless-rag.service
[Service]
WorkingDirectory=/opt/paperless-ai
@ -79,6 +79,22 @@ Restart=always
[Install]
WantedBy=multi-user.target
EOF
cat <<EOF >/etc/systemd/system/paperless-rag.service
[Unit]
Description=PaperlessAI-RAG Service
After=network.target
[Service]
WorkingDirectory=/opt/paperless-ai
ExecStart=/usr/bin/python3 main.py --host 0.0.0.0 --port 8000 --initialize
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now paperless-rag
sleep 5
systemctl enable -q --now paperless-ai
msg_ok "Created Service"

View File

@ -1,62 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 tteck
# Author: tteck (tteckster)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/deepch/RTSPtoWeb
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 git
msg_ok "Installed Dependencies"
msg_info "Installing Golang"
set +o pipefail
temp_file=$(mktemp)
golang_tarball=$(curl -fsSL https://go.dev/dl/ | grep -oP 'go[\d\.]+\.linux-amd64\.tar\.gz' | head -n 1)
curl -fsSL "https://golang.org/dl/${golang_tarball}" -o "$temp_file"
tar -C /usr/local -xzf "$temp_file"
ln -sf /usr/local/go/bin/go /usr/local/bin/go
rm -f "$temp_file"
set -o pipefail
msg_ok "Installed Golang"
msg_info "Installing RTSPtoWeb"
$STD git clone https://github.com/deepch/RTSPtoWeb /opt/rtsptoweb
cat <<EOF >>/opt/rtsptoweb/start
#!/bin/bash
cd /opt/rtsptoweb && GO111MODULE=on go run *.go
EOF
chmod +x /opt/rtsptoweb/start
msg_ok "Installed RTSPtoWeb"
msg_info "Creating Service"
service_path="/etc/systemd/system/rtsptoweb.service"
echo "[Unit]
Description=RTSP to Web Streaming Service
After=network.target
[Service]
Type=simple
User=root
ExecStart=/opt/rtsptoweb/start
[Install]
WantedBy=multi-user.target" >$service_path
systemctl enable -q --now rtsptoweb
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@ -5,7 +5,7 @@
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/slskd/slskd/, https://soularr.net
source /dev/stdin <<< "$FUNCTIONS_FILE_PATH"
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
@ -28,14 +28,15 @@ JWT_KEY=$(openssl rand -base64 44)
SLSKD_API_KEY=$(openssl rand -base64 44)
cp /opt/${APPLICATION}/config/slskd.example.yml /opt/${APPLICATION}/config/slskd.yml
sed -i \
-e "\|web:|,\|cidr|s|^#||" \
-e "\|https:|,\|5031|s|false|true|" \
-e "\|api_keys|,\|cidr|s|<some.*$|$SLSKD_API_KEY|; \
-e "\|web:|,\|cidr|s|^#||" \
-e "\|https:|,\|5031|s|false|true|" \
-e "\|api_keys|,\|cidr|s|<some.*$|$SLSKD_API_KEY|; \
s|role: readonly|role: readwrite|; \
s|0.0.0.0/0,::/0|& # Replace this with your subnet|" \
-e "\|soulseek|,\|write_queue|s|^#||" \
-e "\|jwt:|,\|ttl|s|key: ~|key: $JWT_KEY|" \
/opt/${APPLICATION}/config/slskd.yml
-e "\|soulseek|,\|write_queue|s|^#||" \
-e "\|jwt:|,\|ttl|s|key: ~|key: $JWT_KEY|" \
-e "s|^ picture|# picture|" \
/opt/${APPLICATION}/config/slskd.yml
msg_ok "Setup ${APPLICATION}"
msg_info "Installing Soularr"
@ -47,15 +48,15 @@ mv soularr-main /opt/soularr
cd /opt/soularr
$STD pip install -r requirements.txt
sed -i \
-e "\|[Slskd]|,\|host_url|s|yourslskdapikeygoeshere|$SLSKD_API_KEY|" \
-e "/host_url/s/slskd/localhost/" \
/opt/soularr/config.ini
-e "\|[Slskd]|,\|host_url|s|yourslskdapikeygoeshere|$SLSKD_API_KEY|" \
-e "/host_url/s/slskd/localhost/" \
/opt/soularr/config.ini
sed -i \
-e "/#This\|#Default\|INTERVAL/{N;d;}" \
-e "/while\|#Pass/d" \
-e "\|python|s|app|opt/soularr|; s|python|python3|" \
-e "/dt/,+2d" \
/opt/soularr/run.sh
-e "/#This\|#Default\|INTERVAL/{N;d;}" \
-e "/while\|#Pass/d" \
-e "\|python|s|app|opt/soularr|; s|python|python3|" \
-e "/dt/,+2d" \
/opt/soularr/run.sh
sed -i -E "/(soularr.py)/s/.{5}$//; /if/,/fi/s/.{4}//" /opt/soularr/run.sh
chmod +x /opt/soularr/run.sh
msg_ok "Installed Soularr"

View File

@ -75,6 +75,8 @@ sed -i -e "s|SECRET_KEY=.*|SECRET_KEY=$secret_key|g" \
-e "s|POSTGRES_DB=.*|POSTGRES_DB=$DB_NAME|g" \
-e "s|POSTGRES_USER=.*|POSTGRES_USER=$DB_USER|g" \
-e "\$a\STATIC_URL=/staticfiles/" /opt/tandoor/.env
cd /opt/tandoor
$STD python3 version.py
msg_ok "Installed Tandoor"
msg_info "Install/Set up PostgreSQL Database"

View File

@ -59,6 +59,7 @@ color() {
ROOTSSH="${TAB}🔑${TAB}${CL}"
CREATING="${TAB}🚀${TAB}${CL}"
ADVANCED="${TAB}🧩${TAB}${CL}"
FUSE="${TAB}🗂️${TAB}${CL}"
}
# This function enables error handling in the script by setting options and defining a trap for the ERR signal.
@ -345,6 +346,8 @@ base_settings() {
SSH="no"
SSH_AUTHORIZED_KEY=""
TAGS="community-script;"
ENABLE_FUSE="no"
ENABLE_TUN="no"
# Override default settings with variables from ct script
CT_TYPE=${var_unprivileged:-$CT_TYPE}
@ -353,6 +356,8 @@ base_settings() {
RAM_SIZE=${var_ram:-$RAM_SIZE}
VERB=${var_verbose:-$VERBOSE}
TAGS="${TAGS}${var_tags:-}"
ENABLE_FUSE="${var_fuse:-$ENABLE_FUSE}"
ENABLE_TUN="${var_tun:-$ENABLE_TUN}"
# Since these 2 are only defined outside of default_settings function, we add a temporary fallback. TODO: To align everything, we should add these as constant variables (e.g. OSTYPE and OSVERSION), but that would currently require updating the default_settings function for all existing scripts
if [ -z "$var_os" ]; then
@ -398,8 +403,8 @@ EOF
else
echo -e "${INFO}${BOLD}${RD}Configuration file already exists at ${FILEPATH}${CL}"
if whiptail --backtitle "[dev] Proxmox VE Helper Scripts" --defaultno --title "Overwrite configfile" --yesno "Do you want to overwrite the existing config file?" 10 60; then
rm -f "$FILEPATH"
cat <<EOF >"$FILEPATH"
rm -f "$FILEPATH"
cat <<EOF >"$FILEPATH"
# ${NSAPP} Configuration File
# Generated on $(date)
@ -433,7 +438,6 @@ EOF
fi
}
# This function displays the default values for various settings.
echo_default() {
# Convert CT_TYPE to description
@ -791,6 +795,12 @@ advanced_settings() {
echo -e "${ROOTSSH}${BOLD}${DGN}Root SSH Access: ${BGN}$SSH${CL}"
fi
if (whiptail --backtitle "[dev] Proxmox VE Helper Scripts" --defaultno --title "FUSE Support" --yesno "Enable FUSE support?\nRequired for tools like rclone, mergerfs, AppImage, etc." 10 58); then
ENABLE_FUSE="yes"
else
ENABLE_FUSE="no"
fi
echo -e "${FUSE}${BOLD}${DGN}Enable FUSE Support: ${BGN}$ENABLE_FUSE${CL}"
if (whiptail --backtitle "Proxmox VE Helper Scripts" --defaultno --title "VERBOSE MODE" --yesno "Enable Verbose Mode?" 10 58); then
VERB="yes"
@ -878,7 +888,6 @@ EOF
}
install_script() {
pve_check
shell_check
@ -1064,6 +1073,10 @@ build_container() {
FEATURES="nesting=1"
fi
if [ "$ENABLE_FUSE" == "yes" ]; then
FEATURES="$FEATURES,fuse=1"
fi
if [[ $DIAGNOSTICS == "yes" ]]; then
post_to_api
fi
@ -1088,6 +1101,8 @@ build_container() {
export SSH_AUTHORIZED_KEY
export CTID="$CT_ID"
export CTTYPE="$CT_TYPE"
export ENABLE_FUSE="$ENABLE_FUSE"
export ENABLE_TUN="$ENABLE_TUN"
export PCT_OSTYPE="$var_os"
export PCT_OSVERSION="$var_version"
export PCT_DISK_SIZE="$DISK_SIZE"
@ -1155,6 +1170,13 @@ EOF
fi
fi
if [ "$ENABLE_TUN" == "yes" ]; then
cat <<EOF >>"$LXC_CONFIG"
lxc.cgroup2.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file
EOF
fi
# This starts the container and executes <app>-install.sh
msg_info "Starting LXC Container"
pct start "$CTID"

View File

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

View File

@ -0,0 +1,6 @@
______ __ ______ __ _____
/ ____/___ ____/ /__ _____ / ____/___ ____/ /__ / ___/___ ______ _____ _____
/ / / __ \/ __ / _ \/ ___/ / / / __ \/ __ / _ \ \__ \/ _ \/ ___/ | / / _ \/ ___/
/ /___/ /_/ / /_/ / __/ / / /___/ /_/ / /_/ / __/ ___/ / __/ / | |/ / __/ /
\____/\____/\__,_/\___/_/ \____/\____/\__,_/\___/ /____/\___/_/ |___/\___/_/

View File

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

View File

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

6
tools/headers/crowdsec Normal file
View File

@ -0,0 +1,6 @@
______ _______
/ ____/________ _ ______/ / ___/___ _____
/ / / ___/ __ \ | /| / / __ /\__ \/ _ \/ ___/
/ /___/ / / /_/ / |/ |/ / /_/ /___/ / __/ /__
\____/_/ \____/|__/|__/\__,_//____/\___/\___/

View File

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

6
tools/headers/glances Normal file
View File

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

6
tools/headers/olivetin Normal file
View File

@ -0,0 +1,6 @@
____ ___ _______
/ __ \/ (_) _____/_ __(_)___
/ / / / / / | / / _ \/ / / / __ \
/ /_/ / / /| |/ / __/ / / / / / /
\____/_/_/ |___/\___/_/ /_/_/ /_/

View File

@ -10,10 +10,10 @@ source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-sc
function header_info {
clear
cat <<"EOF"
______ __ __ _ __ __ __ _ ____ ___
/_ __/_ _________ / //_/__ __ __ / |/ /____ ______/ /__ __ _____/ / | | / / |/ /
/ / / // / __/ _ \/ ,< / -_) // / / / -_) \ / __/ / _ \/ // / _ / | |/ / /|_/ /
/_/ \_,_/_/ /_//_/_/|_|\__/\_, / /_/|_/\__/_\_\\__/_/\___/\_,_/\_,_/ |___/_/ /_/
______ __ __ _ __ __ __ __ _ ____ ___
/_ __/_ _________ / //_/__ __ __ / |/ /____ __/ /_____/ /__ __ _____/ / | | / / |/ /
/ / / // / __/ _ \/ ,< / -_) // / / / -_) \ / __/ __/ / _ \/ // / _ / | |/ / /|_/ /
/_/ \_,_/_/ /_//_/_/|_|\__/\_, / /_/|_/\__/_\_\\__/\__/_/\___/\_,_/\_,_/ |___/_/ /_/
/___/
EOF
}
@ -26,7 +26,7 @@ var_os="turnkey-nextcloud"
var_version=" "
DISK_SIZE="12G"
GEN_MAC=02:$(openssl rand -hex 5 | awk '{print toupper($0)}' | sed 's/\(..\)/\1:/g; s/.$//')
NAME="TurnKey Nexcloud VM"
NAME="TurnKey Nextcloud VM"
YW=$(echo "\033[33m")
BL=$(echo "\033[36m")
HA=$(echo "\033[1;34m")