Cleanup repo + harden offline install and watchdog

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
This commit is contained in:
SKE087
2026-10-14 23:29:14 +03:00
parent f7b889be11
commit 31807f37bf
60 changed files with 633 additions and 1469 deletions
+10 -8
View File
@@ -13,21 +13,23 @@ The installer script (`install.sh`) will automatically use this repo folder if a
### To populate this folder for offline installation:
Run the download script from the project root:
Run the download scripts from the project root:
```bash
bash download_offline_packages.sh
bash scripts/download_offline_packages.sh
bash scripts/download_deb_packages.sh
```
This will download all necessary Python wheels and document system packages.
This will download all necessary Python wheels and system .deb packages.
## Contents
### Python Packages
- kivy==2.1.0
- requests==2.32.4
### Python Packages (see requirements.txt for the source of truth)
- kivy==2.3.1
- requests==2.34.2
- bcrypt==4.2.1
- aiohttp==3.9.1
- asyncio==3.4.3
- aiohttp==3.11.16
- ffpyplayer==4.5.3
- evdev==1.9.1
- All dependencies
### System Packages (APT)