nwdigitalradio / n7nix

Config scripts, systemd files & other miscellaneous files
36 stars 13 forks source link

Feature (or question): Upgrade to libgmime-3.0 #11

Open patrickdickey52761 opened 1 year ago

patrickdickey52761 commented 1 year ago

I'm curious if there is a plan in place to upgrade everything to libgmime3.0, as even the latest versions of Debian (Bullseye) are removing 2.6.x from their repositories. And it's not a trivial task to re-add all of the libgmime-2.6.x dependencies back into the OS. I haven't dug into the code to know how many changes would be required, or what they are. Is there a devel branch that has the upgraded code available for testing?

Have a great day. :) Patrick.

n7nix commented 1 year ago

Patrick Dickey @.***> writes:

I'm curious if there is a plan in place to upgrade everything to libgmime3.0, as even the latest versions of Debian (Bullseye) are removing 2.6.x from their repositories.

There was an attempt last year to convert from libgmime 2.6 to 3.x but was left in an incomplete state. Any help you are willing to provide is appreciated. You can see a bunch of conditionals, GMIME_VER > 2, in a number of source files where I made a cut at trying to resolve libgmime 3.x issues.

And it's not a trivial task to re-add all of the libgmime-2.6.x dependencies back into the OS.

I recently used a new version of Ubuntu to check on an AX.25 kernel problem and used the gmime libraries from here:

wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gmime2.6/gir1.2-gmime-2.6_2.6.23+dfsg1-4_amd64.deb wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gmime2.6/libgmime-2.6-dev_2.6.23+dfsg1-4_amd64.deb wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gmime2.6/libgmime-2.6-0_2.6.23+dfsg1-4_amd64.deb

The order to install the above files is important and I don't recall if the above is the correct order. My point is that is all I had to install.

I haven't dug into the code to know how many changes would be required, or what they are. Is there a devel branch that has the upgraded code available for testing?

There are 104 calls to the gmime library in 7 files, mostly in mime2wl.c and wl2mime.c. Note that these 2 files can be tested stand alone from the paclink-unix executables, wl2ktelnet, wl2kax25, wl2kserial

I force the gmime version to 2.x in configure.ac. You can easily change that to a 3. I know that this will NOT work as more gmime coding & testing is required.

If you want to fork paclink-unix please feel free.

Have a great day. :) Patrick.