site  contact  subhomenews

Osmo crash fixed

April 06, 2021 — BarryK

Testers of EasyOS 2.6.2 Dunfell-series have reported that Osmo personal information manager crashes when try to create a new contact:

https://forum.puppylinux.com/viewtopic.php?f=63&t=2562

As I posted in that thread, this is an old problem, that applies to all pups:

http://www.murga-linux.com/puppy/viewtopic.php?t=115567

I also posted that 'wdlkmpx' has applied some patches to the 0.2.10 version of osmo:

https://github.com/wdlkmpx/osmo

Note that we use version 0.2.10 of osmo, as that is the last that uses libhtml2 for markup. Later versions of osmo require webkitgtk, which is an enormous package.

libhtml2 is small and is used in a couple of other apps in EasyOS and the pups. One of them is Notecase, the other is Surfer (the small html file viewer used in EasyOS for viewing local help documents).

So please don't recommend that we upgrade osmo! We will keep patching it for as long as we can.

It is suggested in the Murga Forum thread linked-to above, that libxml2 version is to blame. I found that 2.8.0 is too old, a required function is missing. However, 2.9.0 works.

What I have done is build the osmo executable by linking it statically with libxml2.a from the 2.9.0 package. This results in a somewhat larger 'osmo' binary, that works in EasyOS and there is no conflict with the later version libxml2 shared libraries in Easy.

This will be in the next release of easyOS, but you can grab it now if you want:

http://distro.ibiblio.org/easyos/amd64/packages/pet/pet_packages-dunfell/osmo-0.2.10-dunfell64.pet

...you don't necessarily have to install the PET, you could just open it up and copy the 'osmo' binary to /usr/bin.

This might work in other recent pups, you will have to try it and see.

Oh, should mention: I have given with one hand and taken with the other. Accidentally left out libical support.
If someone figures out a patch to fix the crash, that would be the best solution, what I have done is just a workaround. Whatever, plan to put a fix into the OpenEmbedded recipe and rebuild, and include libical support.

EDIT 2021-04-7:
We have a fix! 'wdlkmpx' determined that it is libgtkhml2 that is causing the crash. It requires a patch for libxml2 2.9.5+. See his patches here:

https://github.com/wdlkmpx/libgtkhtml2/commits/master

I have put this patch into the recipe for libgtkhtml2 in OpenEmbedded, and will rebuild that library.  

Tags: easy