RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1915764 - There are file conflicts in python3-gobject-base multilib packages
Summary: There are file conflicts in python3-gobject-base multilib packages
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: pygobject3
Version: 9.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: alpha
: 9.0
Assignee: Tomas Popela
QA Contact: Tomas Pelka
URL:
Whiteboard:
Depends On: 2051483
Blocks: 1898842
TreeView+ depends on / blocked
 
Reported: 2021-01-13 12:05 UTC by Petr Zatko
Modified: 2022-11-15 13:14 UTC (History)
7 users (show)

Fixed In Version: pygobject3-3.40.1-6.el9
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-11-15 11:20:11 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2022:8352 0 None None None 2022-11-15 11:20:12 UTC

Description Petr Zatko 2021-01-13 12:05:59 UTC
Description of problem:
Usually it is expected that all multilib packages are installable on a system with their non-multilib counterparts.

python3-gobject-base i686 and x86_64 packages contain file conflicts and hence cannot be both installed on a system.

python3-gobject-base-3.38.0-2.el9.1.i686.rpm python3-gobject-base-3.38.0-2.el9.1.x86_64.rpm
warning: /root/tmp.TDRrtuKWTa/rpms/python3-gobject-base-3.38.0-2.el9.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
	file /usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc conflicts between attempted installs of python3-gobject-base-3.38.0-2.el9.1.i686 and python3-gobject-base-3.38.0-2.el9.1.x86_64
	file /usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc conflicts between attempted installs of python3-gobject-base-3.38.0-2.el9.1.i686 and python3-gobject-base-3.38.0-2.el9.1.x86_64


Version-Release number of selected component (if applicable):
RHEL-9.0.0-20210111.3
python3-gobject-base-3.38.0-2.el9.1

How reproducible:
always

Steps to Reproduce:
1. Install both x86_64 and i686 variants of the package at the same time.

Comment 1 Tomas Popela 2021-02-09 13:31:53 UTC
Petr, can you please retest this bug?

Comment 2 Petr Zatko 2021-02-10 07:21:10 UTC
Hi, retested with RHEL-9.0.0-20210208.6.Alpha with the file conflict still present:

python3-gobject-base-3.38.0-3.el9.i686.rpm python3-gobject-base-3.38.0-3.el9.x86_64.rpm
warning: /root/tmp.qrj0bdvbMV/rpms/python3-gobject-base-3.38.0-3.el9.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
	file /usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc conflicts between attempted installs of python3-gobject-base-3.38.0-3.el9.i686 and python3-gobject-base-3.38.0-3.el9.x86_64
	file /usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc conflicts between attempted installs of python3-gobject-base-3.38.0-3.el9.i686 and python3-gobject-base-3.38.0-3.el9.x86_64

Comment 3 Petr Zatko 2021-02-10 13:56:12 UTC
Tomas, adding diffs of the files, hope it helps.

╰─> diff i686/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc x86_64/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc 
Binary files i686/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc and x86_64/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc differ

╰─> diff i686.GLib.cpython-39.pyc.hex x86_64.GLib.cpython-39.pyc.hex 
510c510
< 00001fd0: 0029 0272 6400 0000 fa01 7bfa 0129 fa01  .).rd.....{..)..
---
> 00001fd0: 0029 0272 6400 0000 da01 7bfa 0129 da01  .).rd.....{..)..


╰─> diff i686/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc x86_64/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc
Binary files i686/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc and x86_64/usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc differ

╰─> diff i686.GLib.cpython-39.opt-1.pyc.hex x86_64.GLib.cpython-39.opt-1.pyc.hex                                                                          1 ↵
510c510
< 00001fd0: 0029 0272 6400 0000 fa01 7bfa 0129 fa01  .).rd.....{..)..
---
> 00001fd0: 0029 0272 6400 0000 da01 7bfa 0129 da01  .).rd.....{..)..

Comment 4 Petr Viktorin (pviktori) 2021-02-11 12:14:31 UTC
Lumír, marshalparser should fix this, right? What's the best way to run it in Fedora right now?

Comment 5 Lumír Balhar 2021-02-11 13:47:29 UTC
Yes, marshalparser should fix it. You can use it like this:
- define %py_reproducible_pyc_path as a path you want .pyc files to be fixed in
- BuildRequire: /usr/bin/marshalparser

And the redhat-rpm-config/brp-fix-pyc-reproducibility script should fix the pyc files and remove the differences.

Let me know if I can help you more.

Comment 6 Petr Zatko 2021-06-14 11:48:14 UTC
Hi, it seems that this issue is no longer present in the compose since our test did not detect it during RHEL-9.0.0-20210613.4 testing.

