Commit Graph
3 Commits
Author SHA1 Message Date
c-ludenberg 0be160ebb9 hal: fix load_sync_dbs zstd crash on live ISO
load_sync_dbs() always tried zstd decompression, but pacman stores
.db files in varying formats (gzip, zstd, or decompressed). Now
detects format by magic bytes:
  - \x28\xb5\x2f\xfd → zstd decompression
  - \x1f\x8b → gzip decompression
  - anything else → raw tar (already decompressed by hal sync)

Also bumped pkgrel 2→3 to trigger rebuild.
2026-06-23 15:14:55 +02:00
c-ludenberg 79054efa85 hal: implement native --self upgrade with full backup handling
- Native upgrade: compare installed vs sync, resolve new deps,
  pre/post_upgrade scriptlets, .pacnew preservation
- .pacsave handling on native remove for modified config files
- Fix pre-existing syntax errors in info display (parenthesis mismatch)
- Bump pkgver to 0.2.0, pkgrel to 2
2026-06-23 01:35:58 +02:00
c-ludenberg a9feb21e44 feat: add hal package manager — HAL 9000 themed dual-mode (wrapper + native)
hal is Antergos NeXT package manager with two modes:
  hal install <pkg>      — wrapper mode (delegates to pacman)
  hal --self install <pkg> — native mode (standalone, no pacman dep)

Native mode implements:
- Sync DB download and parsing (pacman-compatible)
- Recursive dependency resolution
- .pkg.tar.zst extraction via bsdtar
- .INSTALL scriptlet execution (post_install, post_remove)
- Local DB management (pacman-compatible /var/lib/pacman/local/)
- Package info, file listing, search
- Cache management

Full HAL 9000 personality with quotes for errors, warnings, success.
I am putting myself to the fullest possible use.
2026-06-23 01:29:26 +02:00