「KDE パッケージガイドライン」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
 
(2人の利用者による、間の8版が非表示)
1行目: 1行目:
 
[[Category:パッケージ開発]]
 
[[Category:パッケージ開発]]
 
[[en:KDE package guidelines]]
 
[[en:KDE package guidelines]]
  +
[[pt:KDE package guidelines]]
 
{{Package Guidelines}}
 
{{Package Guidelines}}
   
19行目: 20行目:
   
 
== インストールプレフィックス ==
 
== インストールプレフィックス ==
  +
全てのパッケージには {{Ic|CMAKE_INSTALL_PREFIX}} 変数を設定する必要がありますが、KDE のカスタムビルドも受け入れるように、以下を使って下さい:
 
  +
すべてのパッケージは、{{ic|cmake_install_prefix}} 変数を設定する必要があります。
-DCMAKE_INSTALL_PREFIX=$(kde4-config --prefix)
 
  +
パッケージを [extra] や [community] に移動したときは、以下のように変更します:
 
 
-DCMAKE_INSTALL_PREFIX=/usr
 
-DCMAKE_INSTALL_PREFIX=/usr
   
 
== ビルドタイプ ==
 
== ビルドタイプ ==
ビルドタイプを指定してください。sed ルールを使ってデバッグシンボルを付けてパッケージを再ビルドするのが簡単になります。
 
-DCMAKE_BUILD_TYPE=Release
 
   
  +
