[KDE/Mac] systemsettings, kde-cli-tools and other plasma components on non-Plasma/non-X11 platforms
John Layt
jlayt at kde.org
Thu Dec 24 12:15:59 UTC 2015
Hi,
Drive-by comment, no time to read the full thread so not sure if it's been
said, but I thought I'd just refresh memories on what we discussed at an
Akademy a few years back. The general consensus was that forcing
Mac/Windows/Gnome users to install Systemsettings just to configure their
standalone app was A Bad Thing (TM) and shouldn't be done. It required
specialised knowledge of what to do and where to look that we couldn't
expect from new users or users of other platforms. Installing a 'KDE
Settings' module in the host settings program (Mac System Preferences or
Windows Control Panel) was also ruled out for the same reason: what new
user knows to go there, or even knows the app comes from KDE? The user's
mental model is they are not configuring a desktop or group of apps from
the same 'manufacturer', but rather they are configuring a single app they
have downloaded and installed.
The agreed correct behaviour when we could not use the host settings or
services for something was that the config for the KDE replacement must be
directly accessible where the user expects it to be, that is in the
application's settings, either in the main config dialog or where
appropriate as a separate menu item in the help menu. Note this does not
mean launching Systemsettings, but rather embedding the individual KCM
modules that the app requires. So, for example, if an app requires access
to KWallet, then the KWallet KCM should be embedded in the app's config
dialog (even if this config is perhaps shared with other KDE apps they have
installed).
Obviously our KCM tech makes this relatively straight-forward to do if the
KCM modules are split out correctly. What needs doing is to determine what
KCM's are needed by apps on other platforms and to ensure these are
installable separately from Systemsettings so the devs and packagers can
pull them in as required.
Note too that this model was intended to apply to running under Gnome as
well. If you install Krita under Gnome, you shouldn't have to install and
run KDE Systemsettings just to get the right fonts or use your desktop
wallet. This implies that the decision on whether to display the required
KCM's in the App dialog or Systemsettings is not a build-time one but
rather a run-time one, i.e. if running under a non-KDE desktop where we
can't use the host config then embed the KCM, otherwise don't. This
obviously requires work on the individual apps themselves to define what
they depend on, but also perhaps some common library code in KCM to make
this easy, and libraries like KWallet need to define on what platforms
their KCM is required. It was this work that we never got around to doing
and that needs better defining if we're ever to get serious about
cross-platform support.
John.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20151224/ebc8a718/attachment.html>
More information about the Plasma-devel
mailing list