Dependency to Network Manager / kf5-NetworkManagerQt in plasma-workspace
Bernd Steinhauser
linux at bernd-steinhauser.de
Tue May 26 16:24:33 UTC 2015
Hi Martin,
On 26/05/15 10:47, Martin Gräßlin wrote:
> In my opinion NetworkManagerQt is a defacto hard-dependency of the combined
> product Plasma we provide, thus also plasma-workspace can depend on it.
I don't see a reason, why this would be the case. Sure, there is a Network
Manager applet and there are certain parts of KDE / Plasma, that make use of it,
but I don't see why it would be a defacto hard-dependency.
That's like saying that there is a hard-dependency on sddm, since there is a
theme for it and a kcm.
> My
> system I'm just writing on doesn't use NetworkManager either, nevertheless I
> do not think that compiling without support for NetworkManager is a valid use
> case which we as the devs should spend time on. Given that we all just run
> kdesrc-build which compiles everything (which is the same the CI does) we
> would not be able to track a build failure. I have been at that place with
> KWin many times and want our CMake dependencies to be as accurate to what we
> can guarantee as possible.
I do understand your feeling about this and to some degree, I support it. Not
everything should be optional and lots of IFs don't make the code easier to
write, read and test.
In the end, there should be as few options as possible, but as many as
necessary. Of course, there will be always a discussion about the necessity part
and we will never completely agree on that, since there are many use cases.
In this case, *I think* that the feature that is introduced is so utterly
pointless and repelling, that I actually started to think about it. But ok,
that's just my opinion and obviously nobody has to agree.
If I would actually have to spend some time to make Plasma not depend on Network
Manager, since it is used in many places and often non-optional, then I wouldn't
even have brought this up. But since almost all of the Network Manager handling
is done in separate packages (the framework and the applet) and you can just
refrain from installing them, it was rather easy.
Maybe instead of making this optional, it would be a solution to move this data
engine (or parts of it) to plasma-nm?
> Even more I just recently noticed that
> distributions do the packaging mostly automatic nowadays resulting in very
> important, but optional, dependencies to not be picked up.
Ok, that's just a horrible mistake. They shouldn't do that.
But of course that will always be a problem, even if someone actually spends
time on checking that things are setup correctly. There might be a way to handle
this in cmake actually by introducing something between REQUIRED and OPTIONAL.
I.e. something like RECOMMENDED where cmake will fail unless you pass something
like YES_I_REALLY_DONT_WANT_RECOMMENDED_DEPS or similar.
Best Regards,
Bernd
More information about the Plasma-devel
mailing list