Compare commits

..

5 Commits

Author SHA1 Message Date
d7ab5629cb fix(ersatztv): remove duplicate HW acceleration code
Removed manual Intel HW acceleration setup that remained after
setup_hwaccel migration. The non-free driver prompt is no longer
needed as setup_hwaccel auto-detects Intel GPU generation.
2025-12-17 09:03:00 +01:00
b2373c1ab3 feat(hwaccel): complete Intel non-free driver support and GID sync
Enhanced setup_hwaccel function:
- Auto-detect Intel GPU generation (Gen 9+ for non-free drivers)
- Debian 12 (Bookworm): Add non-free repo + intel-media-va-driver-non-free
- Debian 13 (Trixie): Add non-free repo + libvpl2 + mesa-opencl-icd
- Ubuntu: Use ubuntu repos with intel-media-va-driver
- Fallback to open drivers if non-free fails
- GID sync for video/render groups (moved from install scripts)

OpenWebUI: Added Intel oneAPI support when installing Ollama
- Intel Level Zero GPU support
- Intel oneAPI Base Toolkit
- Same setup as standalone Ollama install

Cleanup:
- Removed duplicate GID sync from tdarr-install.sh
- Removed duplicate GID sync from unmanic-install.sh
2025-12-17 08:51:32 +01:00
f53e89b440 refactor(hwaccel): complete migration for all GPU apps
Migrated remaining GPU apps to setup_hwaccel:
- fileflows-install.sh
- openwebui-install.sh (added setup_hwaccel - was missing)
- tunarr-install.sh

Also fixed tools/pve/hw-acceleration.sh:
- Added error handling for /dev/dri operations
- Added chmod 660 /dev/dri/* that was missing
- Added error suppression for adduser commands

All 13 GPU apps (var_gpu=yes) now use centralized setup_hwaccel:
jellyfin, plex, emby, ersatztv, frigate, tdarr, unmanic,
channels, ollama, immich, fileflows, openwebui, tunarr
2025-12-17 08:43:04 +01:00
2305231391 refactor(hwaccel): standardize hardware acceleration across all install scripts
Migrated all install scripts to use the centralized setup_hwaccel function:
- plex-install.sh
- emby-install.sh
- ersatztv-install.sh
- frigate-install.sh
- tdarr-install.sh
- unmanic-install.sh
- channels-install.sh
- ollama-install.sh
- immich-install.sh (added error handling)

Enhanced setup_hwaccel function in tools.func:
- Added -d /dev/dri check before setting permissions
- Added error handling (2>/dev/null || true) for all /dev/dri operations
- Added adduser error handling for video/render groups
- No longer fails if no GPU is detected (graceful skip)
- Added intel-media-va-driver for newer Intel GPUs
- Improved AMD APU support with firmware packages
- Better NVIDIA handling (warning instead of failure)

This fixes installation failures in privileged containers without GPU
passthrough, where /dev/dri does not exist.

Supports: Ubuntu, Debian 12 (Bookworm), Debian 13 (Trixie)
GPU Support: Intel, AMD, NVIDIA (manual driver)
2025-12-17 08:16:50 +01:00
65484b76c0 fix(jellyfin): use setup_hwaccel for robust hardware acceleration
Replaces manual hardware acceleration setup with the centralized
setup_hwaccel function from tools.func.

This fixes the installation failure in privileged containers where
/dev/dri does not exist (e.g., when no GPU is passed through).

The setup_hwaccel function includes:
- Proper error handling for missing /dev/dri
- GPU vendor detection (Intel, AMD, NVIDIA)
- Graceful fallback when no GPU is available

Fixes: Installation fails with 'chgrp: cannot access /dev/dri'
when creating privileged containers without GPU passthrough.
2025-12-17 08:10:30 +01:00
41 changed files with 177 additions and 234 deletions

View File

@ -12,19 +12,6 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
## 2025-12-17
### 🚀 Updated Scripts
- Tracktor: updated environment variables for latest release [@javedh-dev](https://github.com/javedh-dev) ([#10067](https://github.com/community-scripts/ProxmoxVE/pull/10067))
- #### 🐞 Bug Fixes
- update github repo for endurain [@johanngrobe](https://github.com/johanngrobe) ([#10074](https://github.com/community-scripts/ProxmoxVE/pull/10074))
- #### ✨ New Features
- use setup_hwaccel for robust hardware acceleration [@MickLesk](https://github.com/MickLesk) ([#10054](https://github.com/community-scripts/ProxmoxVE/pull/10054))
- add hardware acceleration support for 17 additional apps [@MickLesk](https://github.com/MickLesk) ([#10061](https://github.com/community-scripts/ProxmoxVE/pull/10061))
## 2025-12-16
### 🆕 New Scripts

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-ubuntu}"
var_version="${var_version:-24.04}"
var_unprivileged="${var_unprivileged:-0}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -1,5 +1,5 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: jdacode
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
@ -13,7 +13,6 @@ var_disk="${var_disk:-25}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables
@ -89,8 +88,8 @@ function update_script() {
fi
if ! grep -q "DJANGO_SECRET_KEY" /opt/dispatcharr/.env; then
DJANGO_SECRET=$(openssl rand -base64 48 | tr -dc 'a-zA-Z0-9' | cut -c1-50)
echo "DJANGO_SECRET_KEY=$DJANGO_SECRET" >>/opt/dispatcharr/.env
DJANGO_SECRET=$(openssl rand -base64 48 | tr -dc 'a-zA-Z0-9' | cut -c1-50)
echo "DJANGO_SECRET_KEY=$DJANGO_SECRET" >> /opt/dispatcharr/.env
fi
cd /opt/dispatcharr

View File

@ -28,7 +28,7 @@ function update_script() {
msg_error "No ${APP} installation found!"
exit 1
fi
if check_for_gh_release "endurain" "endurain-project/endurain"; then
if check_for_gh_release "endurain" "joaovitoriasilva/endurain"; then
msg_info "Stopping Service"
systemctl stop endurain
msg_ok "Stopped Service"
@ -38,7 +38,7 @@ function update_script() {
cp /opt/endurain/frontend/app/dist/env.js /opt/endurain.env.js
msg_ok "Created Backup"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "endurain" "endurain-project/endurain" "tarball" "latest" "/opt/endurain"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "endurain" "joaovitoriasilva/endurain" "tarball" "latest" "/opt/endurain"
msg_info "Preparing Update"
cd /opt/endurain

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-0}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-20}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables
@ -21,17 +20,17 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/motioneye.service ]]; then
msg_error "No ${APP} Installation Found!"
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/motioneye.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating ${APP} LXC"
$STD pip install motioneye --upgrade
msg_ok "Updated successfully!"
exit
fi
msg_info "Updating ${APP} LXC"
$STD pip install motioneye --upgrade
msg_ok "Updated successfully!"
exit
}
start

View File

@ -14,7 +14,6 @@ var_disk="${var_disk:-5}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-ubuntu}"
var_version="${var_version:-24.04}"
var_unprivileged="${var_unprivileged:-0}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-2}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables
@ -32,7 +31,7 @@ function update_script() {
msg_info "Stopping PhotoPrism"
systemctl stop photoprism
msg_ok "Stopped PhotoPrism"
if ! grep -q "photoprism/config/.env" ~/.bashrc 2>/dev/null; then
msg_info "Adding environment export for CLI tools"
echo '# Load PhotoPrism environment variables for CLI tools' >>~/.bashrc

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-ubuntu}"
var_version="${var_version:-24.04}"
var_unprivileged="${var_unprivileged:-0}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -34,39 +34,38 @@ function update_script() {
msg_ok "Stopped Service"
msg_info "Correcting Services"
if [ -f /opt/tracktor/app/backend/.env ]; then
mv /opt/tracktor/app/backend/.env /opt/tracktor.env
echo 'AUTH_PIN=123456' >>/opt/tracktor.env
sed -i 's|^EnvironmentFile=.*|EnvironmentFile=/opt/tracktor.env|' /etc/systemd/system/tracktor.service
systemctl daemon-reload
fi
if [ ! -d "/opt/tracktor-data/uploads" ]; then
mkdir -p /opt/tracktor-data/{uploads,logs}
fi
if ! grep -qxF 'BODY_SIZE_LIMIT=Infinity' /opt/tracktor.env; then
rm /opt/tracktor.env
cat <<EOF >/opt/tracktor.env
cat <<EOF >/opt/tracktor.env
EXISTING_AUTH_PIN=$(grep '^AUTH_PIN=' /opt/tracktor.env 2>/dev/null | cut -d'=' -f2)
AUTH_PIN=${EXISTING_AUTH_PIN:-123456}
cat <<EOF >/opt/tracktor.env
NODE_ENV=production
# Set this to the path of the database file. Default - ./tracktor.db
DB_PATH=/opt/tracktor-data/tracktor.db
# Set this to the path of the uploads directory. Default - ./uploads
UPLOADS_DIR="/opt/tracktor-data/uploads"
# Set this to the path of the logs directory. Default - ./logs
LOG_DIR="/opt/tracktor-data/logs"
# Hostname to bind the server to. Default - 0.0.0.0
#HOST="0.0.0.0"
# Port to bind the server to. Default - 3000
#PORT=3000
# Set this to remove upload size limitations. Default - 512 Kb
BODY_SIZE_LIMIT=Infinity
# Enable request logging. Default - true
#LOG_REQUESTS=true
# Set the logging level. Options - error, warn, info, verbose, debug, silly. Default - info
#LOG_LEVEL="info"
# Enable demo mode. Default - false
#TRACKTOR_DEMO_MODE=false
# Force reseeding of data on every startup. Default - false
#FORCE_DATA_SEED=false
# If server host is not set by default it will run on all interfaces - 0.0.0.0
# SERVER_HOST=""
SERVER_PORT=3000
# Set this if you want to secure your endpoints otherwise default will be "*"
CORS_ORIGINS="*"
# Set this if you are using backend and frontend separately.
# PUBLIC_API_BASE_URL=""
LOG_REQUESTS=true
LOG_LEVEL="info"
AUTH_PIN=${AUTH_PIN}
# PUBLIC_DEMO_MODE=false
# FORCE_DATA_SEED=false
EOF
fi
msg_ok "Corrected Services"
NODE_VERSION="24" setup_nodejs
NODE_VERSION="22" setup_nodejs
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "tracktor" "javedh-dev/tracktor" "tarball" "latest" "/opt/tracktor"
msg_info "Updating tracktor"

View File

@ -13,7 +13,6 @@ var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables

View File

@ -1,109 +1,4 @@
[
{
"name": "zabbix/zabbix",
"version": "7.0.22",
"date": "2025-12-17T10:10:49Z"
},
{
"name": "traefik/traefik",
"version": "v2.11.33",
"date": "2025-12-17T10:10:19Z"
},
{
"name": "mattermost/mattermost",
"version": "v11.1.2",
"date": "2025-12-17T09:26:24Z"
},
{
"name": "coollabsio/coolify",
"version": "v4.0.0-beta.455",
"date": "2025-12-17T09:24:10Z"
},
{
"name": "TuroYT/snowshare",
"version": "v1.2.2",
"date": "2025-12-17T09:07:12Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "v1.6.7-rc1",
"date": "2025-12-17T08:57:07Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.7.6",
"date": "2025-12-17T08:56:54Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.105.1",
"date": "2025-12-17T08:48:52Z"
},
{
"name": "comfyanonymous/ComfyUI",
"version": "v0.5.0",
"date": "2025-12-17T08:46:11Z"
},
{
"name": "passbolt/passbolt_api",
"version": "v5.8.0-test.3",
"date": "2025-12-17T08:38:11Z"
},
{
"name": "jupyter/notebook",
"version": "@jupyter-notebook/ui-components@7.6.0-alpha.0",
"date": "2025-12-17T08:35:55Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v11.9.0",
"date": "2025-12-17T08:26:50Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.80.10.rc.3",
"date": "2025-12-17T07:48:43Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.4.14",
"date": "2025-12-16T05:42:34Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.4",
"date": "2025-10-09T10:27:01Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.468",
"date": "2025-12-17T05:55:30Z"
},
{
"name": "nickheyer/discopanel",
"version": "v1.0.16",
"date": "2025-12-17T04:47:13Z"
},
{
"name": "metabase/metabase",
"version": "v0.58.0-beta",
"date": "2025-12-17T03:57:33Z"
},
{
"name": "9001/copyparty",
"version": "v1.19.23",
"date": "2025-12-17T00:51:11Z"
},
{
"name": "jeedom/core",
"version": "4.5",
"date": "2025-12-17T00:27:05Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.1.0",
"date": "2025-11-23T12:13:34Z"
},
{
"name": "esphome/esphome",
"version": "2025.12.0",
@ -125,15 +20,20 @@
"date": "2025-12-16T21:19:10Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.7",
"date": "2025-12-01T08:14:11Z"
"name": "metabase/metabase",
"version": "v0.57.x",
"date": "2025-12-16T19:20:02Z"
},
{
"name": "prometheus-pve/prometheus-pve-exporter",
"version": "v3.7.0",
"date": "2025-12-16T19:01:35Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.462",
"date": "2025-12-16T19:01:01Z"
},
{
"name": "netbox-community/netbox",
"version": "v4.4.8",
@ -159,6 +59,11 @@
"version": "fumadocs-mdx@14.1.1",
"date": "2025-12-16T15:32:59Z"
},
{
"name": "traefik/traefik",
"version": "v3.6.5",
"date": "2025-12-16T15:05:09Z"
},
{
"name": "meilisearch/meilisearch",
"version": "prototype-v1.30.0-support-aws-irsa.2",
@ -169,11 +74,26 @@
"version": "jenkins-2.542",
"date": "2025-12-16T13:49:44Z"
},
{
"name": "TuroYT/snowshare",
"version": "v1.2.1",
"date": "2025-12-16T13:34:04Z"
},
{
"name": "release-argus/Argus",
"version": "0.28.2",
"date": "2025-12-16T12:36:26Z"
},
{
"name": "bunkerity/bunkerweb",
"version": "v1.6.6",
"date": "2025-11-24T15:30:21Z"
},
{
"name": "zabbix/zabbix",
"version": "7.2.15rc2",
"date": "2025-12-16T10:23:14Z"
},
{
"name": "prometheus/prometheus",
"version": "v3.8.1",
@ -194,16 +114,41 @@
"version": "4.5.5",
"date": "2025-10-24T11:12:22Z"
},
{
"name": "mattermost/mattermost",
"version": "v11.2.1",
"date": "2025-12-16T07:40:44Z"
},
{
"name": "jupyter/notebook",
"version": "v7.5.1",
"date": "2025-12-16T07:39:08Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.4.14",
"date": "2025-12-16T05:42:34Z"
},
{
"name": "ollama/ollama",
"version": "v0.13.4-rc2",
"date": "2025-12-16T02:57:20Z"
},
{
"name": "jeedom/core",
"version": "4.5",
"date": "2025-12-16T00:27:09Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.1.0",
"date": "2025-11-23T12:13:34Z"
},
{
"name": "Stirling-Tools/Stirling-PDF",
"version": "v2.1.4",
@ -234,6 +179,11 @@
"version": "v4.1.0",
"date": "2025-12-15T18:53:25Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.7",
"date": "2025-12-01T08:14:11Z"
},
{
"name": "rabbitmq/rabbitmq-server",
"version": "v4.2.2",
@ -304,6 +254,21 @@
"version": "v10.11.5",
"date": "2025-12-15T02:44:19Z"
},
{
"name": "9001/copyparty",
"version": "v1.19.22",
"date": "2025-12-14T23:38:57Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.80.10.rc.2",
"date": "2025-12-14T22:47:12Z"
},
{
"name": "nickheyer/discopanel",
"version": "v1.0.15",
"date": "2025-12-14T21:49:36Z"
},
{
"name": "AlexxIT/go2rtc",
"version": "v1.9.13",
@ -464,6 +429,11 @@
"version": "v0.30.0",
"date": "2025-12-12T14:03:52Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.7.5",
"date": "2025-12-12T13:54:02Z"
},
{
"name": "ventoy/Ventoy",
"version": "v1.1.09",
@ -474,6 +444,11 @@
"version": "v2.2.0.102-2.2.0.102_canary_2025-12-12",
"date": "2025-12-12T12:03:15Z"
},
{
"name": "passbolt/passbolt_api",
"version": "v5.8.0-test.2",
"date": "2025-12-12T11:43:11Z"
},
{
"name": "Luligu/matterbridge",
"version": "3.4.3",
@ -504,6 +479,11 @@
"version": "0.43.1",
"date": "2025-12-11T22:45:52Z"
},
{
"name": "coollabsio/coolify",
"version": "v4.0.0-beta.454",
"date": "2025-12-11T20:37:05Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.30.22",
@ -539,6 +519,11 @@
"version": "v1.72.1",
"date": "2025-12-10T14:55:44Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.4",
"date": "2025-10-09T10:27:01Z"
},
{
"name": "evcc-io/evcc",
"version": "0.211.1",
@ -554,6 +539,11 @@
"version": "2.2.15",
"date": "2025-12-10T01:52:14Z"
},
{
"name": "comfyanonymous/ComfyUI",
"version": "v0.4.0",
"date": "2025-12-10T00:11:48Z"
},
{
"name": "pelican-dev/panel",
"version": "v1.0.0-beta29",
@ -769,6 +759,11 @@
"version": "6.2.10",
"date": "2025-12-03T13:58:32Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.104.0",
"date": "2025-12-03T06:48:38Z"
},
{
"name": "hyperion-project/hyperion.ng",
"version": "2.1.1",
@ -874,6 +869,11 @@
"version": "v3.13",
"date": "2025-11-30T08:52:20Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v11.8.2",
"date": "2025-11-30T08:39:28Z"
},
{
"name": "ErsatzTV/ErsatzTV",
"version": "v25.9.0",

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y \

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
echo
echo "${TAB3}Choose the GPU type for ComfyUI:"

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
setup_imagemagick

View File

@ -12,18 +12,17 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y \
build-essential \
python3-dev \
libpq-dev \
nginx \
redis-server \
ffmpeg \
procps \
streamlink
build-essential \
python3-dev \
libpq-dev \
nginx \
redis-server \
ffmpeg \
procps \
streamlink
msg_ok "Installed Dependencies"
setup_uv
@ -40,11 +39,11 @@ $STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8'
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC';"
{
echo "Dispatcharr Credentials"
echo "Database Name: $DB_NAME"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
echo ""
echo "Dispatcharr Credentials"
echo "Database Name: $DB_NAME"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
echo ""
} >>~/dispatcharr.creds
msg_ok "Created PostgreSQL Database"
@ -59,9 +58,9 @@ msg_ok "Installed Python Dependencies"
msg_info "Configuring Dispatcharr"
install -d -m 755 \
/data/{logos,recordings,plugins,db} \
/data/uploads/{m3us,epgs} \
/data/{m3us,epgs}
/data/{logos,recordings,plugins,db} \
/data/uploads/{m3us,epgs} \
/data/{m3us,epgs}
chown -R root:root /data
DJANGO_SECRET=$(openssl rand -base64 48 | tr -dc 'a-zA-Z0-9' | cut -c1-50)
export DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}"

View File

@ -22,7 +22,7 @@ NODE_VERSION="24" setup_nodejs
PG_VERSION="17" PG_MODULES="postgis" setup_postgresql
PG_DB_NAME="enduraindb" PG_DB_USER="endurain" setup_postgresql_db
import_local_ip
fetch_and_deploy_gh_release "endurain" "endurain-project/endurain" "tarball" "latest" "/opt/endurain"
fetch_and_deploy_gh_release "endurain" "joaovitoriasilva/endurain" "tarball" "latest" "/opt/endurain"
msg_info "Setting up Endurain"
cd /opt/endurain

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
USE_ORIGINAL_FILENAME="true" fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_amd64"

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing HyperHDR"
setup_deb822_repo \

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Setting up Hyperion repository"
setup_deb822_repo \

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing dependencies"
$STD apt install -y \

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y ffmpeg

View File

@ -13,8 +13,6 @@ setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y git
$STD apt install -y cifs-utils

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies (Patience)"
$STD apt install -y \

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y \

View File

@ -13,8 +13,6 @@ setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies (Patience)"
$STD apt install -y ffmpeg
msg_ok "Installed Dependencies"

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies (Patience)"
$STD apt install -y \

View File

@ -13,8 +13,6 @@ setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt-get install -y make zip net-tools git
$STD apt-get install -y gcc g++ cmake

View File

@ -71,8 +71,6 @@ SESSION_LIFETIME=120
SPEEDTEST_SCHEDULE="0 */6 * * *"
SPEEDTEST_SERVERS=
SPEEDTEST_EXTERNAL_IP_URL=https://ipecho.net/plain
SPEEDTEST_INTERNET_CHECK_HOSTNAME=1.1.1.1
PRUNE_RESULTS_OLDER_THAN=0
DISPLAY_TIMEZONE=${TIMEZONE}

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y \