Comment 7 Tomas Popela 2021-06-14 12:26:38 UTC
(In reply to Petr Zatko from comment #6)
> Hi, it seems that this issue is no longer present in the compose since our
> test did not detect it during RHEL-9.0.0-20210613.4 testing.

Oh, nice. Thank you Petr for the heads-up! Let me close the bug and we can reopen it if you will see it again.

Comment 8 Petr Zatko 2021-12-13 12:47:44 UTC
Tome, we have hit the issue with python3-gobject-base again:

Version-Release number of selected component (if applicable):
RHEL-9.0.0-20211211.3
python3-gobject-base-3.40.1-5.el9.i686
python3-gobject-base-3.40.1-5.el9.x86_64
	
Actual results:
python3-gobject-base-3.40.1-5.el9.i686.rpm python3-gobject-base-3.40.1-5.el9.x86_64.rpm
warning: /root/tmp.wW0M9zGnl5/rpms/python3-gobject-base-3.40.1-5.el9.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
	file /usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.opt-1.pyc conflicts between attempted installs of python3-gobject-base-3.40.1-5.el9.i686 and python3-gobject-base-3.40.1-5.el9.x86_64
	file /usr/lib/python3.9/site-packages/gi/overrides/__pycache__/GLib.cpython-39.pyc conflicts between attempted installs of python3-gobject-base-3.40.1-5.el9.i686 and python3-gobject-base-3.40.1-5.el9.x86_64

Comment 10 Tomas Popela 2022-02-04 09:03:57 UTC
(In reply to Lumír Balhar from comment #5)
> Yes, marshalparser should fix it. You can use it like this:
> - define %py_reproducible_pyc_path as a path you want .pyc files to be fixed
> in
> - BuildRequire: /usr/bin/marshalparser
> 
> And the redhat-rpm-config/brp-fix-pyc-reproducibility script should fix the
> pyc files and remove the differences.
> 
> Let me know if I can help you more.

Is this supposed to work Lumir? Even with CRB and BUILDROOT enabled on current RHEL 9:

[test@ibm-p8-kvm-03-guest-02 ~]$ sudo dnf install /usr/bin/marshalparser
No match for argument: /usr/bin/marshalparser
Error: Unable to find a match: /usr/bin/marshalparser

Comment 11 Lumír Balhar 2022-02-04 17:14:40 UTC
Marshalparser is not included in Centos stream 9 / RHEL 9 because, at the time of package selection, nothing depended on it. We had plenty of time to add the package there but this bug has been closed without the proper solution proposed in comment#5. The byte-compilation process isn't deterministic which is probably the reason why the problem disappeared itself.

We have to investigate the possibilities to add the package to RHEL 9. Not sure if this is possible to accomplish for 9.0.

Comment 12 Miro Hrončok 2022-02-04 17:58:12 UTC
As a temporary solution, it might be possible to bundle marshalparser as an additional source of the package, however, brp-fix-pyc-reproducibility has the path hardcoded, so you would need to modify that script during build time. Something like:


cp %{_rpmconfigdir}/redhat/brp-fix-pyc-reproducibility .
sed -i s|/usr/bin/marshalparser/|$PWD/marshalparser_local|' brp-fix-pyc-reproducibility
%global __brp_fix_pyc_reproducibility %{_builddir}/%{buildsubdir}/brp-fix-pyc-reproducibility


It goes without saying that this is utterly untested. And horrible.

Comment 13 Tomas Popela 2022-02-07 07:15:59 UTC
Thank you Lumir and Miro! Let's rather leave it as it is (aka broken) until some official way of fixing it will be implemented. I don't think that we have to fix this for 9.0.0.

Comment 14 Miro Hrončok 2022-02-07 11:54:43 UTC
Fedora fix: https://src.fedoraproject.org/rpms/pygobject3/pull-request/4

Comment 15 Miro Hrončok 2022-03-30 11:46:08 UTC
(In reply to Miro Hrončok from comment #14)
> Fedora fix: https://src.fedoraproject.org/rpms/pygobject3/pull-request/4

The Fedora maintainers seem to have missed my PR completely. CCing them here.

Comment 17 Lumír Balhar 2022-05-14 07:35:46 UTC
Marshalparser should be available in RHEL 9 soon, see https://bugzilla.redhat.com/show_bug.cgi?id=2051483 and https://errata.devel.redhat.com/advisory/94662

Comment 18 RHEL Program Management 2022-06-13 07:27:38 UTC
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release.  Therefore, it is being closed.  If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.

Comment 25 errata-xmlrpc 2022-11-15 11:20:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (pygobject3 bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2022:8352


Note You need to log in before you can comment on or make changes to this bug.