My unofficial builds can't install updates to Iode Apps

The updates in Iodé’s F-Droid repo are signed with Iodé’s keys. When I make an unofficial build, the prebuilt apks get signed either with my keys or, if I don’t supply any keys, with test keys. So any updates from the F-Droid repo cannot be installed because the signatures differ.

I discovered this when F-droid tried to install updates for microG Services Core and FakeStore, and the u=installations failed

The only way they I can see to get round this, is for all the prebuilt apks in the vendor/extra repo to be presigned with Iodé’s keys (some already are according to their Android.mk file). But I know that presigned apps in Android 13 can cause problems, because the signatures can get stripped during the deodexing stage of the build, causing the apps not to run - or even be visible - on the device.

Or Iodé could let me use their keys for signing my builds, but I can see why they might not want to do that :wink:

Any suggestions for how to proceed would be very welcome. I now have a 'daily driver` device that is only going to get updates for Iodé apps when I make a new build :frowning:

PS. I did try uninstalling the apps, rebooting, then marking them for re-installation, but it seems the re-installation takes the apps from the ROM, not from the F-Droid repo, so the problem persists.

Later:
The apps that get signed during the build are FakeStore GeometricWeather GmsCore GsfProxy Iode IodeBrowser News OpenCamera PdfViewerPlus

I was able to update F-Droid, which is specified as PRESIGNED

So I will try changing the line
LOCAL_CERTIFICATE := $(PREBUILT_CERTIFICATE)
to
LOCAL_CERTIFICATE := PRESIGNED
in the Android.mk for the affected apps, and see if that makes difference