mirror of
https://github.com/lrnselfreliance/wrolpi.git
synced 2026-10-25 18:40:06 -04:00
Debian 12 (bookworm) cannot run the Postgres->SQLite / Debian 13 rebase, and there is no in-place 12->13 upgrade. Guard the on-device upgrade so a Debian 12 machine pins to the signed `debian12-final` tag and never advances past it, while Debian 13+ upgrades normally. ./upgrade.sh already fetched+checked out the latest release by the time scripts/upgrade.sh runs, so the guard runs first: on Debian 12 it verifies the guard commit's signature, rolls back to debian12-final, re-execs that version's script (which warns to reinstall on Debian 13 and then runs its normal upgrade so services restart). Aborts rather than run newer code if the tag is missing or unsigned. Inert on Debian 13+. Verified with a sandbox harness covering: D13 pass-through, D12-at-tag warn+proceed, D12-past-tag verify+rollback+re-exec (no loop), and missing-tag refusal. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| build_app.sh | ||
| cleanup_orphaned_tags.py | ||
| delete_downloads.py | ||
| delete_similarly_named_videos.py | ||
| dev_build.sh | ||
| find_and_convert_srt_to_vtt.py | ||
| find_and_rename_orphan_video_files.py | ||
| find_corrupt_videos.py | ||
| fix_media_permissions.sh | ||
| generate_certificates.sh | ||
| generate_subtitles.py | ||
| install_debian_12.sh | ||
| install_help_service.sh | ||
| install_protomaps.sh | ||
| install_raspberrypios.sh | ||
| renew_certificates.sh | ||
| reset_api_db.sh | ||
| reset_tags.sh | ||
| reset_virtual_environments.sh | ||
| singlefile_browser_wrapper.sh | ||
| singlefile_to_archive.py | ||
| start_kiwix_serve.sh | ||
| upgrade.sh | ||
| upgrade_yt-dlp.sh | ||
| wrolpi-usb.sh | ||