Collaborative Working Sessions - Fedora packages

Bernhard imported a number of packages into openSUSE’s open-build-service(OBS) and used the reproducibleopensuse tools to do double-builds and verification builds and additionally compare to official Fedora binary pkgs

Fedora does not normalize build-time in rpm-headers, so no bit-reproducible replication is possible atm. Would need some rpm %macro mechanism to override the value that is separate from $SOURCE_DATE_EPOCH.

Additionally we found some more roadblocks: * Fedora uses dynamic python provides that ended up missing in OBS and resulted in a failed build * pam did not build because xpdf xpdf-libs both provided the same symbol and OBS does not have Fedoras’s automatic resolution of using the first shortest name * python .pyc file headers varied - maybe because of additional rb-related macros used * koji only kept details from the last 2 weeks, so buildroot details for all Fedora39 packages were already expired from that cache (though are accessible in a different way) * OBS has a different logic to create Release strings (N.M vs N.fc39) * The name-epoch-version-release string gets embedded in .note.package section in all ELF files, which means it’ll directly impact reproducibility.

we tested with * 2ping * perl-Alien-Brotli * python-gemfileparser2 * pam