glfs/kde/kf5/kf5-frameworks.xml
Pierre Labastie dbde43bf19 Fix building kf5 with qt-5.15.1
In the "purpose" package, there is a line, which is only compiled
if Qt5 version is less or equal to 5.15.0. The reason is that it
uses an obsolete function. The problem is that the replacement
function has not been implemented yet even in 5.15.1. This generates
an error:
‘class QLocalSocket’ has no member named ‘socketError’
So change the test so that the line is compiled if version is
less than 5.16.0 (using a sed)...


git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@23714 af4574ff-66df-0310-9fd7-8a98e5e911e0
2020-09-15 14:50:44 +00:00

839 lines
29 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!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 patches.ent
<!ENTITY kf5-download-http "&kf5-download-http;"> -->
<!ENTITY kf5-download-ftp " ">
<!ENTITY kf5-md5sum "See Below">
<!ENTITY kf5-size "265 MB">
<!ENTITY kf5-buildsize "1.2 GB (237 MB installed)">
<!ENTITY kf5-time "17 SBU (using parallelism=4)">
]>
<sect1 id="kf5-frameworks" xreflabel="KDE Frameworks-&kf5-version;">
<?dbhtml filename="krameworks5.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<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>
&lfs10_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="libjpeg"/>,
<xref linkend="libpng"/>,
<xref linkend="libxslt"/>,
<xref linkend="lmdb"/>,
<!--<xref linkend="openssl10"/>,-->
<!--<xref linkend="qtwebkit5"/>,-->
<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="NetworkManager"/> (needed to build NetworkManager-Qt), 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),
<xref linkend="ModemManager"/> (needed to build ModemManager-Qt)
</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">Runtime dependencies for kapidox</bridgehead>
<para role="optional">
<xref role="runtime" linkend="doxygen"/>,
<xref role="runtime" linkend="Jinja2"/>, and
<xref role="runtime" linkend="PyYAML"/>
</para>
<bridgehead renderas="sect4">Additional image formats support in KImageFormats</bridgehead>
<para role="optional">
<xref linkend="jasper"/> and
<ulink url="http://www.openexr.com/">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="http://www.freedesktop.org/software/media-player-info/">media-player-info</ulink> (runtime)
</para>
<bridgehead renderas="sect4">Optional dependency for KWallet</bridgehead>
<para role="optional">
<ulink url="&kf5apps-download-http;">gpgmepp</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="http://hunspell.sourceforge.net/">Hunspell</ulink>
</para>
<bridgehead renderas="sect4">Required dependencies for Prison</bridgehead>
<para role="optional">
<!-- Leaving as optional since these are external -->
<ulink url="http://libdmtx.sourceforge.net/">Datamatrix</ulink> and
<ulink url="https://fukuchi.org/works/qrencode/">QRencode</ulink>
</para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/kf5"/></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=http://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>
<screen><userinput>cat &gt; frameworks-&kf5-version;.md5 &lt;&lt; "EOF"
<literal>c33040192815708c5f075b1dbd01a2be attica-5.73.0.tar.xz
#3a3b7489583b9b412ff18316b7ab2912 extra-cmake-modules-5.73.0.tar.xz
342ec19fd7e65cafd3d58220f144ebc8 kapidox-5.73.0.tar.xz
33de1f53ec53e7112396ded8c3306d02 karchive-5.73.0.tar.xz
03107a85b830b212e268f51cf2cbe668 kcodecs-5.73.0.tar.xz
c1d584f109de507e91a357585bccd445 kconfig-5.73.0.tar.xz
f3e0b26a1b63fee56fb74b1bf972aac2 kcoreaddons-5.73.0.tar.xz
f6668c75a63f2b62997bde8c644244d0 kdbusaddons-5.73.0.tar.xz
756b06b64a324d9c930b560a6d082d06 kdnssd-5.73.0.tar.xz
7d68d806497104cd7febecdeb72b01f6 kguiaddons-5.73.0.tar.xz
b62f7fc855504f2372ee6c79a6bc40d7 ki18n-5.73.0.tar.xz
888748e6c1e7c706ab0620dd06881821 kidletime-5.73.0.tar.xz
fc9c81792d222bd82012ffea28508b09 kimageformats-5.73.0.tar.xz
c83f878fd79b5b2d03f89395d2e14986 kitemmodels-5.73.0.tar.xz
913b467848b103df05bbf95ea37ba9ec kitemviews-5.73.0.tar.xz
34fef335c2070bfa0ac7bf468add65f6 kplotting-5.73.0.tar.xz
26d211cae109afaa5bc0510e857fdf28 kwidgetsaddons-5.73.0.tar.xz
80674f9e664040a9f25e2a762473fc0f kwindowsystem-5.73.0.tar.xz
74bc1a1d23993391a481f3a4a1c016a1 networkmanager-qt-5.73.0.tar.xz
6121d847448048fe92b12264e82d8c9e solid-5.73.0.tar.xz
05a961ee1ed39e1f4d98aab99c02930e sonnet-5.73.0.tar.xz
927e8df5d6440cab69614a825e111c2d threadweaver-5.73.0.tar.xz
aa1e7532c695d9e8b6a213fa725bae1e kauth-5.73.0.tar.xz
7e5263945014cc97726ec1fd855bd331 kcompletion-5.73.0.tar.xz
40d87aa27174706e6df0b2807b114b56 kcrash-5.73.0.tar.xz
c7e7b638940c5f6abae59c1195ec37fe kdoctools-5.73.0.tar.xz
ba450e3e2edf7679b140b64f1938feb2 kpty-5.73.0.tar.xz
2df82e84a1f22dc72121490e3c325de0 kunitconversion-5.73.0.tar.xz
f4f7c5f17f829e7df2395ab1dbd7243d kconfigwidgets-5.73.0.tar.xz
22ad03ccdb3243e850ca30d16c6771f1 kservice-5.73.0.tar.xz
cf047279f13f72cd78784067fd1d6518 kglobalaccel-5.73.0.tar.xz
f39a62f40255dbe54295c72779bdbad3 kpackage-5.73.0.tar.xz
0042487aad83241f52c1116cc67fe470 kdesu-5.73.0.tar.xz
79781c58d3a8433ff8de5d5e1031cd7a kemoticons-5.73.0.tar.xz
23d7226b57acbf5be919b3848592c624 kiconthemes-5.73.0.tar.xz
3a2282e410983f1847463cb7a4d8985e kjobwidgets-5.73.0.tar.xz
b5b5b3b1482a880ca714ceac28624646 knotifications-5.73.0.tar.xz
508bdf33c3fb27bfb577d01599a69f39 ktextwidgets-5.73.0.tar.xz
1591c913577d800f03d079545c8d5411 kxmlgui-5.73.0.tar.xz
083059e5b6f2285d1e803de121d797da kbookmarks-5.73.0.tar.xz
905c9d5f68ab24af1378b6373ff2136b kwallet-5.73.0.tar.xz
3b51763b90c604f46b7be40e8e620d42 kded-5.73.0.tar.xz
9662956fa936f5784e72c56d3b92df84 kio-5.73.0.tar.xz
b7342c3e6d5d121a062a4fec0b12b440 kdeclarative-5.73.0.tar.xz
d5416a83f5fb657191943f78c3f53132 kcmutils-5.73.0.tar.xz
e48190fb43e340f4d8af0af761313ff5 kirigami2-5.73.0.tar.xz
3031ba0db06c655902c48149ebb0aa47 knewstuff-5.73.0.tar.xz
628f3ba2f966ea5853d7db7e89c1aa25 frameworkintegration-5.73.0.tar.xz
62352e83bcc895af5668ed350dfe6c9d kinit-5.73.0.tar.xz
78ed1d6c89cfc50837b339fef0d1aa42 knotifyconfig-5.73.0.tar.xz
baea3312a026f6e7d0754b1d3c87d52c kparts-5.73.0.tar.xz
83d12c191cb16343603710dd12549de9 kactivities-5.73.0.tar.xz
#7f77d7f55abc4ea9db3dd786b514ee58 kdewebkit-5.73.0.tar.xz
171ec7fbb842a65bc8c0ef8832bc1b0a syntax-highlighting-5.73.0.tar.xz
0daa36a7e0440715bb9d028e3a6a79dd ktexteditor-5.73.0.tar.xz
da21560291ac5ca797807017b690526c kdesignerplugin-5.73.0.tar.xz
cce15d3618ccf85d66dd3ce00ef119bf kwayland-5.73.0.tar.xz
3fb4c9624ccf587b9692b9f18bf8e78e plasma-framework-5.73.0.tar.xz
#f05b39b8de0e8f17acdc52d266b39f95 modemmanager-qt-5.73.0.tar.xz
87528365a0f41fa9f65a8314b2b30b64 kpeople-5.73.0.tar.xz
b279ad2c0c188540f88b5291cccd12f4 kxmlrpcclient-5.73.0.tar.xz
81e1638b9915ef293a5fcb651679b025 bluez-qt-5.73.0.tar.xz
bf2731aca806de7d9e1f57eb164dccce kfilemetadata-5.73.0.tar.xz
0ccd995814833ffeba852db8469d8ecd baloo-5.73.0.tar.xz
#335cc472ede625d4c986601fa46a0de7 breeze-icons-5.73.0.tar.xz
#1a1b69517c3e5054e8c3fc5a863424d2 oxygen-icons5-5.73.0.tar.xz
527bb4e18d0c934c4ceb6bb888e27be6 kactivities-stats-5.73.0.tar.xz
b2c41005086aa5923396b76a97654b4e krunner-5.73.0.tar.xz
#c5777bd5809f74a5595ab6b9d58c088c prison-5.73.0.tar.xz
83485bd9da3a945de012707b1ee11f03 qqc2-desktop-style-5.73.0.tar.xz
2f25ea46a7ae7ff942a3b12457710bc9 kjs-5.73.0.tar.xz
7daadf02818f6e58853e151f5a246524 kdelibs4support-5.73.0.tar.xz
c79f45f59e5ddc53359d008dc1266c63 khtml-5.73.0.tar.xz
e4bc354a2908888098e9ca17a5888bc9 kjsembed-5.73.0.tar.xz
7652778ab2e57bb49d930450650c86da kmediaplayer-5.73.0.tar.xz
9255465cc898c9e9e1afcc6876a725fd kross-5.73.0.tar.xz
ca82fa202e9b6d7ebcf6c4f5c4bdfbe5 kholidays-5.73.0.tar.xz
16746901b71655898064984c4d1bd0fd purpose-5.73.0.tar.xz
fdda5ee07fd893bca10b6e6c62ad4965 syndication-5.73.0.tar.xz
599b10ad4a5d110e996b6528b5165aeb kcalendarcore-5.73.0.tar.xz
8f4e3826b4202ad0b006a7df67b0732e kcontacts-5.73.0.tar.xz
714cedd448a555befc8da387ab5105b2 kquickcharts-5.73.0.tar.xz
766ddc42f378a4c69bf8bf9cedc18108 kdav-5.73.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-icons5"/>. The modemmanager-qt package may be built if its
optional dependency has been installed. The prison package (bar code reader)
may be built if the required external libraries are installed. The
kdewebkit 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"><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</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
<!-- the following statement may be not needed in 5.66+ -->
case $name in
kitemviews*) sed -i '/&lt;QList&gt;/a #include &lt;QPersistentModelIndex&gt;' \
src/kwidgetitemdelegatepool_p.h ;;
kplotting*) sed -i '/&lt;QHash&gt;/a #include &lt;QHelpEvent&gt;' \
src/kplotwidget.cpp ;;
knotifica*) sed -i '/&lt;QUrl&gt;/a #include &lt;QVariant&gt;' \
src/knotification.h ;;
kcompleti*) sed -i '/&lt;QClipboard&gt;/a #include &lt;QKeyEvent&gt;' \
src/klineedit.cpp ;;
kwayland*) sed -i '/&lt;wayland-xdg-output-server-proto/a #include &lt;QHash&gt;' \
src/server/xdgoutput_interface.cpp ;;
purpose*) sed -i 's/15,/16,/' \
src/externalprocess/purposeprocess_main.cpp ;;
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>
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>
<!-- the following statement may be not needed in 5.66+ -->
<para>
<command>case ...</command>: Those modifications are required to build
with <xref linkend="qt5"/>.
</para>
<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>
There are 48 programs installed in /opt/kf5/bin.
</seg>
<seg>
There are too many kf5 libraries (191) to list separately.
</seg>
<seg>
/opt/kf5 (symlink to /opt/kf5-&kf5-version;)
</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="kactivitymanagerd">
<term><command>kactivitymanagerd</command></term>
<listitem>
<para>
is the KDE Plasma Workspace Activity Manager.
</para>
<indexterm zone="kf5-frameworks kactivitymanagerd">
<primary sortas="b-kactivitymanagerd">kactivitymanagerd</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>