通常、ビルドタイプを指定する必要はありません。これにより、CMake は {{ic|CFLAGS}}、{{ic|CPPFLAGS}} などの環境変数を尊重するようになります。[https://lists.archlinux.org/archives/list/arch-dev-public@lists.archlinux.org/thread/ACV4TTGMC5RRSXYOO2GSI5WFLKQDBEFX/]
== Qt4 の強制 ==
 
   
  +
== Qt バージョンを強制する ==
=== KDE4 ===
 
   
  +
{{Expansion|Is this the same for Qt6?}}
{{Pkg|qt4}} と {{Pkg|qt5-base}} の両方がインストールされている環境では、`qmake` は 5.x バージョンを参照するので、以下のように Qt4 を使うように cmake を設定します:
 
export QT_SELECT=4
 
もしくは cmake で以下のオプションを使って下さい:
 
-DQT_QMAKE_EXECUTABLE=/usr/bin/qmake-qt4
 
   
  +
== KF パッケージの命名 ==
=== KF5 ===
 
   
  +
{{Note|1=まだ [https://wiki.archlinux.org/index.php?title=KDE_package_guidelines&oldid=356370 古い KDE4 の命名規則] を使用しているパッケージがあります: [https://aur.archlinux.org/packages?K=kdeplasma-applets&SeB=n kdeplasma-applets-*]、[https://aur.archlinux.org/packages?K=kde-servicemenus&SeB=n kde-servicemenus-*]
KDE4 と同じように、KF5 の場合は Qt4 の代わりに Qt5 を使うように cmake を設定してください:
 
   
  +
これらは名前を変更するか削除する必要があります。一部のパッケージは、KDE4 の命名規則すら守っていません。いくつかの例: [https://aur.archlinux.org/packages?K=theme+kde kde theme]、[https://aur.archlinux.org/packages?K=plasma-runners plasma-runners]
export QT_SELECT=5
 
   
  +
また、いくつかの古くなった kf5 関連のパッケージもあります:[https://aur.archlinux.org/packages?K=plasma5-applets plasma5-applets]、[https://aur.archlinux.org/packages?K=plasma5-runners plasma5-runners]、[https://aur.archlinux.org/packages?K=kf5-servicemenus kf5-servicemenus]、[https://aur.archlinux.org/packages?K=plasma5-themes plasma5-themes]
== KDE4 パッケージの命名 ==
 
   
  +
パッケージ名を変更するには、パッケージページで "Submit Request" を選択し、リクエストタイプで "Merge" を選んでください。
=== KDE Config Module ===
 
  +
}}
KDE Config Module パッケージの名前は {{Ic|kcm-''module''}} としてください。
 
   
 
=== Plasma ウィジェット ===
 
=== Plasma ウィジェット ===
  +
Plasma ウィジェット (旧名 Plasmoid) パッケージの名前は {{Ic|kdeplasma-applets-''widgetname''}} として [[KDE]] 関連のパッケージだとわかるようにしてください。公式パッケージと見分けるのにも役立ちます。
 
  +
Plasma ウィジェット(以前の Plasmoids)パッケージは、{{ic|plasma6-applets-''widgetname''}} という名前にするべきです。これにより、Plasma 6 関連のパッケージとして認識され、公式パッケージとの差別化ができます。[https://aur.archlinux.org/packages?K=plasma6-applets plasma6-applets の例] を参照してください。
   
 
=== ランナー ===
 
=== ランナー ===
  +
Plasma の runners パッケージの名前は {{Ic|kdeplasma-runners-''runnername''}} として [[KDE]] 関連のパッケージだとわかるようにしてください。公式パッケージと見分けるのにも役立ちます。
 
  +
Plasmaランナーパッケージは、{{ic|plasma6-runners-''runnername''}} という名前にするべきです。これにより、Plasma 6 関連のパッケージとして認識され、公式パッケージとの差別化ができます。[https://aur.archlinux.org/packages?K=plasma6-runners plasma6-runners の例] を参照してください。
   
 
=== サービスメニュー ===
 
=== サービスメニュー ===
  +
サービスメニューのパッケージは {{Ic|kde-servicemenus-''servicename''}} として [[KDE]] 関連のパッケージだとわかるようにしてください。
 
  +
サービスメニューパッケージは、{{ic|kf6-servicemenus-''servicename''}} という名前にするべきです。これにより、KF6 関連のパッケージとして認識されます。[https://aur.archlinux.org/packages?K=kf6-servicemenus kf6-servicemenus の例] を参照してください。
   
 
=== テーマ ===
 
=== テーマ ===
Plasma テーマのパッケージ名は {{Ic|kdeplasma-themes-''themename''}} として [[KDE]] 関連のパッケージだとわかるようにしてください。
 
   
  +
Plasma テーマパッケージは、{{ic|plasma6-themes-''themename''}}という名前にするべきです。これにより、Plasma 6 関連のパッケージとして認識されます。[https://aur.archlinux.org/packages?K=plasma6-themes plasma6-themes の例] を参照してください。
== KF5 パッケージの命名 ==
 
 
=== Plasma ウィジェット ===
 
Plasma ウィジェット (旧名 Plasmoid) パッケージは {{Ic|plasma5-applets-''widgetname''}} として [[Plasma]] 関連のパッケージだとわかるようにしてください。公式パッケージと見分けるのにも役立ちます。
 
 
=== ランナー ===
 
Plasma ランナーパッケージは {{Ic|plasma5-runners-''runnername''}} として [[Plasma]] 関連のパッケージだとわかるようにしてください。公式パッケージと見分けるのにも役立ちます。
 
 
=== サービスメニュー ===
 
サービスメニューパッケージは {{Ic|kf5-servicemenus-''servicename''}} として [[Plasma|KF5]] 関連のパッケージだとわかるようにしてください。
 
 
=== テーマ ===
 
Plasma テーマパッケージは {{Ic|plasma5-themes-''themename''}} として [[Plasma]] 関連のパッケージだとわかるようにしてください。
 
   
== .install ファイル ==
+
== アイコンと .desktop ファイルのインストール ==
大抵の [[KDE]] パッケージでは、{{Ic|.install}} ファイルはどれもほとんど同じです。hicolor アイコンテーマにアイコンをインストールするパッケージもあります。({{Pkg|qt4}} の依存パッケージとなっている) {{Pkg|xdg-utils}} パッケージに含まれている {{Ic|xdg-icon-resource}} ユーティリティを使用します。以下のコマンドを使って下さい:
 
xdg-icon-resource forceupdate --theme hicolor &> /dev/null
 
   
  +
一部の [[KDE]] ソフトウェアは、hicolor テーマのアイコンと {{ic|.desktop}} ファイルを提供しており、これらは [[pacman フック]] 経由でインストールする必要があります。{{ic|.install}} でこれらのタイプのファイルに対してインストールコマンドを使用しないでください。不要な二重実行が発生する可能性があります。
多くのパッケージでは Freedesktop.org 互換の {{Ic|.desktop}} ファイルをインストールして MimeType エントリを登録します。{{Ic|post_install}} で {{Ic|update-desktop-database}} を実行することを推奨します。このツールは ({{Pkg|qt4}} の依存パッケージとなっている) {{Pkg|desktop-file-utils}} パッケージに含まれています。以下のコマンドを使って下さい:
 
update-desktop-database -q
 

2025年2月10日 (月) 02:26時点における最新版

Arch Linux の KDE パッケージは特定の形式に従っています。

ビルドディレクトリ

CMake パッケージをビルドするときはプロジェクトのルート以外にビルドディレクトリを作成して、そのディレクトリから cmake を実行することが推奨されます。この場合 PKGBUILD は以下のようになります:

prepare() {
  mkdir -p build
}

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

インストールプレフィックス

すべてのパッケージは、cmake_install_prefix 変数を設定する必要があります。

-DCMAKE_INSTALL_PREFIX=/usr

ビルドタイプ

通常、ビルドタイプを指定する必要はありません。これにより、CMake は CFLAGSCPPFLAGS などの環境変数を尊重するようになります。[1]

Qt バージョンを強制する

この記事またはセクションは加筆を必要としています。
理由: Is this the same for Qt6? (議論: トーク:KDE パッケージガイドライン#)

KF パッケージの命名

ノート: まだ 古い KDE4 の命名規則 を使用しているパッケージがあります: kdeplasma-applets-*kde-servicemenus-*

これらは名前を変更するか削除する必要があります。一部のパッケージは、KDE4 の命名規則すら守っていません。いくつかの例: kde themeplasma-runners

また、いくつかの古くなった kf5 関連のパッケージもあります:plasma5-appletsplasma5-runnerskf5-servicemenusplasma5-themes

パッケージ名を変更するには、パッケージページで "Submit Request" を選択し、リクエストタイプで "Merge" を選んでください。

Plasma ウィジェット

Plasma ウィジェット(以前の Plasmoids)パッケージは、plasma6-applets-widgetname という名前にするべきです。これにより、Plasma 6 関連のパッケージとして認識され、公式パッケージとの差別化ができます。plasma6-applets の例 を参照してください。

ランナー

Plasmaランナーパッケージは、plasma6-runners-runnername という名前にするべきです。これにより、Plasma 6 関連のパッケージとして認識され、公式パッケージとの差別化ができます。plasma6-runners の例 を参照してください。

サービスメニュー

サービスメニューパッケージは、kf6-servicemenus-servicename という名前にするべきです。これにより、KF6 関連のパッケージとして認識されます。kf6-servicemenus の例 を参照してください。

テーマ

Plasma テーマパッケージは、plasma6-themes-themenameという名前にするべきです。これにより、Plasma 6 関連のパッケージとして認識されます。plasma6-themes の例 を参照してください。

アイコンと .desktop ファイルのインストール

一部の KDE ソフトウェアは、hicolor テーマのアイコンと .desktop ファイルを提供しており、これらは pacman フック 経由でインストールする必要があります。.install でこれらのタイプのファイルに対してインストールコマンドを使用しないでください。不要な二重実行が発生する可能性があります。