|
|
(39 intermediate revisions by 6 users not shown) |
Line 3: |
Line 3: |
| It should be possible to install a kde frameworks 5 runtime alonside a kdelibs 4 runtime so apps can use either one | | It should be possible to install a kde frameworks 5 runtime alonside a kdelibs 4 runtime so apps can use either one |
|
| |
|
| = Dependencies: =
| | Many paths have changed by default so there is no clash |
| | * kdelibs 4 CONFIG_INSTALL_DIR: /usr/share/config |
| | * kf5 CONFIG_INSTALL_DIR: /etc/xdg |
| | * kdelibs 4 DATA_INSTALL_DIR: /usr/share/apps |
| | * kf5 DATA_INSTALL_DIR: /usr/share |
|
| |
|
| Qt libraries it depends on already have two versions with different sonames or different names
| | HTML_INSTALL_DIR does clash as /usr/share/doc/HTML to allow khelpcentre to find docs from both kdelibs4 land and kf5 land |
|
| |
|
| * phonon - rename done
| | In addition, under Windows, the file names of the executables provided by the framework must differ from those of the KDE4 counterpart, as the 'libexecdir' directory is mapped to the 'bin' directory. |
| * attica - rename done
| |
| * dbusmenu - rename done
| |
| * oxygen-icons - just install the latest version
| |
| * qimageblitz - rename done
| |
| * libstream and libstreamanalyzer - not qt libraries so ABI the same and no rename needed
| |
| * grantlee - not ported to Qt 5 but it is only used for a test which is disabled.
| |
|
| |
|
| = KDE Frameworks 5 =
| | [[Plasma/Coinstallability|Plasma Next coinstallability page]] |
| == data files: ==
| |
|
| |
|
| Most install into DATA_INSTALL_DIR which can be made version specific, e.g. /usr/share/kde4/ and /usr/share/kdeframeworks5
| | = kactivities = |
|
| |
|
| * share/LICENSES/ DATA_INSTALL_DIR
| | The libraries are co-installable, but the daemon is not. |
| * share/kcharselect/kcharselect-data DATA_INSTALL_DIR
| |
| * share/ksgmltools2 DATA_INSTALL_DIR
| |
| * share/xmlgui/pics/aboutkde.png DATA_INSTALL_DIR
| |
| * share/khtml/ DATA_INSTALL_DIR
| |
| * share/kssl/ DATA_INSTALL_DIR
| |
| * share/kconfigwidgets DATA_INSTALL_DIR (and changed dir name)
| |
| * share/knewstuff/pics DATA_INSTALL_DIR
| |
| * share/kconf_update DATA_INSTALL_DIR
| |
| * share/kjava DATA_INSTALL_DIR
| |
| * share/proxyscout/ DATA_INSTALL_DIR
| |
| * share/kcm_componentchooser/ DATA_INSTALL_DIR
| |
| * share/kdewidgets/ DATA_INSTALL_DIR
| |
|
| |
|
| These are files which can be shared between kdelibs 4 and kde frameworks 5
| | * libkactivities/qt5 requires kactivitymanagerd/qt5 |
| | * libkactivities/qt4 works with both kactivitymanagerd/qt4 and kactivitymanagerd/qt5 (though, the later is advised since it is more stable) |
|
| |
|
| * share/locale/ can be shared
| | In order to build only the library part of kactivities/qt4, you can pass -DKACTIVITIES_LIBRARY_ONLY=true to cmake. libkactivities/qt4 works with the qt5 version of the daemon. |
| * share/mime/packages/kde.xml can be shared
| |
| * share/icons/hicolor/ - kimproxy icons can be shared
| |
| * share/doc can be shared
| |
| * etc/dbus-1/system.d/org.kde.auth.conf can be shared
| |
| * etc/xdg/ can be shared
| |
|
| |
|
| Some files are only needed for developers where the kdelibs and kdeframeworks packages can be made to conflict
| | * link to the original discussion: https://git.reviewboard.kde.org/r/115602/ |
| | |
| * share/dbus-1/interfaces/ dev files
| |
| * share/kauth/ dev files and DATA_INSTALL_DIR
| |
| * share/cmake/modules/ dev files and DATA_INSTALL_DIR
| |
| | |
| == binaries: ==
| |
| | |
| Some are renamed already or a new:
| |
| * bin/kdeinit5_shutdown
| |
| * bin/kbuildsycoca5
| |
| * bin/kdeinit5_wrapper
| |
| * bin/meinproc5
| |
| * bin/kdeinit5
| |
| * bin/kf5-config
| |
| * bin/kded5
| |
| * bin/desktoptojson
| |
| * bin/kshell5
| |
| * bin/kwrapper5
| |
| * bin/kcookiejar5 (arguably a developer only binary)
| |
| | |
| Some are developer only binaries, the -dev package can be muturally exclusive:
| |
| * bin/makekdewidgets
| |
| * bin/checkXML
| |
| * bin/preparetips
| |
| * bin/kconfig_compiler
| |
| * bin/kjs
| |
| * bin/kjscmd
| |
| | |
| Kross is probably unimportant enough to just swap for KF5 version, this can be used to run some non-GUI kross scripts
| |
| * bin/kross
| |
| | |
| Some are interchangeable binaries:
| |
| * bin/kmailservice
| |
| * bin/ktelnetservice
| |
| | |
| == libraries: ==
| |
| All libraries renamed and versoned to 5.0.0
| |
| | |
| set some cmake variables to keep various bits separate
| |
| * plugins/ needs QT_PLUGIN_INSTALL_DIR set
| |
| * lib/cmake needs CMAKECONFIG_INSTALL_DIR set
| |
| * lib/qml/org/kde/solid/libsolidextensionplugin.so new file
| |
| * libexec can be put in a kf5 directory with LIBEXEC_INSTALL_DIR
| |
| | |
| = KActivities =
| |
| kdelibs 4 and kde frameworks 5 versions are co-installable
| |
| * developer files in include/ and lib/pkgconfig and lib/cmake/ will be mutually exclusive
| |
| * plugins installed into plugins/kf5 to keep them separate
| |
| * kactivities library has been renamed with capital letters and new SONAME
| |
| * kactivitymanagerd can be shared between libkactivities in kde4 and in kf5, it has the same same dbus interface
| |
| * share/ontologies/kao* can be shared
| |
| | |
| = kde-runtime =
| |
| Much of kde-runtime is yet to be ported
| |
| | |
| == binaries ==
| |
| renamed binaries
| |
| * kcmshell5
| |
| | |
| clashing binaries
| |
| * kdecp
| |
| * kdemv
| |
| * kdeopen
| |
| * kioclient
| |
| * ktrash
| |
| | |
| plugins:
| |
| * kioexec set a separate LIBEXEC_INSTALL_DIR
| |
| * plugins/kf5 set a separate PLUGIN_INSTALL_DIR
| |
| | |
| data files:
| |
| * jpegcreatorsettings.kcfg set a separate KCFG_INSTALL_DIR e.g. /usr/share/kf5/config.kcfg
| |
| * kcmlocale/pics/background.png set a separate DATA_INSTALL_DIR
| |
| * .desktop and .protocol files set SERVICES_INSTALL_DIR to e.g. /usr/share/kde5/services
| |
| | |
| developer files:
| |
| * org.kde.KTimeZoned.xml no need to install it
| |
KDE Frameworks 5 and Plasma 2 co-installability
It should be possible to install a kde frameworks 5 runtime alonside a kdelibs 4 runtime so apps can use either one
Many paths have changed by default so there is no clash
- kdelibs 4 CONFIG_INSTALL_DIR: /usr/share/config
- kf5 CONFIG_INSTALL_DIR: /etc/xdg
- kdelibs 4 DATA_INSTALL_DIR: /usr/share/apps
- kf5 DATA_INSTALL_DIR: /usr/share
HTML_INSTALL_DIR does clash as /usr/share/doc/HTML to allow khelpcentre to find docs from both kdelibs4 land and kf5 land
In addition, under Windows, the file names of the executables provided by the framework must differ from those of the KDE4 counterpart, as the 'libexecdir' directory is mapped to the 'bin' directory.
Plasma Next coinstallability page
kactivities
The libraries are co-installable, but the daemon is not.
- libkactivities/qt5 requires kactivitymanagerd/qt5
- libkactivities/qt4 works with both kactivitymanagerd/qt4 and kactivitymanagerd/qt5 (though, the later is advised since it is more stable)
In order to build only the library part of kactivities/qt4, you can pass -DKACTIVITIES_LIBRARY_ONLY=true to cmake. libkactivities/qt4 works with the qt5 version of the daemon.