Lutris 0.5.12 requires gir1.2-webkit2-4.1, however, I am unable to locate that library on Debian, Ubuntu, or Linux mint sites. The Debian site makes reference to this library, yet there is no download.
When using apt-get to install this library, I am greeted by this error:
E: Package ‘gir1.2-webkit2-4.1’ has no installation candidate
Any suggestions?
What you probably need to install in your distro or at least search for packages for, is webkit2gtk (or webkitgtk as the project is actually named: https://webkitgtk.org)
These distros that split out all these little micropackages just make things hard. That would come as a dependency, or as part of a package group if so.
That will have a metric shit tonne of dependencies, itself, webkit2gtk.
What I see is that you are installing a .deb package from some source (lutris releases?) other than your distributor’s packages. That’s of course fine if you can satisfy that dependency. If you can’t (that’s a pretty version specific package dependency you’ve got there) you could consider trying a non-deb source for the latest Lutris, until there’s an updated distro package for you. It will not have such a package specific dependency (as long as you have an appropriate version of that already)
I mean, you could try downloading the tarball and unpacking it and running it in place. From here:
Scroll down to Tarball
P.S. I mean, leave your currently installed Lutris package installed, and run lutris in place from the extracted tarball. (So we’re clear)
Thanks for the reply. I’m running Linux Mint 20.3 which reports that my current version of webkit is newer. Lutris is running fine, I am just getting nags from Webmin about a failed update.
It is all good, the games I want to run are working just fine, I’ll ignore the nag and wait till next update.
Thanks for the reply. Evidently you are correct about the piecemeal selection of driver bits. Apt-get tells me that a newer version of Webkit is installed! Do`Oh Having been down this rabbit hole of downgrading/changing drivers before. It always turns into a can of worms, with me swearing a lot. LoL Eventually something breaks and I just end up doing a clean install starting with gparted. LoL
For right now it is just a nag from Webmin to update Lutris. However, I am not experiencing any of the issues the update fixes, so I’ll just keep buggering on until the next update.
sudo apt-get --only-upgrade install lutris
Reading package lists… Done
Building dependency tree
Reading state information… Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
lutris : Depends: gir1.2-webkit2-4.1 but it is not installable
E: Unable to correct problems, you have held broken packages.
sudo apt-get install gir1.2-webkit2-4.0
Reading package lists… Done
Building dependency tree
Reading state information… Done
gir1.2-webkit2-4.0 is already the newest version (2.38.2-0ubuntu0.20.04.1).
The following packages were automatically installed and are no longer required:
dh-python libaom0:i386 libavutil56:i386 libcairo-gobject2:i386 libcodec2-0.7 libcodec2-0.9:i386 libcroco3:i386
libfwupdplugin1 libgomp1:i386 libicu60:i386 libjte1 liblinear3 libmicrodns0 libmp3lame0:i386 libnuma1:i386
libopenjp2-7:i386 libpostproc54 librsvg2-2:i386 libshine3:i386 libsnappy1v5:i386 libsoxr0:i386 libspeex1:i386
libswresample3:i386 libtwolame0:i386 libva-drm2:i386 libva-x11-2:i386 libva2:i386 libvdpau1:i386 libvpx6:i386
libwavpack1:i386 libwebpmux3:i386 libx264-155:i386 libx265-179:i386 libxcb-render0-dev:i386 libxcb-sync-dev
libxmlb1 libxvidcore4:i386 libzvbi0:i386 mesa-vdpau-drivers:i386 mono-jay vdpau-driver-all:i386
Use ‘sudo apt autoremove’ to remove them.
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
I’m just going to come right out and say it, that’s a BLOODY STUPID package dependency. It’s dependent on a specific deb package revision. You have the same version of webkit2gtk (webkit2gtk 2.38.2) which is what most distros are shipping right now.
There do seem to be additional typelibs for gir (“gobject introspection”) in those packages though, but I know damned well that Lutris runs with the 4.0 javascript core.
What you likely have is a deb rolled up on Ubuntu 20.10 or Debian Sid or something.
Packaging this is smoke and mirrors. None of it needs to be compiled into objects, it basically installs to a package root, using the meson build system (nowadays… rather than setup.py). There are important things like the python site-packages directory to get right though (e.g. /usr/lib/python3.10)
If you just leave your existing lutris package installed (and all its dependencies), and download this tarball:
I had experienced the following when attempting to launch Lutris 0.5.12:
$ lutris
Traceback (most recent call last):
File "/usr/bin/lutris", line 52, in <module>
from lutris.gui.application import Application # pylint: disable=no-name-in-module
File "/usr/lib/python3.10/site-packages/lutris/gui/application.py", line 36, in <module>
from lutris.api import parse_installer_url, get_runners
File "/usr/lib/python3.10/site-packages/lutris/api.py", line 14, in <module>
from lutris.util import http, system
File "/usr/lib/python3.10/site-packages/lutris/util/http.py", line 11, in <module>
import certifi
ModuleNotFoundError: No module named 'certifi'
I read a similar thread where Lutris was failing to start, and that led me to find the python-certifi should also be installed.
$ sudo pacman -S python-certifi
This resolved the problem, hopefully this might also help someone experiencing the same problem.
Thanks hiphile, that solved my issue too, been trying to figure this one out when i saw your post. My issue started with the 0.5.12 update on EndeavourOS/Arch (replacing 0.5.11).
Exactly what would the terminal commands look like. I have the tarball downloaded and extracted. I opened the terminal in the bin directory. How would I run the file?
If you are already in the bin directory you could simply type ./lutris
Your shell doesn’t automatically override directories in your PATH simply because a file with executable permissions exists in the current working directory. To execute a file outside of the bin directories in your path, you have to specify the location.
If that location happens to be the current directory, then ./ means precisely that