How get GeocodeGlib 1.0?

Gramps 5.2.2
Linux MInt LMDE 6

The “GeocodeGlib 1.0” package is required to install the “Location and Coordinates” Gramplets. However, “Gir1.2-GeocodeGlib 2.0” is already installed. Gramps does not seem to be satisfied with this. How can I install the required package?
I found an older article by @ennoborg on the same topic. I also found this article, which describes an import via Python console. However, this has not yet worked for me:

> import gi
> gi.require_version('GeocodeGlib', '1.0')
Traceback (most recent call last):
  File "/home/rainer/.gramps/gramps52/plugins/PythonGramplet/PythonGramplet.py", line 105, in process_command
    exec(exp, self.env)
  File "<string>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 126, in require_version
    raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace GeocodeGlib not available

> from gi.repository import GeocodeGlib
Traceback (most recent call last):
  File "/home/rainer/.gramps/gramps52/plugins/PythonGramplet/PythonGramplet.py", line 105, in process_command
    exec(exp, self.env)
  File "<string>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/gi/importer.py", line 136, in load_module
    raise ImportError('cannot import name %s, '
ImportError: cannot import name GeocodeGlib, introspection typelib not found

It looked like the key posting was about hacking 2 lines to make the add-on accept for the already installed 2.0 version. That’s better rather than trying to install an outdated version to satisfy the requirement.

1 Like

I found the Gramplet in ~/.gramps/gramps52/plugins now. It seems to be installed already. There I changed the lines (where the file PlaceCoordinateGramplet.gpr.py has only 54 lines, so it was line 53…).

Now I have to find out how it works and make it more easy to find coordinates of a location…

Update:
I followed the instructions on Gramplet page.
I added the Gramplet on bottom of the places list, entered a place that hasn’t coordinates yet and press “Go”.
Immediately Gramps crashed. After restart the Gramplet is removed from where I put it.

Is this another Gramplet than the one that Nick mentioned? He wrote about a fix in 5.2, and you are using that version.

Also, do you see any message when it crashes? Can you start Gramps from the terminal to check? You can do that by typing gramps in lower case there.

This looks a bit weird, because the wiki says that the crash is caused by an old lib, and LMDE 6 is based on a newer Debian version than the regular Mint 21 that I use.

Starting Gramps via terminal and using the gramplet gives this output:

(gramps:4337): libsoup-ERROR **: 15:13:46.905: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
Trace/Breakpoint ausgelöst (Speicherabzug geschrieben)

I read in this thread that you gave up using lmde 6 because of this and other issues.

Geocode dependency issue is being tracked with bug 13255. It could be moved along if we can get help testing and validating upstream changes.

That’s right. I liked LMDE 3 and 5, because they were a bit faster than the regular Mint, and I also appreciate simplicity, in the sense of LMDE based on Debian, and not Debian and Ubuntu.

This changed with LMDE 6, because of these library issues, and building Gramps 5.1 turned into a hassle, and also because it pushed a new version of Wine, which broke RootsMagic. I use that in Wine to exchange data with FamilySearch, and sometimes Ancestry too.

I just tested the Gramplet in 5.1.7, running in Mint 21.3, and saw no crashes there.

You know of my failings to establish Grampsweb synchronization. Is it possible that it is failing only when using LMDE 6? Just a question.

@codefarmer What you mean by

we can get help testing and validating upstream changes.

Can I help? How?

Thanks for asking! Since I wasn’t directly involved in the discussions, it’s better to first check with @Nick-Hall to understand what the next steps are.

Nick, this comment on GitHub indicated that testing was required, but that may have been for the unmerged osm-gps-map PRs 92/95/97?

PR 99 (port to libsoup3) has been merged in 2023 and requires a new release, which the maintainer was willing to create. The last release and tag on github is 1.2.0 from 2021, but the NEWS file mentions 1.2.1 with the changes we need so I’m not clear on whether the changes we need are already available. Do we need to make a formal request to create a new release?

Yes, it is, because LMDE 6 has other versions of lots of packages than Mint and Ubuntu. And if the Grampsweb developers used either, they’ve never been aware of problems on other platforms, except when vocal users ran into such things.

This often means that if you use more ‘exotic’ Linuxes like the latest Debian (including LMDE 6) or Fedora, you need to be prepared to dig into log files, or even stack dumps and source code, because you’re on new terrain.

The changes we need are ready, but they need testing. This is where we can help. Perhaps someone who uses the geography views would test the new version and report back as suggested. Then we are more likely to get a new release.

At some point we will also need people to test the Gtk4 version.

I offer to take part as tester.
Beside the geocodeGlib /libsoup 2/3 issue I’m still struggling with Grampweb sync via docker-compose. Could that also be an issue related to my LMDE 6 OS?

Not likely, because when a port is in use, it means that the start of the listening process was successful.

I’m trying to wrap my head around how to achieve this. Testing on Windows would be harder (but not impossible) because we would need a MSYS2 package of osm-gps-map for the AIO build, but testing on Linux might be a bit easier if we have a package which can be installed.

Fetching osm-gps-map source, building it and running the examples is reasonably straightforward (I built it on Ubuntu on Windows WSL) but how to create a package that a Gramps user on Linux could install and test? Are there scripts that Linux distros use to create their own packages that we could leverage?

[Update]
Interestingly, it looks like Ubuntu Noble repository for osm-gps-map seems to include the patch for libsoup3. However the latest package 1.2.0-2build2 doesn’t include that change.

The problem with the port no longer exists. Now there are error messages regarding GTK3 not being imported, which is why there is apparently no login wizard that requires a gtk window.

I don’t see that, only a warning, and that’s not fatal.

As you wrote in this thread, there is a remedy with use of another addon.