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

_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to