Skip to content

pmbootstrap zap -m: delete outdated packages too

postmarketOS Bot requested to merge feature/1241-zap-m-delete-old-pkgs-too into master

Created by: ollieparanoid

This is important for streamlining the binary repository (#970 (closed)), so we can clean old packages regularly and don't run out of space.

-m is for deleting local compiled packages, for which there is no aport with the same version. Prior to this change, this only worked for packages where no aport exists, or for packages that are newer than the aports.

That is, because we used the usual APKINDEX parsing logic, which ignores old packages in the APKINDEX and only returns the one with the highest version (that makes sense during dependency resolution).

Changes:

  • New pmb.parse.apkindex.parse_blocks() function that returns a raw list of blocks, instead of the dict with removed duplicates with lower version you get from the usual .parse() function.
  • Renamed each of the zap flags and their descriptions to make clear what they are doing now.
    short  long (old)         long (new)
    -p     --packages         --pkgs-local
    -m     --mismatch-bins    --pkgs-local-mismatch
    -o,    --old-bins         --pkgs-online-mismatch

Merge request reports