Skip to content

main/mobile-config-firefox: add pkgver to provides

Oliver Smith requested to merge ff-replace into master

Fix mobile-config-firefox not replacing postmarketos-config-firefox on upgrade. Without the pkgver in provides, apk only considers mobile-config-firefox as virtual package name, not as replacement.

Verified with the CE factory image:

$ sudo apk upgrade
...
(20/29) Purging postmarketos-config-firefox (1-r0)
(21/29) Installing mobile-config-firefox (1.0.1-r1)
...

With debug output enabled, here is the "thought process" of apk's solver.c without the patch:

select_package: postmarketos-config-firefox (requirers=1, iif=0)
  consider postmarketos-config-firefox-1-r0 iif_triggered=0, tag_ok=1, selectable=1, available=0, flags=0x1, provider_priority=0, installed=1
   prefer existing package
    choose as new provider
  consider mobile-config-firefox-1.0.1-r0 iif_triggered=0, tag_ok=1, selectable=1, available=1, flags=0x1, provider_priority=0, installed=0
    ignore: virtual package without provider_priority with >1 provider
selecting: postmarketos-config-firefox-1-r0, available: 1

With the patch:

select_package: postmarketos-config-firefox (requirers=1, iif=0)
  consider postmarketos-config-firefox-1-r0 iif_triggered=0, tag_ok=1, selectable=1, available=0, flags=0x1, provider_priority=0, installed=1
   prefer existing package
    choose as new provider
  consider mobile-config-firefox-1.0.1-r1 iif_triggered=0, tag_ok=1, selectable=1, available=1, flags=0x1, provider_priority=0, installed=0
    apk_version_compare_blob_fuzzy: a: 1.0.1, b: 1-r0
    select latest by requested name (greater)
    choose as new provider
  consider mobile-config-firefox-1.0.1-r0 iif_triggered=0, tag_ok=1, selectable=1, available=1, flags=0x1, provider_priority=0, installed=0
    ignore: virtual package without provider_priority with >1 provider
selecting: mobile-config-firefox-1.0.1-r1, available: 1

Trivial, but important fix. Merging, as soon as CI passes.

Merge request reports