KDE Applications/Cross Platform Issues: Difference between revisions
No edit summary |
No edit summary |
||
Line 6: | Line 6: | ||
Installing and running non-native daemons and services is often difficult on other platforms and may require elevated privileges. Applications should avoid directly accessing such daemons and instead use shared abstraction APIs. | Installing and running non-native daemons and services is often difficult on other platforms and may require elevated privileges. Applications should avoid directly accessing such daemons and instead use shared abstraction APIs. | ||
==KIO== | |||
Should not be installed or relied upon on non-Linux platforms. | |||
==Icon Sets== | ==Icon Sets== | ||
Line 31: | Line 35: | ||
==Icons on buttons== | ==Icons on buttons== | ||
We should | We should automatically default to the native platform preference. |
Revision as of 18:35, 7 July 2014
This page summarises issues with running KDE applications on non-Linux platforms and proposed solutions.
On Linux we have package mangers to install many extras that applications require, or have daemons running to provide services. We cannot rely on these existing on other platforms
DBUS, Systemd and Other Daemons
Installing and running non-native daemons and services is often difficult on other platforms and may require elevated privileges. Applications should avoid directly accessing such daemons and instead use shared abstraction APIs.
KIO
Should not be installed or relied upon on non-Linux platforms.
Icon Sets
The full FDO standard icon themes are far to large to ship with every download, especially Oxygen. Apps may need to reduce the icons included in their packages to just those icons they need. A common tool is probably needed to determine this.
Translation Files
Translation files are normally installed via the package manager. On other platforms they must either all be included in the initial install (unnecessary bloat), be available as an extra installer download (not very user friendly), downloaded dynamically by the installer, or made available via GHNS.
Spelling Dictionaries
Spelling dictionaries face the same issues and potential solutions as Translations, but are less commonly used.
System Settings
A number of shared libraries and services may need configuring by the user. On Plasma we have System Settings to access the required KCMs, but this is not recommended for other desktops and platforms. Any extra KCMs needed by an application must be included in their own config dialog or made accessible via a separate menu item. This should be a run-time determination based on whether the app is running under Plasma or not. A common way for doing this should be determined.
Update Notification
We need at minimum a mechanism to notify Apps on non-Linux platforms that an update is available for download. Some platforms may offer a native option for updates depending on how the apps were distributed in the first place. An advanced option may be to have a KDE updater, like Apple, Adobe and Google have for Windows.
TODO: Investigate what options Qt offers.
Icons on buttons
We should automatically default to the native platform preference.