KDE package guidelines - ArchWiki

Jump to content
From ArchWiki

This article or section is out of date.

Reason: References kde4, looks really outdated in general (Discuss in Talk:KDE package guidelines)

The KDE packages on Arch Linux follow a certain schema.

## Build directory

A good way of building CMake packages is to make a build directory outside the root of the project and run cmake from that directory. The PKGBUILD should look this way:

    prepare() {
      mkdir -p build
    }

    build() {
      cd build
      cmake ../${pkgname}-${pkgver}
    }

## Install prefix

Every packages must set the `CMAKE_INSTALL_PREFIX` variable, but also we have to respect custom built versions of KDE, so please use:

    -DCMAKE_INSTALL_PREFIX=$(kde4-config --prefix)

or for KDE 5:

    -DCMAKE_INSTALL_PREFIX=$(kf5-config --prefix)

When a package is moved to extra that line must be changed to:

    -DCMAKE_INSTALL_PREFIX=/usr

## Build type

Generally you should not specify the build type; this makes CMake honor environmental variables like such as `CFLAGS`, `CPPFLAGS`, etc. [1]

## Force Qt version

This article or section needs expansion.

Reason: Is this the same for Qt6? (Discuss in Talk:KDE package guidelines)

## KF5 package naming

Note: There are still packages that are using old KDE4 naming: kdeplasma-applets-*, kde-servicemenus-*. They should be renamed or deleted.

Some packages even do not follow kde4 naming scheme. Some examples: kde theme, plasma-runners.

To rename a package, select "Submit Request" on the package page, and in request type select "Merge".

### Plasma widgets

Plasma widgets (formerly Plasmoids) packages should be named `plasma5-applets-widgetname` so that they are recognizable as Plasma 5-related packages; this also distinguishes them from the official packages. See examples.

### Runners

Plasma runners packages should be named `plasma5-runners-runnername` so that they are recognizable as Plasma 5-related packages; this also distinguishes them from the official packages. See examples.

### Service menus

Service menus packages should be named `kf5-servicemenus-servicename` so that they are recognizable as KF5-related packages. See examples.

### Themes

Plasma themes packages should be named `plasma5-themes-themename` so that they are recognizable as Plasma 5-related packages. See examples.

## Icons and .desktop files installation

Some KDE software provide icons in the hicolor icon theme and `.desktop` files, which must be installed via pacman hooks. Refrain from using installation command for these type of files in a `.install`, as it would result in unnecessary double execution of them.

Category:

- Arch package guidelines

Hidden categories:

- Pages or sections flagged with Template:Out of date
- Pages or sections flagged with Template:Expansion