31807f37bf
Repo hygiene: - Remove dead scripts (.wait-for-display, .display-keepalive, .keep-screen-alive) - Remove stale backup/scratch (install.sh.bak, New.txt, stale .pyc) - Stop tracking machine-specific/generated state (config/app_config.json, playlists/server_playlist.json, src/player_auth.json, generated launchers) - Prune duplicate wheel versions (one per package) - Reorganize working_files -> dev/, dev/tests/, documentation/dev-notes/, scripts/ - Extend .gitignore; fix no-op rules in repo/.gitignore Offline install (install.sh): - Non-fatal system-dep step; per-package apt retry; .deb bundle install - Skip pip self-upgrade offline; guard online fallbacks behind connectivity probe - Dependency-free fetch_url (curl/wget/urllib); --no-reboot flag - Fix corrupted literal backslash-bang escapes (shebangs, test -f, banner) - Idempotent cron install (no more stacked @reboot lines) Autostart / watchdog: - start.sh: single-instance flock lock (.player_watchdog.lock) acquired only after a display is confirmed, preventing parallel watchdogs - Set XDG_RUNTIME_DIR when missing; exit early if headless - run_player.sh: activate .venv; stop_player.sh: clear lock file
16 lines
525 B
Bash
16 lines
525 B
Bash
#!/bin/bash
|
|
|
|
# Run Kivy Signage Player once (no watchdog / auto-restart)
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
|
|
# Activate the virtual environment created by install.sh (holds Kivy + deps).
|
|
if [ -f "$SCRIPT_DIR/.venv/bin/activate" ]; then
|
|
# shellcheck disable=SC1091
|
|
source "$SCRIPT_DIR/.venv/bin/activate"
|
|
else
|
|
echo "WARNING: virtual environment not found at $SCRIPT_DIR/.venv"
|
|
echo " Run 'bash install.sh' first for a fully offline-capable setup."
|
|
fi
|
|
|
|
cd "$SCRIPT_DIR/src"
|
|
exec python3 main.py |