Bug 2082827

Summary: ghc9.4 provides libffi.so.8()(64bit) which breaks DNF
Product: [Fedora] Fedora Reporter: Mikolaj Izdebski <mizdebsk>
Component: ghc9.4Assignee: Jens Petersen <petersen>
Status: CLOSED RAWHIDE QA Contact:
Severity: urgent Docs Contact:
Priority: unspecified    
Version: rawhideCC: kevin, mhroncok, petersen
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ghc9.4-9.4.0.20220501-2.fc37 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-05-11 03:32:18 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mikolaj Izdebski 2022-05-07 15:52:06 UTC
Description of problem:
ghc9.4-base package provides libffi.so.8()(64bit) virtual package, so in can be installed instead of proper libffi as a dependency of many packages, including low-level system packages.
That can break the whole operating system, including DNF and other basic system utilities.

Version-Release number of selected component (if applicable):
ghc9.4-9.4.0.20220501-1.fc37

Reproducible in Koji build - they fail to load libffi.so.8
ImportError: libffi.so.8: cannot open shared object file: No such file or directory
Example: https://koji.fedoraproject.org/koji/taskinfo?taskID=86776860
Corresponding Koschei build: https://koschei.fedoraproject.org/build/12813323

Also reproducible in MBI CI: https://mbi-artifacts.s3.eu-central-1.amazonaws.com/a270f095-0c79-4775-a4c4-790178457031/result.html

Comment 1 Kevin Fenzi 2022-05-07 17:23:59 UTC
I've untagged this package for now from f37 tag.

Comment 2 Jens Petersen 2022-05-09 04:48:12 UTC
Thanks - sorry about that! :(

I will continue to work with upstream to get the support for using system libffi working again
with the newer GHC buildsystem.

Comment 3 Miro Hrončok 2022-05-09 06:12:07 UTC
In the meantime, let's filter the libffi.so.8()(64bit) provides out?

https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/

Comment 4 Jens Petersen 2022-05-11 03:31:43 UTC
Ah thanks Miro 👍 - that idea had crossed my mind too, but I didn't look into it.

Anyway this was already fixed upstream now thankfully and I backported it to ghc9.4 already.
Also I plan to backport it to ghc9.2 later, though that might be slightly harder perhaps -
anyway it is on an older different libffi soname so it is less problematic.