Fedora Account System
Red Hat Associate
Red Hat Customer
Description of problem: lutris from epel9 has missing dependencies, causing it to be uninstallable. Version-Release number of selected component (if applicable): lutris-0.5.10.1-1.el9 How reproducible: always Steps to Reproduce: 1. dnf install lutris Actual results: Error: Problem: conflicting requests - nothing provides python3-pillow needed by lutris-0.5.10.1-1.el9.x86_64 - nothing provides python3-evdev needed by lutris-0.5.10.1-1.el9.x86_64 - nothing provides python3.9dist(evdev) needed by lutris-0.5.10.1-1.el9.x86_64 Expected results: successful installation
Strange. So keep in mind I'm still new at this whole maintainer thing and we only just started supporting epel9. I always do a mockbuild before I publish, and it seems to find all of the packages in Centos Stream 9+epel9: No matches found for the following disable plugin patterns: local, spacewalk, versionlock Last metadata expiration check: 0:00:07 ago on Tue Jul 5 21:35:46 2022. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: desktop-file-utils x86_64 0.26-5.el9 appstream 74 k fdupes x86_64 1:2.1.1-3.el9 epel 49 k libappstream-glib x86_64 0.7.18-4.el9 appstream 396 k python3-devel x86_64 3.9.13-2.el9 appstream 247 k python3-gobject x86_64 3.40.1-6.el9 appstream 17 k python3-setuptools noarch 53.0.0-10.el9 baseos 946 k python3-wheel noarch 1:0.36.2-7.el9 crb 84 k Installing dependencies: cairo x86_64 1.17.4-7.el9 appstream 660 k cairo-gobject x86_64 1.17.4-7.el9 appstream 19 k dejavu-sans-fonts noarch 2.37-18.el9 baseos 1.3 M emacs-filesystem noarch 1:27.1-3.el9 appstream 9.2 k expat x86_64 2.4.7-1.el9 baseos 116 k fontconfig x86_64 2.14.0-1.el9 appstream 297 k fonts-filesystem noarch 1:2.0.5-7.el9.1 baseos 10 k freetype x86_64 2.10.4-9.el9 baseos 388 k gdk-pixbuf2 x86_64 2.42.6-2.el9 appstream 493 k glib-networking x86_64 2.68.3-3.el9 baseos 186 k glib2 x86_64 2.68.4-5.el9 baseos 2.7 M gnutls x86_64 3.7.3-10.el9 baseos 925 k gobject-introspection x86_64 1.68.0-10.el9 baseos 250 k graphite2 x86_64 1.3.14-9.el9 baseos 95 k gsettings-desktop-schemas x86_64 40.0-4.el9 baseos 688 k harfbuzz x86_64 2.7.4-5.el9 baseos 625 k json-glib x86_64 1.6.6-1.el9 baseos 163 k langpacks-core-font-en noarch 3.0-16.el9 appstream 11 k libX11 x86_64 1.7.0-7.el9 appstream 647 k libX11-common noarch 1.7.0-7.el9 appstream 206 k libXau x86_64 1.0.9-8.el9 appstream 31 k libXext x86_64 1.3.4-8.el9 appstream 40 k libXrender x86_64 0.9.10-16.el9 appstream 28 k libjpeg-turbo x86_64 2.0.90-5.el9 appstream 176 k libpng x86_64 2:1.6.37-12.el9 baseos 117 k libproxy x86_64 0.4.15-35.el9 baseos 74 k libsoup x86_64 2.72.0-8.el9 appstream 405 k libstemmer x86_64 0-18.585svn.el9 appstream 83 k libxcb x86_64 1.13.1-9.el9 appstream 243 k nettle x86_64 3.7.3-2.el9 baseos 397 k pcre2-utf32 x86_64 10.40-2.el9 appstream 206 k pixman x86_64 0.40.0-5.el9 appstream 271 k pyproject-rpm-macros noarch 1.2.0-1.el9 crb 41 k python-rpm-macros noarch 3.9-52.el9 appstream 19 k python3 x86_64 3.9.13-2.el9 baseos 29 k python3-cairo x86_64 1.20.1-1.el9 appstream 93 k python3-gobject-base x86_64 3.40.1-6.el9 baseos 183 k python3-gobject-base-noarch noarch 3.40.1-6.el9 baseos 161 k python3-libs x86_64 3.9.13-2.el9 baseos 7.8 M python3-packaging noarch 20.9-5.el9 appstream 77 k python3-pip-wheel noarch 21.2.3-6.el9 baseos 1.1 M python3-pyparsing noarch 2.4.7-9.el9 baseos 150 k python3-rpm-generators noarch 12-8.el9 appstream 31 k python3-rpm-macros noarch 3.9-52.el9 appstream 16 k python3-setuptools-wheel noarch 53.0.0-10.el9 baseos 471 k shared-mime-info x86_64 2.1-4.el9 baseos 556 k xml-common noarch 0.6.3-58.el9 appstream 32 k May I ask what Distro you're installing this on? (Also keep in mind that you're 3 minor versions behind, but I haven't changed anything in the python dependencies)
> So keep in mind I'm still new at this whole maintainer thing and we only just started supporting epel9. No worries, it happens. There is a list of packages [0] we know about with missing run time deps in epel9. This is just one of the ones I was getting bugs filed for to help shrink that list. > I always do a mockbuild before I publish, and it seems to find all of the packages in Centos Stream 9+epel9: A mockbuild tells you if all the build time deps (BuildRequires) are available, but by default will succeed even if some run time deps (Requires) are missing. You can pass the `--postinstall` flag to your mock build to have it attempt to install the built packages in the same buildroot to guard against that scenario. > May I ask what Distro you're installing this on? I get the same error on rhel9 and centos9. > (Also keep in mind that you're 3 minor versions behind, but I haven't changed anything in the python dependencies) I missed that there is lutris-0.5.10.1-4.el9 available in epel-testing, but as you said it doesn't change the python deps. I do notice that installing with epel-testing enabled gives access to python3-pillow [1], so that one will be resolved when that update moves to stable. But python3-evdev is still missing. Would you mind filing the package request [2] for python-evdev to get that into epel9? [0] https://tdawson.fedorapeople.org/epel/willit/epel9/status-wont-install.html [1] https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-d7d3d24295 [2] https://docs.fedoraproject.org/en-US/epel/epel-package-request/
I'm going to do some tests with a vm in the following days (or with the --postinstall flag), but lutris requires python > 3.7 (I believe fedora uses 3.10 from memory), I wonder if those dependancies exist on higher versions. But yes i will surely look into this and fill a package request if needed.
I went ahead and did a epel9 package request for python-evdev (https://bugzilla.redhat.com/show_bug.cgi?id=2104491). Once that gets done and pillow gets to stable, I'll do another test and see if other steps are needed (i.e. making sure it works)
Hi Carl. The other Lutris comaintainer here. Sorry about this. We pushed an epel branch without ever testing it on our personal machines as we are only Fedora, but not RHEL/Alma/CentOS/Rocky/(more?) users haha. Our bad on that side. Looks like the dependency problem goes deeper than the two packages that we explicitly required in the spec, as when we remove both of those the python3.9dist(evdev) requirement seems to remain. My best guess is that another requirement requires that, and if I am understanding correctly, that requirement will only be satisfied when python3-evdev is satisfied, so we're stuck for the time being. I think we're gonna need to remove lutris from epel until python3-evdev gets brought in. Thanks again for bringing this to our attention.
Dependencies in the format of python3.9dist(evdev) are automatically added from the python metadata. That's why the dependencies in that format match the install_requires specified upstream [0]. [root@rhel9-container:~]# repoquery -q --requires lutris | grep python3.9dist python3.9dist(distro) python3.9dist(evdev) python3.9dist(lxml) python3.9dist(pygobject) python3.9dist(pyyaml) python3.9dist(requests) You should still remove those dependencies from the spec file, because the Python guidelines state that dependencies covered by the generators should not be duplicated in the spec file [1]. It's probably fine to leave lutris in EPEL until bug 2104491 is resolved. Even if the maintainer doesn't respond, we have a process [2] to get Steve added as a co-maintainer in about 3 weeks. [0] https://github.com/lutris/lutris/blob/v0.5.10/setup.py#L55-L62 [1] https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#Automatically-generated-dependencies [2] https://docs.fedoraproject.org/en-US/epel/epel-policy/#stalled_epel_requests
Checking back in on old bugs, it looks like this is resolved now. I can install lutris-0.5.11-1.el9 without issue.