View File

@ -13,7 +13,7 @@ setting_up_container
network_check
update_os
NODE_VERSION="24" setup_nodejs
NODE_VERSION="22" setup_nodejs
fetch_and_deploy_gh_release "tracktor" "javedh-dev/tracktor" "tarball" "latest" "/opt/tracktor"
msg_info "Configuring Tracktor"
@ -23,26 +23,22 @@ $STD npm run build
mkdir -p /opt/tracktor-data/{uploads,logs}
cat <<EOF >/opt/tracktor.env
NODE_ENV=production
# Set this to the path of the database file. Default - ./tracktor.db
DB_PATH=/opt/tracktor-data/tracktor.db
# Set this to the path of the uploads directory. Default - ./uploads
UPLOADS_DIR="/opt/tracktor-data/uploads"
# Set this to the path of the logs directory. Default - ./logs
LOG_DIR="/opt/tracktor-data/logs"
# Hostname to bind the server to. Default - 0.0.0.0
#HOST="0.0.0.0"
# Port to bind the server to. Default - 3000
#PORT=3000
# Set this to remove upload size limitations. Default - 512 Kb
BODY_SIZE_LIMIT=Infinity
# Enable request logging. Default - true
#LOG_REQUESTS=true
# Set the logging level. Options - error, warn, info, verbose, debug, silly. Default - info
#LOG_LEVEL="info"
# Enable demo mode. Default - false
#TRACKTOR_DEMO_MODE=false
# Force reseeding of data on every startup. Default - false
#FORCE_DATA_SEED=false
# If server host is not set by default it will run on all interfaces - 0.0.0.0
# SERVER_HOST=""
SERVER_PORT=3000
PORT=3000
# Set this if you want to secure your endpoints otherwise default will be "*"
# CORS_ORIGINS="*"
# Set this if you are using backend and frontend separately. For lxc installation this is not needed
# PUBLIC_API_BASE_URL=""
LOG_REQUESTS=true
LOG_LEVEL="info"
AUTH_PIN=123456
# PUBLIC_DEMO_MODE=false
# FORCE_DATA_SEED=false
EOF
msg_ok "Configured Tracktor"

View File

@ -12,7 +12,6 @@ catch_errors
setting_up_container
network_check
update_os
setup_hwaccel
msg_info "Installing Dependencies"
$STD apt install -y ffmpeg