<?xml version="1.0" ?>
<!DOCTYPE refentry PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [
  <!ENTITY % English "INCLUDE"><!-- change language only here -->
]>

<refentry>

<refentryinfo>
<title>&kde; Frameworks: KService</title>
<author>
<firstname>Darian</firstname>
<surname>Lanx</surname>
<contrib>Wrote the original documentation.</contrib>
<affiliation>
<address><email>content@openprojects.net</email></address>
</affiliation>
</author>
<author>
<firstname>Alex</firstname>
<surname>Merry</surname>
<contrib>Updated the documentation for &kde; Frameworks 5.</contrib>
<affiliation>
<address><email>alexmerry@kde.org</email></address>
</affiliation>
</author>

<date>2014-04-01</date>
<releaseinfo>5.0</releaseinfo>

</refentryinfo>

<refmeta>
<refentrytitle><command>kbuildsycoca5</command></refentrytitle>
<manvolnum>8</manvolnum>
</refmeta>

<refnamediv>
<refname><command>kbuildsycoca5</command></refname>
<refpurpose>Rebuilds the KService desktop file system configuration cache.</refpurpose>
</refnamediv>

<refsynopsisdiv>
<title>Synopsis</title>

<cmdsynopsis>
<command>kbuildsycoca5</command>
<group choice="opt" rep="repeat"><replaceable class="option">OPTIONS</replaceable></group>
</cmdsynopsis>

</refsynopsisdiv>



<refsect1>
<title>Description</title>

<para>
<command>kbuildsycoca5</command> builds binary cache of the data stored in
<literal role="extension">.desktop</literal> and MIME type <literal
role="extension">.xml</literal> files that the KService framework uses to find
plugins, applications and other services.
</para>

<para>
The KService library uses this database to efficiently provide the information
requested of it.
</para>

<para>
Users do not normally need to run this application directly; KService will run
it if necessary, and if KDED is installed and running it will run
<command>kbuildsyscoca5</command> whenever any of the files whose data is cached
are changed.
</para>
</refsect1>



<refsect1>
<title>Options</title>
<variablelist>

<varlistentry>
<term><option>--checkstamps</option></term>
<listitem>
<para>Checks the file timestamps of the cache and the resource directories containing the data to be cached, and only updates the database if any of the resource directories have been modified more recently than the cache.  Ignored if <option>--nocheckfiles</option> or <option>--noincremental</option> is set.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--global</option></term>
<listitem>
<para>Ignores any user-set files (in <varname>XDG_DATA_HOME</varname>).  This is currently only supported on Unix systems.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--nocheckfiles</option></term>
<listitem>
<para>Does not rebuild the cache unless something other than a change in the resource files requires it (such as the format of the cache changing, or <varname>XDG_DATA_DIRS</varname> being changed on a Unix system). Ignored if <option>--global</option> is set.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--noincremental</option></term>
<listitem>
<para>Rather than using the existing cache and only updating the information that has changed or been added, start with an empty cache. Ignored if <option>--global</option> is set.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--nosignal</option></term>
<listitem>
<para>Ordinarily, <command>kbuildsyscoca5</command> sends a signal over D-Bus once the cache is updated to all the applications that use KService so that they are always working with the latest information.  This option suppresses that behaviour.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--menutest</option></term>
<listitem>
<para>Test the generation of the application menu database.  Does not actually build the cache.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--testmode</option></term>
<listitem>
<para>Use the QStandardPaths "test mode" to avoid interfering with user data.  This is intended for use with unit tests.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--track <replaceable>menu-id</replaceable></option></term>
<listitem>
<para>Track a menu ID for debugging.</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--author</option></term>
<listitem>
<para>
Show author information.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>--license</option></term>
<listitem>
<para>
Show license information.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>-h, --help</option></term>
<listitem>
<para>
Show a brief help text.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><option>-v , --version</option></term>
<listitem>
<para>
Show version information.
</para>
</listitem>
</varlistentry>

</variablelist>
</refsect1>



<refsect1>
<title>Files</title>
<variablelist>
<varlistentry>
<term><filename><varname>cachedir</varname>/ksycoca5</filename></term>
<listitem>
<para>The KService cache generated by <command>kbuildsycoca5</command>.  On Unix systems, <varname>cachedir</varname> is typically <filename class="directory">~/.config</filename></para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename><varname>cachedir</varname>/ksycoca5stamp</filename></term>
<listitem>
<para>The timestamp and other meta-information about the main cache file.  On Unix systems, <varname>cachedir</varname> is typically <filename class="directory">~/.config</filename></para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>



<refsect1>
<title>See Also</title>
<para>
<citerefentry><refentrytitle>kded5</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>kdeinit5</refentrytitle><manvolnum>8</manvolnum></citerefentry>
</para>
</refsect1>



<refsect1>
<title>Bugs</title>
<para>There are probably tons of bugs. Use <ulink url="http://bugs.kde.org">KDE's bugtracker</ulink> to report them.</para>
</refsect1>

</refentry>



