glfs/kde/kf5/kf5-frameworks.xml
2024-01-19 22:39:35 +01:00

969 lines
33 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!-- kf5-download-http is defined on packages.ent
<!ENTITY kf5-download-http "&kf5-download-http;"> -->
<!ENTITY kf5-download-ftp " ">
<!ENTITY kf5-md5sum "See Below">
<!ENTITY kf5-size "347 MB">
<!ENTITY kf5-buildsize "2.5 GB (252 MB installed)">
<!ENTITY kf5-time "7.4 SBU (using parallelism=4)">
]>
<sect1 id="kf5-frameworks" xreflabel="KDE Frameworks-&kf5-version;">
<?dbhtml filename="frameworks5.html"?>
<title>Building KDE Frameworks 5 (KF5)</title>
<indexterm zone="kf5-frameworks">
<primary sortas="a-kde-frameworks">KDE Frameworks</primary>
</indexterm>
<para>
KDE Frameworks 5 is a collection of libraries based on top of Qt5 and
QML derived from the monolithic KDE 4 libraries. They can be used
independent of the KDE Display Environment (Plasma 5).
</para>
&lfs120_checked;
<para>
The instructions below build all of the KDE Frameworks packages in one
step by using a bash script.
</para>
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&kf5-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&kf5-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &kf5-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &kf5-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &kf5-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &kf5-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">KF5 Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="boost"/>,
<xref linkend="extra-cmake-modules"/>,
<xref linkend="DocBook"/>,
<xref linkend="docbook-xsl"/>,
<xref linkend="giflib"/>,
<xref linkend="libepoxy"/>,
<xref linkend="libgcrypt"/>,
<xref linkend="libical"/>,
<xref linkend="libjpeg"/>,
<xref linkend="libpng"/>,
<xref linkend="libxslt"/>,
<xref linkend="lmdb"/>,
<xref linkend="qca"/>,
<xref linkend="qrencode"/>,
<xref linkend="phonon"/>,
<xref linkend="plasma-wayland-protocols"/>,
<xref linkend="shared-mime-info"/>,
<xref linkend="perl-uri"/>, and
<xref linkend="wget"/> (required to download the packages)
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="aspell"/> (Dictionary backend for Sonnet),
<xref linkend="avahi"/> (DNS-SD backend for KDNSSD),
<xref linkend="libdbusmenu-qt"/> (built with qt5),
<xref linkend="ModemManager"/> (needed to build ModemManager-Qt),
<xref linkend="NetworkManager"/> (needed to build NetworkManager-Qt),
<xref linkend="pcre"/>, and
<xref linkend="polkit-qt"/> (Authentication backend for KAuth)
</para>
<para role="recommended">
Furthermore, the instructions below assume that the environment has been
set up as described in <xref linkend="kf5-intro"/>.
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="bluez"/> (needed to build Bluez-Qt),
<ulink url="https://libdmtx.sourceforge.net/">Datamatrix</ulink> (deemed
recommended for Prison by upstream)
</para>
<bridgehead renderas="sect4">Runtime dependency for FrameworkIntegration</bridgehead>
<para role="optional">
<!--<xref role="runtime" linkend="oxygen-fonts"/> and-->
<xref role="runtime" linkend="noto-fonts"/>
</para>
<bridgehead renderas="sect4">Additional recommended dependencies for kapidox</bridgehead>
<para role="recommended">
<xref role="runtime" linkend="doxygen"/> (Run time),
<xref linkend="doxypypy"/>,
<xref linkend="doxyqml"/>,
<xref linkend="PyYAML"/>, and
<xref linkend="requests"/>
</para>
<bridgehead renderas="sect4">Additional image formats support in KImageFormats</bridgehead>
<para role="optional">
<xref linkend="jasper"/>,
<xref linkend="libavif"/>,
<xref linkend="libraw"/>,
<ulink url="https://github.com/strukturag/libheif">libheif</ulink>,
<ulink url="https://github.com/libjxl/libjxl">libjxl</ulink>, and
<!-- www.openexr.com redirects here -->
<ulink url="https://github.com/AcademySoftwareFoundation/openexr">OpenEXR</ulink>
</para>
<bridgehead renderas="sect4">Optional dependencies for KIO</bridgehead>
<para role="optional">
<xref linkend="mitkrb"/>
</para>
<bridgehead renderas="sect4">Optional dependencies for Solid</bridgehead>
<para role="optional">
<xref linkend="udisks2"/>,
<xref linkend="upower"/> and
<ulink role="runtime" url="https://www.freedesktop.org/software/media-player-info/">media-player-info</ulink> (runtime)
</para>
<bridgehead renderas="sect4">Optional dependency for KWallet</bridgehead>
<para role="optional">
<xref linkend="gpgme"/>, built with C++ bindings (which is the default).
</para>
<bridgehead renderas="sect4">Optional dependency for kdewebkit</bridgehead>
<para role="optional">
<ulink url="https://download.qt.io/community_releases/5.9/5.9.0-final/">QtWebkit</ulink>
</para>
<bridgehead renderas="sect4">Optional dictionary backends for Sonnet</bridgehead>
<para role="optional">
<ulink url="http://hspell.ivrix.org.il/">Hspell</ulink> and
<ulink url="https://hunspell.sourceforge.net/">Hunspell</ulink>
</para>
<sect2>
<title>Downloading KDE Frameworks</title>
<para>
The easiest way to get the KDE Frameworks packages is to use a single
<command>wget</command> to fetch them all at once:
</para>
<screen><userinput>url=https://download.kde.org/stable/frameworks/&kf5-short-version;/
wget -r -nH -nd -A '*.xz' -np $url</userinput>
<literal>
The options used here are:
-r recurse through child directories
-nH disable generation of host-prefixed directories
-nd do not create a hierarchy of directories
-A '*.xz' just get the *.xz files
-np don't get parent directories</literal></screen>
</sect2>
<sect2>
<title>Setting Package Order</title>
<para>
The order of building files is important due to internal dependencies.
Create the list of files in the proper order as follows:
</para>
<!-- commenting out kapidox for now, see ticket #16805. This package
needs special instructions because it is a pure python package. -->
<screen><userinput>cat &gt; frameworks-&kf5-version;.md5 &lt;&lt; "EOF"
<literal>787c2d668ea547c2516aee5f0bfc8726 attica-5.113.0.tar.xz
#f037747c7a56fbbb64adb14d1f46fe5f extra-cmake-modules-5.113.0.tar.xz
82f34f7bc8d44d2bcf35fa3f94a38836 kapidox-5.113.0.tar.xz
7874e4ef6e9043a1fbe253e76b3b14fe karchive-5.113.0.tar.xz
89e1b0d3b26f23140142a8b6a3108475 kcodecs-5.113.0.tar.xz
d9d231a843e344bfb69361eeff1df5dd kconfig-5.113.0.tar.xz
0967a05b9595e7fc37d9adc720e28881 kcoreaddons-5.113.0.tar.xz
ea44849cafb7c183e5301a794f7efb98 kdbusaddons-5.113.0.tar.xz
f1c3314fab259c3af769e78c146fc90b kdnssd-5.113.0.tar.xz
00f8015c6ffbbef09aa8977f6cf41e13 kguiaddons-5.113.0.tar.xz
369ddd0283921f1ed5a78f0bc1ebfc82 ki18n-5.113.0.tar.xz
30fbf16607d783a9e871344962eb6c90 kidletime-5.113.0.tar.xz
dbe1d12387f95adc49d931102be44fb0 kimageformats-5.113.0.tar.xz
c5e89f4c8dea0b9ef5d01f16968e046e kitemmodels-5.113.0.tar.xz
d4bfe43c3516ffee86bb75aac9747d78 kitemviews-5.113.0.tar.xz
1668a8040e66b8d5df8f6576d8543e52 kplotting-5.113.0.tar.xz
e660b75205043559de3623e0d4314dfc kwidgetsaddons-5.113.0.tar.xz
b9ec086925b43ae1563c353246a17929 kwindowsystem-5.113.0.tar.xz
bcad0b16cdc4ed3a525f489212d04f54 networkmanager-qt-5.113.0.tar.xz
9d4b38e3adae1c0da9f207786aacf497 solid-5.113.0.tar.xz
80f6fbb2005c4d1bd82407642bdd156d sonnet-5.113.0.tar.xz
3b712a2ca08ff91f0dffe857fd83474f threadweaver-5.113.0.tar.xz
9d39de86fb9c75faea71886267aa0c98 kauth-5.113.0.tar.xz
36a941b4dac38b548df513962593c6af kcompletion-5.113.0.tar.xz
afe932f17e32d63659b2901157c3bc73 kcrash-5.113.0.tar.xz
1066c0b7878f5c920928954570e39730 kdoctools-5.113.0.tar.xz
6affbafd36a70bc51d9822347056ac2d kpty-5.113.0.tar.xz
49a1eee21895689b102fabd57d3dd92f kunitconversion-5.113.0.tar.xz
e9418b112c6e12fa743aea190bc1f0df kconfigwidgets-5.113.0.tar.xz
38284f2e7a5e29643c2c7478f06de679 kservice-5.113.0.tar.xz
7397ea0349bf92b9a98a5a75a95e7860 kglobalaccel-5.113.0.tar.xz
90ccbb695797b041e94c39cb98139065 kpackage-5.113.0.tar.xz
9766a78f6ebb2dd760246cee72622de1 kdesu-5.113.0.tar.xz
fcff19090cf18c03cc492768da8b62b4 kemoticons-5.113.0.tar.xz
a48bfd069ba800de25ba3907b0e4a2e1 kiconthemes-5.113.0.tar.xz
b51ee5c2bc66a45eb68ae681fd2a52b7 kjobwidgets-5.113.0.tar.xz
aaec1ed5e8c1133decd4876c486f7958 knotifications-5.113.0.tar.xz
5533f0ed825339ce66f400c1058a207a ktextwidgets-5.113.0.tar.xz
af3d95e975fcb00f865da003c823bfd9 kxmlgui-5.113.0.tar.xz
401472496f0539c6804c5758950704fc kbookmarks-5.113.0.tar.xz
72c93e9c087f03cecf75bf76113da7b0 kwallet-5.113.0.tar.xz
2bd168429da6337811b33e44175c92b2 kded-5.113.0.tar.xz
31f9bb082e740c90e8d2623f94117020 kio-5.113.0.tar.xz
b7ab07daa1c8e7b441c92c9dabc74c77 kdeclarative-5.113.0.tar.xz
1df48c8564ec78f1f4782612a342accb kcmutils-5.113.0.tar.xz
a836b9e3c64b86d2dd5fb45fa9bbb400 kirigami2-5.113.0.tar.xz
20589ba771d2df8ad3ddaf7f0341a2d9 syndication-5.113.0.tar.xz
24baca956b368ce051129a3d9ddb8d65 knewstuff-5.113.0.tar.xz
f1c28e9fb51199710d7dfdd904572ba0 frameworkintegration-5.113.0.tar.xz
6c5bc8798c3c9dcca909998ae8ea376a kinit-5.113.0.tar.xz
461169baeb06dee7bc558a978889ae05 kparts-5.113.0.tar.xz
844c0457872c020e0e41dfa78348db86 kactivities-5.113.0.tar.xz
#5063fba9a973754a1d74d25be3c1c879 kdewebkit-5.113.0.tar.xz
614ebb98192f9052f19edbd7976f0291 syntax-highlighting-5.113.0.tar.xz
042424fe37a12bf433c1db6853f5de39 ktexteditor-5.113.0.tar.xz
38e28b1563ca2bed2484c84c58f4d6a3 kdesignerplugin-5.113.0.tar.xz
924b688b1a9626506db888f7121c5ace kwayland-5.113.0.tar.xz
d58abf4f8fe539995124dfec1f33d981 plasma-framework-5.113.0.tar.xz
11f566407f2d9dece0acc2ab839cd062 modemmanager-qt-5.113.0.tar.xz
0647a87e569c7650d2dc6608e7f57ed0 kpeople-5.113.0.tar.xz
ca639bea4c95c28b2477960d8b7919e3 kxmlrpcclient-5.113.0.tar.xz
f72cd083ecbc9f18cb5698922240f1f2 bluez-qt-5.113.0.tar.xz
709952cf04d6927d87f99aed9fc3d2b6 kfilemetadata-5.113.0.tar.xz
468982a87967b7459a094c62f4b53b16 baloo-5.113.0.tar.xz
#130f406ffe1fe4d6778bb26b7688f5c3 breeze-icons-5.113.0.tar.xz
#841ef4fa01803fe07ff4a96c72ac472d oxygen-icons-5.113.0.tar.xz
f5ac81cfcbf79c5f7a583be8c92db53d kactivities-stats-5.113.0.tar.xz
f32d7b8bfa1874b6ddb13c939a4c0190 krunner-5.113.0.tar.xz
4400d4a8b143b983d117ee76b5c49590 prison-5.113.0.tar.xz
62a77f1676426a864433f20dab62c7bb qqc2-desktop-style-5.113.0.tar.xz
9ed05a72f505238e7ddf605c8f4744ee kjs-5.113.0.tar.xz
acc3916872c964677778152f0812970c kdelibs4support-5.113.0.tar.xz
0fb63bcab20b9e7e030cec139988e716 khtml-5.113.0.tar.xz
05fc8de448545b648f721cbab1f1e270 kjsembed-5.113.0.tar.xz
240fc62077d2d7605e057a3a3e883317 kmediaplayer-5.113.0.tar.xz
b36746fe0fcb6760e4c6863c0aadee84 kross-5.113.0.tar.xz
1766fd510ce7c816760dd6b5e51fe9d0 kholidays-5.113.0.tar.xz
976e174b887f5e68ecf374053607cee4 purpose-5.113.0.tar.xz
a0e98fee032e1b462a4b0a302b10f15b kcalendarcore-5.113.0.tar.xz
66bdceec34192e96a7a7dbc66fa01e6b kcontacts-5.113.0.tar.xz
f347438bdea3e5b0d66c3cf098890a69 kquickcharts-5.113.0.tar.xz
650db9939b0c0b43929999b58ca588fc knotifyconfig-5.113.0.tar.xz
b0d2454a0a729b2ec98a085ad7e454d5 kdav-5.113.0.tar.xz</literal>
EOF</userinput></screen>
<para>
In the above list, notice that some files have been commented out with
a hash (#) character. The extra-cmake-modules entry has been commented out
because it was built earlier in the <xref linkend="kde-prereq"/>. The icon
packages are covered separately at <xref linkend="breeze-icons"/> and <xref
linkend="oxygen-icons"/>. The
kdewebkit package may be built if the external package
<ulink url="https://download.qt.io/community_releases/5.9/5.9.0-final/">
QtWebkit</ulink> has been built.
</para>
</sect2>
<sect2 role="installation">
<title>Installation of KDE Frameworks</title>
&as_root;
<caution>
<para>
If installing in <filename class="directory">/opt</filename> and there
is an existing /opt/kf5 either as a regular directory or a symbolic
link, it should be reinitialized (as <systemitem class="username">
root</systemitem>):
</para>
<screen role="root" revision="sysv"><userinput>mv -v /opt/kf5 /opt/kf5.old &amp;&amp;
install -v -dm755 $KF5_PREFIX/{etc,share} &amp;&amp;
ln -sfv /etc/dbus-1 $KF5_PREFIX/etc &amp;&amp;
ln -sfv /usr/share/dbus-1 $KF5_PREFIX/share &amp;&amp;
ln -sfv /usr/share/polkit-1 $KF5_PREFIX/share</userinput></screen>
<screen role="root" revision="systemd"><userinput>mv -v /opt/kf5 /opt/kf5.old &amp;&amp;
install -v -dm755 $KF5_PREFIX/{etc,share} &amp;&amp;
ln -sfv /etc/dbus-1 $KF5_PREFIX/etc &amp;&amp;
ln -sfv /usr/share/dbus-1 $KF5_PREFIX/share &amp;&amp;
ln -sfv /usr/share/polkit-1 $KF5_PREFIX/share &amp;&amp;
install -v -dm755 $KF5_PREFIX/lib &amp;&amp;
ln -sfv /usr/lib/systemd $KF5_PREFIX/lib</userinput></screen>
</caution>
<para>
First, start a subshell that will exit on error:
</para>
<screen><userinput>bash -e</userinput></screen>
<para>
Install all of the packages by running the following
commands:
</para>
<screen><userinput>while read -r line; do
# Get the file name, ignoring comments and blank lines
if $(echo $line | grep -E -q '^ *$|^#' ); then continue; fi
file=$(echo $line | cut -d" " -f2)
pkg=$(echo $file|sed 's|^.*/||') # Remove directory
packagedir=$(echo $pkg|sed 's|\.tar.*||') # Package directory
name=$(echo $pkg|sed 's|-5.*$||') # Isolate package name
tar -xf $file
pushd $packagedir
# kapidox is a python module
case $name in
kapidox)
&build-wheel-cmd; $PWD
as_root &install-wheel; kapidox
popd
rm -rf $packagedir
continue
;;
esac
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$KF5_PREFIX \
-DCMAKE_PREFIX_PATH=$QT5DIR \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_TESTING=OFF \
-Wno-dev ..
make
as_root make install
popd
<!-- some packages end with files owned by root in $packagedir, so use as_root
in the following -->
as_root rm -rf $packagedir
as_root /sbin/ldconfig
done &lt; frameworks-&kf5-version;.md5
exit</userinput></screen>
<note>
<para>
Any modules that have been omitted can be installed later by
using the same <command>mkdir build; cd build; cmake; make;
make install</command> procedure as above.
</para>
</note>
<para revision="sysv">
Useless systemd units have been installed in
<filename class="directory">$KF5_PREFIX/lib</filename>. Remove
them now (as &root;):
</para>
<screen role="root"
revision="sysv"><userinput>rm -rf $KF5_PREFIX/lib/systemd</userinput></screen>
<para>
Sometimes the installation paths are hardcoded into installed files.
If the installed directory is not /usr, rename the directory and create a
symlink:
</para>
<screen role="root"><userinput>mv -v /opt/kf5 /opt/kf5-&kf5-version;
ln -sfvn kf5-&kf5-version; /opt/kf5</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>-DCMAKE_PREFIX_PATH=$QT5DIR</parameter>: This switch is used
to allow cmake to find the proper Qt libraries.
</para>
<para>
<parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch is used
to apply higher level of the compiler optimizations.
</para>
<para>
<parameter>-DBUILD_TESTING=OFF</parameter>: This switch is used to prevent
building test programs and libraries that are of no use to an end user.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
balooctl,
baloo_file,
baloo_file_extractor,
baloosearch,
balooshow,
checkXML5,
depdiagram-generate,
depdiagram-generate-all,
depdiagram-prepare,
desktoptojson,
gentrigrams,
kactivities-cli,
kapidox_generate,
kate-syntax-highlighter,
kbuildsycoca5,
kcookiejar5,
kdebugdialog5,
kded5,
kdeinit5,
kdeinit5_shutdown,
kdeinit5_wrapper,
kf5-config,
kf5kross,
kgendesignerplugin,
kglobalaccel5,
kiconfinder5,
kjs5,
kjscmd5,
kjsconsole,
knewstuff-dialog,
kpackagelauncherqml,
kpackagetool5,
kquitapp5,
kreadconfig5,
kshell5,
ktelnetservice5,
ktrash5,
kwalletd5,
kwallet-query,
kwrapper5,
kwriteconfig5,
meinproc5,
parsetrigrams,
plasmapkg2,
preparetips5,
protocoltojson, and
solid-hardware5
</seg>
<seg>
libkdeinit5_klauncher.so,
libKF5Activities.so,
libKF5ActivitiesStats.so,
libKF5Archive.so,
libKF5Attica.so,
libKF5AuthCore.so,
libKF5Auth.so,
libKF5Baloo.so,
libKF5BluezQt.so,
libKF5Bookmarks.so,
libKF5CalendarCore.so,
libKF5CalendarEvents.so,
libKF5Codecs.so,
libKF5Completion.so,
libKF5ConfigCore.so,
libKF5ConfigGui.so,
libKF5ConfigWidgets.so,
libKF5Contacts.so,
libKF5CoreAddons.so,
libKF5Crash.so,
libKF5DAV.so,
libKF5DBusAddons.so,
libKF5Declarative.so,
libKF5DNSSD.so,
libKF5DocTools.so,
libKF5Emoticons.so,
libKF5FileMetaData.so,
libKF5GlobalAccel.so,
libKF5GuiAddons.so,
libKF5Holidays.so,
libKF5I18n.so,
libKF5IconThemes.so,
libKF5IdleTime.so,
libKF5ItemModels.so,
libKF5ItemViews.so,
libKF5JobWidgets.so,
libKF5JSApi.so,
libKF5JsEmbed.so,
libKF5JS.so,
libKF5KCMUtils.so,
libKF5KDELibs4Support.so,
libKF5KHtml.so,
libKF5KIOCore.so,
libKF5KIOFileWidgets.so,
libKF5KIOGui.so,
libKF5KIONTLM.so,
libKF5KIOWidgets.so,
libKF5Kirigami2.so,
libKF5KrossCore.so,
libKF5KrossUi.so,
libKF5MediaPlayer.so,
libKF5NetworkManagerQt.so,
libKF5NewStuffCore.so,
libKF5NewStuff.so,
libKF5Notifications.so,
libKF5NotifyConfig.so,
libKF5Package.so,
libKF5Parts.so,
libKF5PeopleBackend.so,
libKF5People.so,
libKF5PeopleWidgets.so,
libKF5PlasmaQuick.so,
libKF5Plasma.so,
libKF5Plotting.so,
libKF5Prison.so,
libKF5Pty.so,
libKF5Purpose.so,
libKF5PurposeWidgets.so,
libKF5QuickAddons.so,
libKF5Runner.so,
libKF5Service.so,
libKF5Solid.so,
libKF5SonnetCore.so,
libKF5SonnetUi.so,
libKF5Style.so,
libKF5Su.so,
libKF5SyntaxHighlighting.so,
libKF5TextEditor.so,
libKF5TextWidgets.so,
libKF5ThreadWeaver.so,
libKF5UnitConversion.so,
libKF5Wallet.so,
libKF5WaylandClient.so,
libKF5WaylandServer.so,
libKF5WidgetsAddons.so,
libKF5WindowSystem.so,
libKF5XmlGui.so,
libKF5XmlRpcClient.so, and
libkwalletbackend5.so
</seg>
<seg>
/opt/kf5 (symlink to /opt/kf5-&kf5-version;) if installing in /opt
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="checkXML5">
<term><command>checkXML5</command></term>
<listitem>
<para>
is a tool to check for syntax errors in KDE DocBook XML files
</para>
<indexterm zone="kf5-frameworks checkXML5">
<primary sortas="b-checkXML5">checkXML5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="depdiagram-generate">
<term><command>depdiagram-generate</command></term>
<listitem>
<para>
is a tool to generate a dependency diagram
</para>
<indexterm zone="kf5-frameworks depdiagram-generate">
<primary sortas="b-depdiagram-generate">depdiagram-generate</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="depdiagram-generate-all">
<term><command>depdiagram-generate-all</command></term>
<listitem>
<para>
is a tool to generate a dependency diagram for all frameworks at once
</para>
<indexterm zone="kf5-frameworks depdiagram-generate-all">
<primary sortas="b-depdiagram-generate-all">depdiagram-generate-all</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="depdiagram-prepare">
<term><command>depdiagram-prepare</command></term>
<listitem>
<para>
is a tool to prepare dot files
</para>
<indexterm zone="kf5-frameworks depdiagram-prepare">
<primary sortas="b-depdiagram-prepare">depdiagram-prepare</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="desktoptojson">
<term><command>desktoptojson</command></term>
<listitem>
<para>
is a tool to convert a .desktop file to a .json file
</para>
<indexterm zone="kf5-frameworks desktoptojson">
<primary sortas="b-desktoptojson">desktoptojson</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kbuildsycoca5">
<term><command>kbuildsycoca5</command></term>
<listitem>
<para>
rebuilds the KService desktop file system configuration
cache
</para>
<indexterm zone="kf5-frameworks kbuildsycoca5">
<primary sortas="b-kbuildsycoca5">kbuildsycoca5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kcookiejar5">
<term><command>kcookiejar5</command></term>
<listitem>
<para>
is a command line interface to the HTTP cookie store used by KDE,
a D-BUS service to store/retrieve/clean cookies
</para>
<indexterm zone="kf5-frameworks kcookiejar5">
<primary sortas="b-kcookiejar5">kcookiejar5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kded5">
<term><command>kded5</command></term>
<listitem>
<para>
consolidates several small services in one process
</para>
<indexterm zone="kf5-frameworks kded5">
<primary sortas="b-kded5">kded5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kdeinit5">
<term><command>kdeinit5</command></term>
<listitem>
<para>
is a process launcher somewhat similar to the famous init used
for booting UNIX
</para>
<indexterm zone="kf5-frameworks kdeinit5">
<primary sortas="b-kdeinit5">kdeinit5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kf5-config">
<term><command>kf5-config</command></term>
<listitem>
<para>
is a command line program used to retrieve information about
KDE installation or user paths
</para>
<indexterm zone="kf5-frameworks kf5-config">
<primary sortas="b-kf5-config">kf5-config</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kf5kross">
<term><command>kf5kross</command></term>
<listitem>
<para>
executes kross scripts written in KDE Javascript, Python, Ruby,
Java and Falcon
</para>
<indexterm zone="kf5-frameworks kf5kross">
<primary sortas="b-kf5kross">kf5kross</primary>
</indexterm>
</listitem>
</varlistentry>
<!--
<varlistentry id="kgenapidox">
<term><command>kgenapidox</command></term>
<listitem>
<para>
is a tool to generate API documentation in the KDE style.
</para>
<indexterm zone="kf5-frameworks kgenapidox">
<primary sortas="b-kgenapidox">kgenapidox</primary>
</indexterm>
</listitem>
</varlistentry>
-->
<varlistentry id="kgendesignerplugin">
<term><command>kgendesignerplugin</command></term>
<listitem>
<para>
generates widget plugins for Qt(TM) Designer
</para>
<indexterm zone="kf5-frameworks kgendesignerplugin">
<primary sortas="b-kgendesignerplugin">kgendesignerplugin</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kglobalaccel5">
<term><command>kglobalaccel5</command></term>
<listitem>
<para>
is a daemon use to register the key bindings and for getting
notified when the action triggered
</para>
<indexterm zone="kf5-frameworks kglobalaccel5">
<primary sortas="b-kglobalaccel5">kglobalaccel5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kjs5">
<term><command>kjs5</command></term>
<listitem>
<para>
is KDE ECMAScript/JavaScript engine
</para>
<indexterm zone="kf5-frameworks kjs5">
<primary sortas="b-kjs5">kjs5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kjscmd5">
<term><command>kjscmd5</command></term>
<listitem>
<para>
is a tool for launching KJSEmbed scripts from the command line
</para>
<indexterm zone="kf5-frameworks kjscmd5">
<primary sortas="b-kjscmd5">kjscmd5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kjsconsole">
<term><command>kjsconsole</command></term>
<listitem>
<para>
is a console for <command>kjs5</command>
</para>
<indexterm zone="kf5-frameworks kjsconsole">
<primary sortas="b-kjsconsole">kjsconsole</primary>
</indexterm>
</listitem>
</varlistentry>
<!--
<varlistentry id="kmailservice5">
<term><command>kmailservice5</command></term>
<listitem>
<para>
is a mail service.
</para>
<indexterm zone="kf5-frameworks kmailservice5">
<primary sortas="b-kmailservice5">kmailservice5</primary>
</indexterm>
</listitem>
</varlistentry>
-->
<varlistentry id="kpackagelauncherqml">
<term><command>kpackagelauncherqml</command></term>
<listitem>
<para>
is a commandline tool for launching kpackage QML application
</para>
<indexterm zone="kf5-frameworks kpackagelauncherqml">
<primary sortas="b-kpackagelauncherqml">kpackagelauncherqml</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kpackagetool5">
<term><command>kpackagetool5</command></term>
<listitem>
<para>
is a command line kpackage tool
</para>
<indexterm zone="kf5-frameworks kpackagetool5">
<primary sortas="b-kpackagetool5">kpackagetool5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kreadconfig5">
<term><command>kreadconfig5</command></term>
<listitem>
<para>
is a command line tool to retrieve values from KDE
configuration files
</para>
<indexterm zone="kf5-frameworks kreadconfig5">
<primary sortas="b-kreadconfig5">kreadconfig5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kshell5">
<term><command>kshell5</command></term>
<listitem>
<para>
start applications via kdeinit
</para>
<indexterm zone="kf5-frameworks kshell5">
<primary sortas="b-kshell5">kshell5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="ktelnetservice5">
<term><command>ktelnetservice5</command></term>
<listitem>
<para>
is a telnet service
</para>
<indexterm zone="kf5-frameworks ktelnetservice5">
<primary sortas="b-ktelnetservice5">ktelnetservice5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="ktrash5">
<term><command>ktrash5</command></term>
<listitem>
<para>
is a helper program to handle the KDE trash can
</para>
<indexterm zone="kf5-frameworks ktrash5">
<primary sortas="b-ktrash5">ktrash5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kwalletd5">
<term><command>kwalletd5</command></term>
<listitem>
<para>
is the wallet manager daemon
</para>
<indexterm zone="kf5-frameworks kwalletd5">
<primary sortas="b-kwalletd5">kwalletd5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="kwriteconfig5">
<term><command>kwriteconfig5</command></term>
<listitem>
<para>
is a command line tool to write values in KDE
configuration files
</para>
<indexterm zone="kf5-frameworks kwriteconfig5">
<primary sortas="b-kwriteconfig5">kwriteconfig5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="meinproc5">
<term><command>meinproc5</command></term>
<listitem>
<para>
converts DocBook files to HTML
</para>
<indexterm zone="kf5-frameworks meinproc5">
<primary sortas="b-meinproc5">meinproc5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="plasmapkg2">
<term><command>plasmapkg2</command></term>
<listitem>
<para>
is a tool to install, list, remove Plasma packages
</para>
<indexterm zone="kf5-frameworks plasmapkg2">
<primary sortas="b-plasmapkg2">plasmapkg2</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="preparetips5">
<term><command>preparetips5</command></term>
<listitem>
<para>
is a script to extract the text from a tips file
</para>
<indexterm zone="kf5-frameworks preparetips5">
<primary sortas="b-preparetips5">preparetips5</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="solid-hardware5">
<term><command>solid-hardware5</command></term>
<listitem>
<para>
is a command line tool to investigate available devices
</para>
<indexterm zone="kf5-frameworks solid-hardware5">
<primary sortas="b-solid-hardware5">solid-hardware5</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>