Manpages - desktoptojson.8
NAME
desktoptojson - Converts a .desktop file to a .json file.
SYNOPSIS
desktoptojson –input DESKTOP-FILE –output JSON-FILE
desktoptojson { | –version | –help }
DESCRIPTION
The KService framework uses information contained in .desktop files to locate services, including plugins for Qt5-based applications and libraries. The Qt5 plugin system, however, uses JSON data embedded in the plugin itself. desktoptojson allows the information contained in a .desktop file to also be used as the embedded data for a Qt5 plugin by converting the .desktop file entries into JSON data.
The generated JSON data is a JSON object that maps the entries from the [Desktop Entry] group of the .desktop file. Any other groups are ignored. Most entries are just converted to JSON strings, but certain entries (such as Hidden and X-KDE-PluginInfo-EnabledByDefault) are known to be boolean values and converted as such, and similarly some (such as X-KDE-ServiceTypes and X-KDE-PluginInfo-Depends) are always converted to arrays of strings.
OPTIONS
*–input */DESKTOP-FILE/
The .desktop file to convert.
*–output */JSON-FILE/
The file to write the generated JSON data to.
–help
Show a brief help text.
–version
Show version information.
USAGE
Most users of this utility will use the CMake macro kservice_desktop_to_json as part of the process of building a plugin.
add_library(myplugin MODULE ${myplugin_SRCS}) kservice_desktop_to_json(myplugin myplugin.desktop)
This will produce the JSON file myplugin.json, which can be referenced from the K_PLUGIN_FACTORY_WITH_JSON or Q_PLUGIN_METADATA macros.
BUGS
Please use KDEs bugtracker[1] to report bugs.
AUTHORS
Scarlett Clark <scarlett@scarlettgatelyclark.com>
Wrote the original documentation.
Alex Merry <alexmerry@kde.org>
Edited the documentation.
NOTES
- 1.
KDE’s bugtracker