diff --git a/ct/sportarr.sh b/ct/sportarr.sh new file mode 100644 index 000000000..ed4ab0528 --- /dev/null +++ b/ct/sportarr.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +# Copyright (c) 2021-2026 community-scripts ORG +# Author: Slaviša Arežina (tremor021) +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/Sportarr/Sportarr + +APP="Sportarr" +var_tags="${var_tags:-arr}" +var_cpu="${var_cpu:-2}" +var_ram="${var_ram:-2048}" +var_disk="${var_disk:-8}" +var_os="${var_os:-debian}" +var_version="${var_version:-13}" +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/sportarr ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + + if check_for_gh_release "sportarr" "Sportarr/Sportarr"; then + msg_info "Stopping Services" + systemctl stop sportarr + msg_ok "Stopped Services" + + fetch_and_deploy_gh_release "sportarr" "Sportarr/Sportarr" "prebuild" "latest" "/opt/sportarr" "Sportarr-linux-x64-*.tar.gz" + + msg_info "Starting Services" + systemctl start sportarr + msg_ok "Started Services" + msg_ok "Updated successfully!" + 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}:1867${CL}" diff --git a/frontend/public/json/sportarr.json b/frontend/public/json/sportarr.json new file mode 100644 index 000000000..fd0ec06fc --- /dev/null +++ b/frontend/public/json/sportarr.json @@ -0,0 +1,40 @@ +{ + "name": "Sportarr", + "slug": "sportarr", + "categories": [ + 14 + ], + "date_created": "2025-12-12", + "type": "ct", + "updateable": true, + "privileged": false, + "interface_port": 1867, + "documentation": "https://sportarr.net/docs", + "config_path": "/opt/sportarr/.env, /opt/sportarr-data/config/config.xml", + "website": "https://sportarr.net/", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/sportarr.webp", + "description": "Sportarr is an automated media management application for all sports. It works similar to Sonarr and Radarr but specifically designed for combat sports, basketball, football, hockey, motorsports, and hundreds of other sports worldwide.", + "install_methods": [ + { + "type": "default", + "script": "ct/sportarr.sh", + "resources": { + "cpu": 2, + "ram": 2048, + "hdd": 8, + "os": "Debian", + "version": "13" + } + } + ], + "default_credentials": { + "username": null, + "password": null + }, + "notes": [ + { + "text": "The resources assigned to LXC are considered baseline. Please adjust to match your workload.", + "type": "info" + } + ] +} diff --git a/install/sportarr-install.sh b/install/sportarr-install.sh new file mode 100644 index 000000000..b35968ca7 --- /dev/null +++ b/install/sportarr-install.sh @@ -0,0 +1,54 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2026 community-scripts ORG +# Author: Slaviša Arežina (tremor021) +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/Sportarr/Sportarr + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os +setup_hwaccel + +msg_info "Installing Dependencies" +$STD apt install -y \ + ffmpeg \ + gosu \ + sqlite3 +msg_ok "Installed Dependencies" + +fetch_and_deploy_gh_release "sportarr" "Sportarr/Sportarr" "prebuild" "latest" "/opt/sportarr" "Sportarr-linux-x64-*.tar.gz" + +msg_info "Creating Service" +cat </opt/sportarr/.env +Sportarr__DataPath="/opt/sportarr-data/config" +ASPNETCORE_URLS="http://*:1867" +ASPNETCORE_ENVIRONMENT="Production" +DOTNET_CLI_TELEMETRY_OPTOUT=1 +DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false +LIBVA_DRIVER_NAME=iHD +EOF +cat </etc/systemd/system/sportarr.service +[Unit] +Description=Sportarr Service +After=network.target + +[Service] +EnvironmentFile=/opt/sportarr/.env +WorkingDirectory=/opt/sportarr +ExecStart=/opt/sportarr/Sportarr +Restart=always + +[Install] +WantedBy=multi-user.target +EOF +systemctl enable -q --now sportarr +msg_info "Created Service" + +motd_ssh +customize +cleanup_lxc