KDE 软件打包准则
32 位 – CLR – CMake – Cross – DKMS – Eclipse – Electron – Font – Free Pascal – GNOME – Go – Haskell – Java – KDE – 内核模块 – Lisp – Meson – MinGW – Node.js – Nonfree – OCaml – Perl – PHP – Python – R – Ruby – Rust – VCS – Web – Wine
Arch Linux 上的 KDE 软件包符合特定的模式。
构建目录[编辑 | 编辑源代码]
构建 CMake 软件包的推荐做法是在项目根目录之外新建一个构建目录,并从该目录运行 cmake。PKGBUILD 应如下所示:
prepare() { mkdir -p build } build() { cd build cmake ../${pkgname}-${pkgver} }
安装所需的前缀参数[编辑 | 编辑源代码]
每个软件包都必须设置 CMAKE_INSTALL_PREFIX
变量,但考虑到 KDE 的自定义构建版本,请使用以下参数:
-DCMAKE_INSTALL_PREFIX=$(kf5-config --prefix)
当软件包被移动到 extra 仓库时,上述参数应改为:
-DCMAKE_INSTALL_PREFIX=/usr
构建类型[编辑 | 编辑源代码]
一般来说不应指定构建类型,这样能使 CMake 接受 CFLAGS
、CPPFLAGS
等环境变量。[1]
强制指定 Qt 版本[编辑 | 编辑源代码]
KF5 软件包命名[编辑 | 编辑源代码]
Plasma 挂件[编辑 | 编辑源代码]
Plasma 挂件 (之前名为 Plasmoids) 软件包应当被命名为 plasma5-applets-widgetname
,这样能被识别为与 Plasma 5 相关的软件包,且易于与官方软件包区分。
Runners[编辑 | 编辑源代码]
Plasma runners 软件包应当被命名为 plasma5-runners-runnername
,这样能被识别为与 Plasma 5 相关的软件包,且易于与官方软件包区分。
服务菜单[编辑 | 编辑源代码]
服务菜单软件包应当被命名为 kf5-servicemenus-servicename
,这样能被识别为与 KF5 相关的软件包。
主题[编辑 | 编辑源代码]
Plasma 主题软件包应当被命名为 plasma5-themes-themename
,这样能被识别为与 Plasma 5 相关的软件包。
图标和 .desktop 文件安装[编辑 | 编辑源代码]
一些 KDE 软件在 hicolor 图标主题和 .desktop
文件中提供了图标(必须通过 pacman 钩子安装)。应当避免在 .install
中对这些类型的文件使用安装命令,因为这将导致不必要的重复执行。