bdbcat / o-charts_pi

GNU General Public License v2.0
7 stars 11 forks source link

No way to build a rpm package for o-charts_pi #26

Closed filochard closed 2 years ago

filochard commented 2 years ago

Hi David I've been a rpm packager for opencpn and its plugins for some years I'm still using opencpn 5.24 because I waited for opencpn 5.6.2 to be published before packaging it I know that you are promoting the Plugin Manager which is a real improvement

But for other distributions than debian or ubuntu the only way to use opencpn and its Plugin Manager is to work inside the flatpak sandbox (which is heavy : I have been testing it for 8 months and I had to download 2 Go of updates for flatpak itself ! to cooperate with Rick Gleason)

My rpm install was more safe than flatpak and I am still using it until the issues inside flatpak are closed

Two problems appeared since o-chats_pi replaces and obsoletes oernc_pi and oesenc_pi opencpn 5.2.4 can't use anymore the charts paid from o-charts.org and complains it needs o-charts_pi... that's not very user friendly !

and worse : I couldn't build a package for o-chats_pi neither for opencpn 5.2.4 nor for opencpn 5.6.2 since you emptied the PluginPackage.cmake (besides all the others that's the only plugin for which I can't build a rpm package anymore, When I could still build packages for oernc_pi and oesenc_pi.)

You allow to build packages of o-charts_pi for Windows, MacOS and Debian or Ubuntu but not anymore for rpm based distro (Fedora, RedHat, OpenSuse, Mageia, OpenMandriva, PCLinuxOS...) that could use the rpms I build

Nevertheless I tried to use a workaround : I built a tarball (cmake make tarball) and cherry picked in the app directory the binary, the libraries and the data needed and built a rpm with them But, the o-charts_pi installed this way induces a segfault inside opencpn 5.6.2 ...

bdbcat commented 2 years ago

Do you have more info on the segfault?

filochard commented 2 years ago

Hi David Sorry to be late to answer (I have a very old mother in an hospital far from my home and i am very often far from the computer I use to build rpms...)

Since I can't build a normal classical package for o-charts_pi I can't build a debug package for o-charts_pi here is the spec file I had to use : opencpn-o-charts-plugin.spec.txt

Nevertheless I can use the debug package for opencpn (built besides the classical rpm package for opencpn 5.6.2) NB I built all the packages with wxgtk3.0 I have no problem with the other plugins...

NB the only plugin that I activate for testing o-charts_pi is o-charts_pi itself

The segfault appears when I click the button to actualize the charts list here's the message from gdb : Thread 1 "opencpn" received signal SIGSEGV, Segmentation fault. 0x00007fffcb157502 in getChartList(bool) () from /usr/lib64/opencpn/libo-charts_pi.so

Unfortunately I can't have any other info to give to you

Maybe the problem comes from the fact that the lib built for the tarball (that I cherry picked) doesn't use the same paths as oesenc_pi in a classical install on linux

filochard commented 2 years ago

Hi again I'm really stuck Until OpenCPN 5.2.4, we could use a legacy install updated from time to time, (I started with opencpn 3.2.2 ... 8 years ago) Since OpenCPN 5.2.4 we had still the choice, for any Linux distribution, between this legacy install updated or for a fresh first installation the use of the plugin manager inside a flatpak sandbox. We could simply update the packages (.deb or.rpm) to follow the publication of a new version of any plugin and of opencpn itself (that's what I'm testing now and opencpn 5.6.2 is OK)) As a maintainer of the packages I didn't want propose a rpm to update from opencpn 5.2.4 to 5.6.x before it is rock solid and the rpm distributions are still using opencpn 5.2.4

But before opencpn 5.6.0 and 5.6.2 appear, oesenc_pi and oernc_pi yet didn't work anymore to use the paid charts from o-charts.org and opencpn 5.2.4 was complaining it needs now o-charts_pi. Since you chose to promote the Plugin Manager and suppressed the way to build a legacy package there is no way to build a working rpm of o-charts_pi, neither for opencpn 5.2.4 nor for opencpn 5.6.0

And now the opencpn users that have a rpm based distribution have no access to the charts nor to any update and there's no way to inform them that they need to use flatpak (and lose all that had been saved by the previous installations since these data are in a different path than the one that flatpak creates)

The Plugin Manager is surely user friendly... but this sudden policy change is not user friendly for the old opencpn users using it inside Linux (no problem for Windows or MacOS ...) An opensource program simple to use for Private Close OS but not anymore for Linux ... there's a kind of paradox

Note that I use the flatpak version of opencpn to test it and I have had to download today once again 256 Mo of new updates for flatpak itself (it's really a heavy stuff : nearly 3Go of updates since I use this sandbox that begins to be a real sandbeach)

Would it be possible for you to allow again the build of legacy packages for o-charts_pi as you did for oernc_pi or oesenc_pi ? Old Linux users are orphans now !

filochard commented 2 years ago

I think this issue may be closed Dave helped me to find the right workaround on the cruisersforum : https://www.cruisersforum.com/forums/f134/how-to-allow-a-classical-installation-of-o-charts_pi-replacing-oernc_pi-and-oesenc_p-265918.html