Bug 344612 - libksysguard from Plasma 5.2 conflicts with libksysguard from kde-workspace
Summary: libksysguard from Plasma 5.2 conflicts with libksysguard from kde-workspace
Status: RESOLVED NOT A BUG
Alias: None
Product: ksysguard
Classification: Applications
Component: libksysguard (show other bugs)
Version: 5.2.1
Platform: ROSA RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Plasma Development Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-02-27 06:38 UTC by Pulfer
Modified: 2016-08-22 10:19 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Patch from OpenSUSE that renames kauth stuff in libksysguard (5.46 KB, patch)
2015-02-27 06:40 UTC, Pulfer
Details
Quick patch to rename libksgrd to libKF5ksgrd (1.88 KB, patch)
2015-02-27 10:13 UTC, Pulfer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pulfer 2015-02-27 06:38:47 UTC
libksysguard from Plasma 5.2 conflicts with libksysguard from kde-workspace. For example, both have /usr/lib/libprocessui.so file (resulting "devel(libprocessui)" RPM package Provides), as well as many other conflicting files.

As it's a Qt5/KF5-based library, it makes sense to rename it with KF5 prefix, like libkscreen from Plasma 5 has (libKF5Screen.so). The same applies to cmake, includes etc.

And it also makes sense to rename kauth stuff from org.kde.ksysguard.* to org.kde.ksysguard5.*. See the attached patch from OpenSUSE build ( http://download.opensuse.org/repositories/home:/wolfi323:/branches:/KDE:/Frameworks5/openSUSE_Tumbleweed/src/ ).

This will help downstream to keep both KDE4 and Plasma 5 in repositories.

Reproducible: Always
Comment 1 Pulfer 2015-02-27 06:40:01 UTC
Created attachment 91311 [details]
Patch from OpenSUSE that renames kauth stuff in libksysguard
Comment 2 Martin Flöser 2015-02-27 07:11:20 UTC
I do not really see the need. We communicated for at least a year now that Plasma 4 and 5 are not co-installable and no applications should use the libraries used by ksysguard.
Comment 3 Pulfer 2015-02-27 09:37:11 UTC
(In reply to Martin Gräßlin from comment #2)
> I do not really see the need. We communicated for at least a year now that
> Plasma 4 and 5 are not co-installable 

And there's nothing good in it. It's a bug, not a feature. Unless it's a political decision, not technical.

> and no applications should use the libraries used by ksysguard.

I can add Conflicts to RPM packages to avoid co-installing 4 and 5. But adding Requires/Provides filters to avoid "devel(libprocessui)" (= "/usr/lib/libprocessui.so" file) etc Requires/Provides is too much hacks already.

On the other hand, if no applications should use these libraries, I can do the job downstream.
Comment 4 David Edmundson 2015-02-27 09:39:51 UTC
What app is using it?
Comment 5 Martin Flöser 2015-02-27 09:45:21 UTC
(In reply to Pulfer from comment #3)
> On the other hand, if no applications should use these libraries, I can do
> the job downstream.

well it was a workspace library which means that we never gave ABI guarantees for it. This IMHO implies that it also doesn't give guarantees for co-installability.
Comment 6 Pulfer 2015-02-27 09:49:54 UTC
(In reply to David Edmundson from comment #4)
> What app is using it?

At least these apps used KDE4 version of ksysguard libraries:

kdebase4-workspace
kdevelop4
knemo
plasma-applet-fancytasks
sentinella

Not many.
Comment 7 Luca Beltrame 2015-02-27 10:03:22 UTC
In data venerdì 27 febbraio 2015 09:49:54, Pulfer ha scritto:

> kdebase4-workspace

FWIW: in openSUSE we have split the libraries from the workspace, so that 
installing a 5.x workspace will not cause conflicts and possibly removals of 
packages like kdevelop.
Comment 8 Martin Flöser 2015-02-27 10:06:36 UTC
(In reply to Pulfer from comment #6)
> At least these apps used KDE4 version of ksysguard libraries:
> 
> kdebase4-workspace
> kdevelop4
> knemo
> plasma-applet-fancytasks
> sentinella

The only non-workspace application of those is kdevelop4. All other should not/cannot be used in a Plasma 5 session.
Comment 9 Pulfer 2015-02-27 10:13:53 UTC
Created attachment 91314 [details]
Quick patch to rename libksgrd to libKF5ksgrd

I'll likely go this way with my downstream Plasma 5 packaging. Because I really see now reason to have any file conflicts between KDE4 and Plasma 5 packages.
Comment 10 Martin Flöser 2015-02-27 10:31:27 UTC
(In reply to Pulfer from comment #9)
> Created attachment 91314 [details]
> Quick patch to rename libksgrd to libKF5ksgrd

this renaming is wrong as it's not a frameworks library and also not planned to become one. Thus it should use the KF5 prefix.
Comment 11 Pulfer 2015-02-27 10:36:14 UTC
(In reply to Martin Gräßlin from comment #10)
> (In reply to Pulfer from comment #9)
> > Created attachment 91314 [details]
> > Quick patch to rename libksgrd to libKF5ksgrd
> 
> this renaming is wrong as it's not a frameworks library and also not planned
> to become one. Thus it should use the KF5 prefix.

Can be libksgrd5.so with /usr/include/ksysguard5 then. Anything but file conflicts with kde-frameworks.
Comment 12 Martin Flöser 2015-02-27 11:12:24 UTC
(In reply to Pulfer from comment #11)
> Can be libksgrd5.so with /usr/include/ksysguard5 then. Anything but file
> conflicts with kde-frameworks.

I really do not understand the need. From what Luca wrote the library can be co-installed on openSUSE. Also the so-version changed.
Comment 13 Hrvoje Senjan 2015-02-27 11:34:15 UTC
yeah, we have the helper splited as a package on openSUSE, so lib can be coinstalled (ftr. the patch you pasted is not 'an openSUSE' patch)
Comment 14 Pulfer 2015-02-27 11:53:20 UTC
(In reply to Martin Gräßlin from comment #12)
> I really do not understand the need. From what Luca wrote the library can be
> co-installed on openSUSE. Also the so-version changed.

The need is to avoid any file conflicts. 

What's the need to have them if it's easy to avoid? Why should translations from libksysguard force users to remove kde-l10n package (.po conflicts), development files from libksysguard should force to remove kde-workspace-devel package (.so conflicts) etc. There's nothing hard in avoiding this, I really don't understand the need to keep conflicts.
Comment 15 Pulfer 2015-02-27 11:58:01 UTC
RPM package (spec and patches) that doesn't conflict with KDE4 stuff: https://abf.io/import/libksysguard

ksysguard from Plasma 5.2.1 build fine with this package installed.
Comment 16 Pulfer 2015-03-01 12:09:03 UTC
Hrvoje Senjan, BTW, how do you deal with translation file conflicts in OpenSUSE's KDE packages? kde-l10n upstream tarball contains translations for both Applications 4 & 5 and Workspace 4. And translation files from Plasma 5 packages conflict with Workspace 4 files from kde-l10n. How users should install Plasma 5 and Applications 4 & 5 translations?
Comment 17 Pulfer 2015-03-01 12:25:47 UTC
And it looks like RPM in OpenSUSE doesn't generate devel(libname) Provides/Requires for libraries. So no surprise you don't see what's wrong with having Provides/Requires collision because of .so files with same names in KDE 4 and Plasma 5 development packages...
Comment 18 Sebastian Kügler 2016-08-22 10:19:23 UTC
Sorry to close this bug, but we do not support installing Plasma 4 and 5 alongside.