Files
2026-05-13 09:15:16 +02:00

55 lines
1.4 KiB
Plaintext

#!/usr/bin/with-contenv bashio
# shellcheck shell=bash
WEBUI_PORT=${WEBUI_PORT:-8080}
export PATH="/usr/local/sbin:/usr/local/bin:${PATH}"
# --- Configuration & Pre-checks ---
if bashio::config.true 'silent'; then
sed -i 's|/proc/1/fd/1 hassio;|off;|g' /etc/nginx/nginx.conf
fi
# --- Main Execution ---
openvpn_enabled=false
wireguard_enabled=false
if bashio::config.true 'openvpn_enabled'; then
openvpn_enabled=true
fi
if bashio::config.true 'wireguard_enabled'; then
wireguard_enabled=true
fi
if [[ "${openvpn_enabled}" == true && "${wireguard_enabled}" == true ]]; then
bashio::log.error "Both OpenVPN and WireGuard are enabled. Only one VPN mode is supported."
exit 1
fi
if [[ "${openvpn_enabled}" == true ]]; then
/usr/local/sbin/vpn openvpn up
elif [[ "${wireguard_enabled}" == true ]]; then
/usr/local/sbin/vpn wireguard up
fi
# --- Launch qBittorrent ---
# Determine log output based on silent mode
QB_OUTPUT="/proc/1/fd/1"
if bashio::config.true 'silent'; then
QB_OUTPUT="/dev/null"
fi
bashio::log.info "Starting qBittorrent..."
if [ -f /etc/s6-overlay/s6-rc.d/svc-qbittorrent/notification-fd ]; then
exec \
s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z localhost ${WEBUI_PORT}" \
s6-setuidgid abc /app/qbittorrent-nox --webui-port="${WEBUI_PORT}" > "${QB_OUTPUT}"
else
sleep 10
exec s6-setuidgid abc /app/qbittorrent-nox --webui-port="${WEBUI_PORT}" > "${QB_OUTPUT}"
fi