I’m running the Gramps 6.0.0 deb package on Linux Mint 22.1 with Cinnamon version 6.4.8. I’ve been testing out the WikiTree integration gramplet, which requires WebKit2 for full functionality. According to the Prerequisites listing for a different addon (HTMLView), WebKit is not installed. This is the result I get when I run apt list *webkit*
:
I’m well aware that sometimes packages look like they should meet a particular dependency based on their names, but they don’t. But I can’t figure out what I could be missing. I started building WebKit from source, and this quickly turned into playing whack-a-mole with missing dependencies, most of which turned out to be deb packages with almost the exact same names as packages that were already installed, just with “dev” tacked on to the end. And I started thinking, “This is way too much software to download just to get a gramplet to work. Surely there must be a simpler way.” So is there?
The HTMLView is very old and requires WebKit 3.0 which is not available in your distribution.
Good to know! Luckily, the WikiTree gramplet uses 4.0, and I did manage to get it working on my virtual machine.
On further investigation, the issue is definitely a missing Python module. I just can’t figure out which of the many Python deb packages, if any, has the WebKit2 module.
EDIT: Specifically, this is the import statement that’s failing:
gi.require_version('WebKit2', '4.0')
from gi.repository import WebKit2
The gir1.2-webkit2-4.1
package will give you WebKit2 4.1, you don’t have a package for 4.0.
Thank you, that does work!
I’ve forked the WikiTree gramplet and am trying to maintain it. Is there a way to write that require_version statement so that it will accept either 4.0 or 4.1?
In the plugin registration file you can set the requires_gi
option to [('WebKit2', '4.0, 4.1')]
.
1 Like
Okay, I may have spoken too soon when I said it “worked”–it imported just fine, but when I pushed the button that lets you view someone’s WikiTree bio, Gramps crashed and I got this error:
(gramps:93112): libsoup-ERROR **: 20:45:01.430: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
Trace/breakpoint trap (core dumped)
This happened both on my host system, and on my virtual machine (MX Linux 23) when I switched from the gramps51
maintenance branch to the gramps60
maintenance branch. WebKit2-4.1 seems to depend on libsoup3; what other part of the codebase might be using libsoup2?
This is why you can’t have geography views and webkit at the same time.
1 Like