I’m on Fedora 45 Rawhide and noticed a kunified related user service process I tracked that down to “kunifiedpush” package in Fedora. I found that to be related to the Push Notifications panel in System Settings. I confirmed in there I have no push services defined (no surprise since I didn’t set any up). So I disabled the user service
I didn’t see a reason to have the package either if I don’t use notifications so I removed the “kunifiedpush” package. To my surprise the entire “Push Notifications” panel disappeared from the System Settings. Is that to be expected? I would think it would be bad to hide that since some might find PNs useful. Maybe the panel could remain but just show “not configured” on it when selected in System Settings?
Was this when you disabled the service, or only after you removed the package?
In general, these “pages” (i.e. the KCMs in KDE jargon) are provided by the relevant package for the functionality it configures (as opposed to some central “system settings” package). So it wouldn’t be too surprising to see this disappear on removing the package.
Does it reappear if you select “Show Inapplicable Pages”?
Nope, and when I do a System Settings search on “push” I get nothing. I don’t use push notifications (I’m not even sure what they are, I guess it’s chat related), but I still would think it’s weird to hide that entire functionality in this situation. It’s would be kind of like hiding the “Web Browser” option in the Default Applications just because the system had no browsers installed.
What are you expecting the KCM to do, if there’s no Push Notification service for it to configure?
I’m not sure what the problem is here, it seems completely reasonable to me, that if you remove kunifiedpush from your system, that it would remove the configuration tool as well, because that configuration tool no longer has anything to configure, and would just basically sit there cluttering up your systemsettings and likely resulting in a KCM you can click on, that is just going to tell you “Install kunifiedpush”
I just seems to be hiding a system functionality. I would expect the Push Notification panel to remain but just show some kind of documentation about push notifications
Generally though, how does the system know that some (not actually installed) package exists that would provide that page?
It might not even be a KDE-authored package: third-party developers can create their own System Settings pages (developer guide).
I guess you could argue that the system should be modular for third-party developers, but monolithic for KDE Plasma (i.e. all the KDE Plasma KCMs are in some single centralised KCM package, not in the same package as the functionality they configure). That would get some pushback from people who want their setup to be minimal and modular though.
I’m not trying to be difficult here, but I’m still not understanding your logic.
Removing the KCM doesn’t hide or remove any functionality, that functionality is all within kunifiedpush itself. All the KCM does is configure kunifiedpush behavior. If you’ve uninstalled kunifiedpush what functionality is the KCM to configure it supposed to supply?
So the answer is “yes” that’s expected, … that’s all I was asking. Solved then
One similar situation, I don’t have a game controller. So then by your logic the “Game Controller” entry shouldn’t exist in the System Settings. But on my laptop it is there and shows:
That’s a different scenario though. Your system has the code installed to support game controllers - it just doesn’t have a relevant device connected.
Similarly, if you have the code installed that supports push notifications, but you don’t have any notification providers configured, you see the settings page. That’s the situation you were in before you uninstalled the package.
Only when you actually uninstall the code that supports push notifications does the page disappear from System Settings.
I’ve just reinstalled the supporting package and it does show the “There is no push notification service running!” panel view. Maybe Fedora has ‘kunifiedpush’ as a default package so most users would see that so at least the capability would show.