mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-07-28 16:52:55 +02:00
03edfcef85
* fix(bazarr): store data in /var/lib/bazarr instead of inside /opt/bazarr The installer creates /var/lib/bazarr and update_script() uses it as the "is Bazarr installed" guard, but nothing pointed Bazarr at it. Bazarr defaults its data directory to <install dir>/data, resolved from its own source file rather than WorkingDirectory, so a stock container kept config/ db/ backup/ cache/ log/ restore/ in /opt/bazarr/data - the directory fetch_and_deploy_gh_release redeploys over - while /var/lib/bazarr stayed empty. Pass -c /var/lib/bazarr in the unit, matching the -data= flag the other *arr scripts use. bazarr.py re-execs its child with sys.argv[1:], so the flag survives the restart Bazarr performs while loading its config. update_script() gains a one-time migration for existing installs. It runs outside the release check so containers already on the latest version are migrated too, is skipped when the unit already names a data directory, refuses (before stopping the service) when both locations hold data, and copies before removing so a failed migration leaves the original database in place. Fixes #16097 * fix(bazarr): drop explanatory comments per review
53 lines
1.3 KiB
Bash
Executable File
53 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Copyright (c) 2021-2026 tteck
|
|
# Author: tteck (tteckster)
|
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
|
# Source: https://www.bazarr.media/ | Github: https://github.com/morpheus65535/bazarr
|
|
|
|
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
|
color
|
|
verb_ip6
|
|
catch_errors
|
|
setting_up_container
|
|
network_check
|
|
update_os
|
|
|
|
PYTHON_VERSION="3.12" setup_uv
|
|
fetch_and_deploy_gh_release "bazarr" "morpheus65535/bazarr" "prebuild" "latest" "/opt/bazarr" "bazarr.zip"
|
|
|
|
msg_info "Installing Bazarr"
|
|
mkdir -p /var/lib/bazarr/
|
|
chmod 775 /opt/bazarr /var/lib/bazarr/
|
|
sed -i.bak 's/--only-binary=Pillow//g' /opt/bazarr/requirements.txt
|
|
$STD uv venv --clear /opt/bazarr/venv --python 3.12
|
|
$STD uv pip install -r /opt/bazarr/requirements.txt --python /opt/bazarr/venv/bin/python3
|
|
msg_ok "Installed Bazarr"
|
|
|
|
msg_info "Creating Service"
|
|
cat <<EOF >/etc/systemd/system/bazarr.service
|
|
[Unit]
|
|
Description=Bazarr Daemon
|
|
After=syslog.target network.target
|
|
|
|
[Service]
|
|
WorkingDirectory=/opt/bazarr/
|
|
UMask=0002
|
|
Restart=on-failure
|
|
RestartSec=5
|
|
Type=simple
|
|
ExecStart=/opt/bazarr/venv/bin/python3 /opt/bazarr/bazarr.py -c /var/lib/bazarr
|
|
KillSignal=SIGINT
|
|
TimeoutStopSec=20
|
|
SyslogIdentifier=bazarr
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
EOF
|
|
systemctl enable -q --now bazarr
|
|
msg_ok "Created Service"
|
|
|
|
motd_ssh
|
|
customize
|
|
cleanup_lxc
|