Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-48605

Fedora 40+ mock cannot bootstrap RHEL 8 chroots: nothing provides /usr/libexec/platform-python needed by python3-dnf

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Undefined Undefined
    • rhel-8.10.z
    • rhel-8.10.z
    • python3
    • None
    • python3-3.6.8-64.el8_10
    • None
    • None
    • rhel-sst-pt-python-ruby-nodejs
    • ssg_core_services
    • 5
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • All
    • None

      What were you trying to do that didn't work?

      Running `mock -r rhel-8-x86_64` (or derivates, such as `rhel+epel-8-x86_64`) on Fedora 40 fails with:

       Problem 1: conflicting requests
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.0.9.2-5.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.2.17-6.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.2.17-7.el8_2.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.2.23-4.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.2.7-6.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.2.7-7.el8_1.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.4.2-11.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.7.0-11.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.7.0-16.el8_8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.7.0-19.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.7.0-20.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.7.0-4.el8.noarch from build
      DEBUG util.py:461:    - nothing provides /usr/libexec/platform-python needed by python3-dnf-4.7.0-8.el8.noarch from build
      

      This is due to https://fedoraproject.org/wiki/Changes/DNFConditionalFilelists

      mock uses bootstrap chroots to avoid such problems, but when constructing the bootstrap chroot itself, it already hits it: python3-dnf has a path-based dependency that dnf on f40+ cannot understand.

      A solution is to add manual `Provides: /usr/libexec/platform-python` to platform-python.

      Please provide the package NVR for which bug is seen: 3.6.8-62.el8_10

      How reproducible: always

      Steps to reproduce

      1. On Fedora 40 or newer
      2. Insatll mock
      3. (if you ever run mock before the system was updated to F40) mock -r rhel+epel-8-x86_64 --scurb=all
      4. mock -r rhel+epel-8-x86_64 --bootstrap-chroot --no-bootstrap-image init

      Expected results

      ...
      Finish: run

      Actual results

      ... nothing provides /usr/libexec/platform-python needed by python3-dnf-...

              python-maint python-maint
              mhroncok@redhat.com Miro HronĨok
              python-maint python-maint
              Lukas Zachar Lukas Zachar
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: