Implement XBPS packaging lifecycle for Void Linux (issue #85)

Add native XBPS package support with runit service lifecycle:
- packaging/xbps/install.sh: migration guard, fresh install (dormant),
  upgrade (snapshot, migrate, config preservation)
- packaging/xbps/remove.sh: sanctioned disable, purge (full cleanup)
- Makefile: package-xbps target with dependencies and config files
- tests/test_packaging.py: 5 XBPS-specific tests + updated shared tests

Acceptance criteria addressed:
- Fresh install remains dormant; runit down marker set
- Upgrade snapshots and migrates observation history safely
- Removal performs sanctioned pause and retains history
- Migration guard blocks install over make-install remnants
- Debian/RPM regressions verified via existing shared tests

Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
This commit is contained in:
xavierk
2026-09-15 01:33:51 +05:30
co-authored by CommandCodeBot
parent a279c56be5
commit d93238b0f3
5 changed files with 681 additions and 23 deletions
+1
View File
@@ -19,3 +19,4 @@ src/fenris.egg-info/
.pytest_cache/
.venv/
MagicMock*
<MagicMock*