「設定 - デスクトップエントリ」の版間の差分
細 Wiki がページ「デスクトップエントリファイルの作成方法」を「設定 - デスクトップエントリ」に、リダイレクトを残さずに移動しました |
編集の要約なし |
||
| 46行目: | 46行目: | ||
デスクトップエントリファイルは、デスクトップアイコン経由で実行するアプリに関する情報をまとめたファイルである。<br> | デスクトップエントリファイルは、デスクトップアイコン経由で実行するアプリに関する情報をまとめたファイルである。<br> | ||
拡張子は.desktopであり、格納先は3箇所存在する。<br> | 拡張子は.desktopであり、格納先は3箇所存在する。<br> | ||
<br> | <br> | ||
~/.local/share/applications (個別ユーザ向け) | |||
touch | /usr/share/applications (全ユーザ向け パッケージ管理システムでのインストール) | ||
/usr/local/share/applications (全ユーザ向け パッケージ管理システム外でのインストール) | |||
# | <br> | ||
ここでは、~/.local/share/applicationsディレクトリにorg.hoge.desktopファイルを作成する。<br> | |||
touch ~/.local/share/applications/org.hoge.desktop | |||
<br> | |||
<syntaxhighlight lang="ini"> | |||
# ~/.local/share/applications/org.hoge.desktopファイル | |||
[Desktop Entry] | [Desktop Entry] | ||
Type=Application # アプリケーションのショートカットである事を意味する | Type=Application # アプリケーションのショートカットである事を意味する | ||
Name=hoge application # アプリケーション名 | Name=hoge application # アプリケーション名 | ||
Comment=Sample Application # アプリケーションの説明文 (ツールチップ) | |||
Comment=Sample Application # アプリケーションの説明文(ツールチップ) | Exec=/usr/bin/hoge # 実行対象のアプリケーションのパス | ||
Icon=hoge.png # アイコン画像ファイルのパス | |||
Encoding=UTF-8 # 文字コード | Encoding=UTF-8 # 文字コード | ||
Categories=Application;Develop; # アプリケーションの分類 | |||
Terminal=false # アプリケーションをターミナルで実行するかどうか | Terminal=false # アプリケーションをターミナルで実行するかどうか | ||
</syntaxhighlight> | |||
<br> | <br> | ||
下表に、デスクトップエントリのキーを示す。<br> | |||
<center> | <center> | ||
{| class="wikitable | {| class="wikitable" | ||
|- | |- | ||
! | ! デスクトップエントリキー !! 説明 | ||
! | |||
|- | |- | ||
| Type || 項目のタイプを指定する。<br> | | Type || 項目のタイプを指定する。<br> | ||
| 78行目: | 79行目: | ||
| Name || アプリケーション名やメニュー上の項目名 | | Name || アプリケーション名やメニュー上の項目名 | ||
|- | |- | ||
| GenericName || アプリケーションがどのようなものかを示す名称(例 : Firefoxの場合は、Web Browser等) | | GenericName || アプリケーションがどのようなものかを示す名称 (例 : Firefoxの場合は、Web Browser等) | ||
|- | |- | ||
| Version || アプリケーションのバージョン | | Version || アプリケーションのバージョン | ||
|- | |- | ||
| Comment || アプリケーションの説明文(ツールチップ) | | Comment || アプリケーションの説明文 (ツールチップ) | ||
|- | |- | ||
| Exec || 実行対象のアプリケーション(実行ファイル)のパス | | Exec || 実行対象のアプリケーション (実行ファイル) のパス | ||
|- | |- | ||
| Icon || アイコンのファイル名を指定する。<br>freedesktop.org仕様の場合は、ファイル名のパス、ファイル拡張子は指定しない。<br>ただし、freedesktop.org仕様に則っていないディレクトリに画像を格納した場合、拡張子を含むフルパスを指定する。 | | Icon || アイコンのファイル名を指定する。<br>freedesktop.org仕様の場合は、ファイル名のパス、ファイル拡張子は指定しない。<br>ただし、freedesktop.org仕様に則っていないディレクトリに画像を格納した場合、拡張子を含むフルパスを指定する。 | ||
|- | |- | ||
| Encoding || デスクトップエントリの文字コードを指定する。( | | Encoding || デスクトップエントリの文字コードを指定する。(通常は、UTF-8を指定) | ||
|- | |- | ||
| Terminal || Execキーで指定したコマンドをターミナルで実行するかどうかを指定する。<br> | | Terminal || Execキーで指定したコマンドをターミナルで実行するかどうかを指定する。<br><br>true : ターミナルを使用<br>false : ターミナルを使用しない | ||
|- | |- | ||
| Categories || アプリケーションの分類を指定する。<br>;(セミコロン)区切りで複数指定できる。<br>Categoriesの一覧を下表に後述する。 | | Categories || アプリケーションの分類を指定する。<br>;(セミコロン)区切りで複数指定できる。<br>Categoriesの一覧を下表に後述する。 | ||
|- | |||
| TryExec || プログラムがシステムにインストールされているかをテストするための実行ファイルのパスを指定する。<br>絶対パスでない場合は、環境変数 <code>$PATH</code> から検索される。<br>ファイルが存在しないか実行可能でない場合、デスクトップエントリは無視される。(メニューに表示されない等)<br><br>値の型 : string<br>例 : <u>TryExec=/usr/bin/firefox</u>、<u>TryExec=gimp</u> | |||
|- | |||
| Keywords || アプリケーションの検索・発見を補助するためのキーワードのリストを指定する。<br>;(セミコロン)区切りで複数指定できる。<br>ローカライズ可能である。(例 : <u>Keywords[ja]=画像;編集;描画</u>)<br>ランチャー等の検索機能で使用され、UIには直接表示されない。<br>NameキーやGenericNameキーと重複する値を含めるべきではない。<br><br>値の型 : localestring(s)<br>例 : <u>Keywords=text;editor;document;writing</u> | |||
|- | |||
| MimeType || アプリケーションがサポートするMIMEタイプを指定する。<br>;(セミコロン)区切りで複数指定できる。<br>ファイルマネージャ等がファイルを開く際に適切なアプリケーションを選択するために参照される。<br><br>値の型 : string(s)<br>例 : <u>MimeType=text/plain;text/x-python;application/x-sh</u>、<u>MimeType=image/jpeg;image/png;image/gif</u> | |||
|- | |||
| StartupNotify || アプリケーションがStartup Notification Protocolに対応しているかどうかを指定する。<br>trueの場合、アプリケーションは <code>DESKTOP_STARTUP_ID</code> 環境変数が設定された状態で起動され、起動完了時にremoveメッセージを送信する。<br>デスクトップ環境はこの信号に基づいてカーソル変更やスプラッシュスクリーン等のユーザフィードバックを提供する。<br>GTK+やQt等のツールキットを使用するアプリケーションは通常trueを指定する。<br><br>値の型 : boolean | |||
|- | |||
| StartupWMClass || アプリケーションがウインドウにマッピングするWMクラスまたはWM名のヒント文字列を指定する。<br>デスクトップ環境がウインドウを正しいアプリケーションに関連付けるために使用される。<br>StartupNotify=trueの場合に特に重要である。<br>正確な値は<code>xprop WM_CLASS</code>コマンド等で確認できる。<br><br>値の型 : string<br>例 : <u>StartupWMClass=firefox</u>、<u>StartupWMClass=code</u> | |||
|} | |} | ||
</center> | </center> | ||
| 100行目: | 111行目: | ||
{| class="wikitable" | style="background-color:#fefefe;" | {| class="wikitable" | style="background-color:#fefefe;" | ||
|- | |- | ||
! | ! Categoriesキーの種類 !! 説明 | ||
! | |||
|- | |- | ||
| AudioVideo || プレゼンテーション・作成・加工を行うマルチメディア用アプリケーション | | AudioVideo || プレゼンテーション・作成・加工を行うマルチメディア用アプリケーション | ||
| 134行目: | 144行目: | ||
== フィールドコード == | == フィールドコード == | ||
コマンドラインには、1つの%fや%u等のフィールドコードを含めることができる。<br> | コマンドラインには、1つの%fや%u等のフィールドコードを含めることができる。<br> | ||
<br> | |||
ソフトウェアがファイルを開いてはいけない場合、%f、%u、%F、%U等のフィールドコードをコマンドラインから削除する必要がある。<br> | ソフトウェアがファイルを開いてはいけない場合、%f、%u、%F、%U等のフィールドコードをコマンドラインから削除する必要がある。<br> | ||
また、フィールドコードは、引用された引数の中で使用してはならない。<br> | また、フィールドコードは、引用された引数の中で使用してはならない。<br> | ||
| 142行目: | 153行目: | ||
|+ フィールドコードの説明 | |+ フィールドコードの説明 | ||
|- | |- | ||
! | ! フィールドコード !! 説明 | ||
! | |||
|- | |- | ||
| %f || 複数のファイルが選択されていても、単一のファイル名(パスを含む)として認識する。<br> | | %f || 複数のファイルが選択されていても、単一のファイル名(パスを含む)として認識する。<br>また、ファイルがローカルシステム上に存在しない場合(HTTPやFTPにある場合)、<br>ファイルはローカルシステムにコピーされて、%fは一時ファイルを指すように展開される。<br>これは、URL構文を処理できないソフトウェアで使用される。 | ||
|- | |- | ||
| %F || 複数のローカルファイルを1度に開くことができるソフトウェアに使用する。<br>各ファイルは、別の引数としてソフトウェアに渡される。 | | %F || 複数のローカルファイルを1度に開くことができるソフトウェアに使用する。<br>各ファイルは、別の引数としてソフトウェアに渡される。 | ||
| 157行目: | 167行目: | ||
| %c || デスクトップエントリのNameキーに記述されているソフトウェア名に別名を設定する。 | | %c || デスクトップエントリのNameキーに記述されているソフトウェア名に別名を設定する。 | ||
|- | |- | ||
| %k || デスクトップファイルの場所を、URI(vfolderシステムから取得した場合等) | | %k || デスクトップファイルの場所を、URI (vfolderシステムから取得した場合等) または ローカルファイル名で指定する。 | ||
|- | |- | ||
| %d || 非推奨 | | %d || 非推奨 | ||
| 175行目: | 185行目: | ||
== デスクトップファイルデータベースの更新 == | == デスクトップファイルデータベースの更新 == | ||
デスクトップファイルデータベースの更新は、[Alt]キー + [F2]キーを押下後、[ | デスクトップファイルデータベースの更新は、[Alt]キー + [F2]キーを押下後、[R]キーを押下するる。<br> | ||
デスクトップエントリファイルを作成または更新した場合は、必ず実行する必要がある。<br> | |||
<br><br> | <br><br> | ||
== GUIでデスクトップアイコンを追加する方法 == | == GUIでデスクトップアイコンを追加する方法 == | ||
デスクトップ画面で右クリックすれば、[新しいLauncherを追加]する旨の選択肢がある。<br> | デスクトップ画面で右クリックすれば、[新しいLauncherを追加]する旨の選択肢がある。<br> | ||
<br> | |||
それを選択した後、起動対象のアプリケーション情報を入力する画面が表示されるので、<br> | それを選択した後、起動対象のアプリケーション情報を入力する画面が表示されるので、<br> | ||
この画面上で必須項目を入力すれば、デスクトップエントリファイルを作成しなくてもデスクトップアイコンが作成できる。<br> | この画面上で必須項目を入力すれば、デスクトップエントリファイルを作成しなくてもデスクトップアイコンが作成できる。<br> | ||
<br><br> | <br><br> | ||
== WMClassの値を確認する方法 == | |||
デスクトップエントリファイルのStartupWMClassキーに設定する値は、対象アプリケーションのウインドウから取得する必要がある。<br> | |||
<br> | |||
==== X11環境の場合 ==== | |||
X11環境では、<code>xprop</code> コマンドを使用してWMClassの値を確認できる。<br> | |||
<br> | |||
<code>xprop WM_CLASS</code> コマンドを実行すると、カーソルが十字に変化するので、対象のウインドウをクリックする。<br> | |||
xprop WM_CLASS | |||
<br> | |||
# 出力例 | |||
WM_CLASS(STRING) = "navigator", "firefox" | |||
<br> | |||
1番目の値はインスタンス名、2番目の値はクラス名である。<br> | |||
StartupWMClassキーには、2番目のクラス名を指定する。(上記の例では、firefox)<br> | |||
<br> | |||
また、アクティブなウインドウを自動的に指定する場合は、<code>xdotool</code> コマンドと組み合わせて使用する。<br> | |||
xprop -id $(xdotool getwindowfocus) WM_CLASS | |||
<br> | |||
==== Wayland環境の場合 ==== | |||
Wayland環境では、X11の <code>WM_CLASS</code> に相当するものとして、<code>app_id</code> が使用される。<br> | |||
ただし、XWayland上で動作するアプリケーションの場合は、従来のWM_CLASSが使用される。<br> | |||
<br> | |||
使用するコンポジタによって確認方法が異なる。<br> | |||
<br> | |||
===== GNOME (Mutter) ===== | |||
Looking Glassを使用して確認する。<br> | |||
<br> | |||
[Alt] + [F2]キーを押下して、<code>lg</code> と入力してLooking Glassを起動する。<br> | |||
[Windows]タブを選択すると、開いているウインドウの一覧が表示され、各ウインドウの <code>wm_class</code> の値を確認できる。<br> | |||
<br> | |||
===== KDE Plasma (KWin) ===== | |||
以下のいずれかの方法で確認する。<br> | |||
<br> | |||
* システム設定のウインドウルール | |||
*: [システム設定] - [ウインドウの管理] - [ウインドウルール]を開き、[ウインドウプロパティを検出]ボタンを押下する。 | |||
*: 対象のウインドウをクリックすると、ウインドウクラス等のプロパティが表示される。 | |||
*: <br> | |||
* kdotoolコマンド | |||
*: KDE環境向けのxdotool相当ツールであり、ウインドウのプロパティを取得できる。 | |||
<br> | |||
===== Sway / wlroots系 ===== | |||
<code>swaymsg</code> コマンドを使用してウインドウツリーの情報を取得する。<br> | |||
swaymsg -t get_tree | |||
<br> | |||
<code>jq</code> コマンドでフィルタリングして、<code>app_id</code> と <code>class</code> の値を確認する。<br> | |||
swaymsg -t get_tree | jq '..|select(.type=="con")?|{app_id, class}' | |||
<br> | |||
Waylandネイティブアプリケーションの場合は、<code>app_id</code> フィールドに値が設定される。<br> | |||
XWaylandアプリケーションの場合は、<code>class</code> フィールドに値が設定される。(XWaylandアプリケーションの <code>app_id</code> は <u>null</u> になる)<br> | |||
<br> | |||
===== Hyprland ===== | |||
<code>hyprctl</code> コマンドを使用してウインドウ情報を取得する。<br> | |||
hyprctl clients | |||
<br> | |||
出力には各ウインドウの <code>class</code> フィールドが含まれており、その値をStartupWMClassキーに使用する。<br> | |||
<br><br> | |||
{{#seo: | |||
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki | |||
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,電気回路,電子回路,基板,プリント基板 | |||
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux | |||
|image=/resources/assets/MochiuLogo_Single_Blue.png | |||
}} | |||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]] | [[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]] | ||
2026年2月22日 (日) 01:27時点における版
概要
ここでは、Linuxにインストールしたアプリケーションソフトウェアのショートカットを作成する場合、
デスクトップアイコン(ショートカット)を用意する方法を記載する。
Linuxのデスクトップ環境(GNOMEやKDE等)が複数存在するが、手順はX Window System環境であれば同様である。
その理由は、デスクトップアイコン(ショートカット)の仕様が、freedesktop.orgによって定められているためである。
デスクトップアイコンを用意するまでの手順は以下の通りである。
- デスクトップアイコンの準備
- デスクトップアイコン経由で実行するアプリの準備
- デスクトップエントリファイルの作成
- デスクトップファイルデータベースを更新
デスクトップアイコンの準備
デスクトップアイコンは、freedesktop.orgによって拡張子やサイズの仕様が定められている。
拡張子は、PNG(推奨)、SVG(オプション)、XPM(下位互換、非推奨)のいずれかである。
サイズに関しては、推奨フォーマットのPNGのみを以下に一覧を示す。
PNG形式のアイコンサイズ
- 48×48
- 64×64
- 72×72
- 96×96
- 128×128
- 192×192
- 256×256
- 512×512
- 1024×1024
アイコン画像ファイルの格納先は3箇所存在する。
$Sizeの箇所は、アイコン画像のサイズによってディレクトリ名を変更する。(48×48の場合 : $Size=48×48、512×512の場合 : $Size=512×512)
/home/ユーザ名/.local/share/icons/hicolor/$Size/apps (個別ユーザ向け) /usr/share/icons/hicolor/$Size/apps (全ユーザ向け パッケージ管理システムでのインストール) /usr/local/share/icons/hicolor/$Size/apps (全ユーザ向け パッケージ管理システム外でのインストール)
また、/usr/share/icons/hicolorディレクトリを確認すれば、自分の環境がどのサイズの画像に対応しているかが分かる。
ls /usr/share/icons/hicolor/ 1024x1024 16x16 20x20 24x24 32x32 40x40 48x48 64x64 8x8 icon-theme.cache scalable 128x128 192x192 22x22 256x256 36x36 42x42 512x512 72x72 96x96 index.theme symbolic
デスクトップエントリファイルの作成
デスクトップエントリファイルは、デスクトップアイコン経由で実行するアプリに関する情報をまとめたファイルである。
拡張子は.desktopであり、格納先は3箇所存在する。
~/.local/share/applications (個別ユーザ向け) /usr/share/applications (全ユーザ向け パッケージ管理システムでのインストール) /usr/local/share/applications (全ユーザ向け パッケージ管理システム外でのインストール)
ここでは、~/.local/share/applicationsディレクトリにorg.hoge.desktopファイルを作成する。
touch ~/.local/share/applications/org.hoge.desktop
# ~/.local/share/applications/org.hoge.desktopファイル
[Desktop Entry]
Type=Application # アプリケーションのショートカットである事を意味する
Name=hoge application # アプリケーション名
Comment=Sample Application # アプリケーションの説明文 (ツールチップ)
Exec=/usr/bin/hoge # 実行対象のアプリケーションのパス
Icon=hoge.png # アイコン画像ファイルのパス
Encoding=UTF-8 # 文字コード
Categories=Application;Develop; # アプリケーションの分類
Terminal=false # アプリケーションをターミナルで実行するかどうか
下表に、デスクトップエントリのキーを示す。
| デスクトップエントリキー | 説明 |
|---|---|
| Type | 項目のタイプを指定する。
|
| Name | アプリケーション名やメニュー上の項目名 |
| GenericName | アプリケーションがどのようなものかを示す名称 (例 : Firefoxの場合は、Web Browser等) |
| Version | アプリケーションのバージョン |
| Comment | アプリケーションの説明文 (ツールチップ) |
| Exec | 実行対象のアプリケーション (実行ファイル) のパス |
| Icon | アイコンのファイル名を指定する。 freedesktop.org仕様の場合は、ファイル名のパス、ファイル拡張子は指定しない。 ただし、freedesktop.org仕様に則っていないディレクトリに画像を格納した場合、拡張子を含むフルパスを指定する。 |
| Encoding | デスクトップエントリの文字コードを指定する。(通常は、UTF-8を指定) |
| Terminal | Execキーで指定したコマンドをターミナルで実行するかどうかを指定する。 true : ターミナルを使用 false : ターミナルを使用しない |
| Categories | アプリケーションの分類を指定する。 ;(セミコロン)区切りで複数指定できる。 Categoriesの一覧を下表に後述する。 |
| TryExec | プログラムがシステムにインストールされているかをテストするための実行ファイルのパスを指定する。 絶対パスでない場合は、環境変数 $PATH から検索される。ファイルが存在しないか実行可能でない場合、デスクトップエントリは無視される。(メニューに表示されない等) 値の型 : string 例 : TryExec=/usr/bin/firefox、TryExec=gimp |
| Keywords | アプリケーションの検索・発見を補助するためのキーワードのリストを指定する。 ;(セミコロン)区切りで複数指定できる。 ローカライズ可能である。(例 : Keywords[ja]=画像;編集;描画) ランチャー等の検索機能で使用され、UIには直接表示されない。 NameキーやGenericNameキーと重複する値を含めるべきではない。 値の型 : localestring(s) 例 : Keywords=text;editor;document;writing |
| MimeType | アプリケーションがサポートするMIMEタイプを指定する。 ;(セミコロン)区切りで複数指定できる。 ファイルマネージャ等がファイルを開く際に適切なアプリケーションを選択するために参照される。 値の型 : string(s) 例 : MimeType=text/plain;text/x-python;application/x-sh、MimeType=image/jpeg;image/png;image/gif |
| StartupNotify | アプリケーションがStartup Notification Protocolに対応しているかどうかを指定する。 trueの場合、アプリケーションは DESKTOP_STARTUP_ID 環境変数が設定された状態で起動され、起動完了時にremoveメッセージを送信する。デスクトップ環境はこの信号に基づいてカーソル変更やスプラッシュスクリーン等のユーザフィードバックを提供する。 GTK+やQt等のツールキットを使用するアプリケーションは通常trueを指定する。 値の型 : boolean |
| StartupWMClass | アプリケーションがウインドウにマッピングするWMクラスまたはWM名のヒント文字列を指定する。 デスクトップ環境がウインドウを正しいアプリケーションに関連付けるために使用される。 StartupNotify=trueの場合に特に重要である。 正確な値は xprop WM_CLASSコマンド等で確認できる。値の型 : string 例 : StartupWMClass=firefox、StartupWMClass=code |
デスクトップエントリファイルのCategoriesキーは、以下の項目から任意の個数を選択する。(セミコロン区切り)
| Categoriesキーの種類 | 説明 |
|---|---|
| AudioVideo | プレゼンテーション・作成・加工を行うマルチメディア用アプリケーション |
| Audio | オーディオアプリケーション |
| Video | ビデオアプリケーション |
| Development | 開発用アプリケーション |
| Education | 教育用アプリケーション |
| Game | ゲーム |
| Graphics | ビューワ・作成・加工を行うグラフィックアプリケーション |
| Network | Webブラウザ等のアプリケーション |
| Office | オフィス用アプリケーション |
| Science | 物理・科学で用いるアプリケーション |
| Settings | 環境設定用アプリケーション |
| System | ログビューワやネットワークモニタのようなシステムアプリケーション |
| Uility | 小規模なユーティリティアプリケーション |
フィールドコード
コマンドラインには、1つの%fや%u等のフィールドコードを含めることができる。
ソフトウェアがファイルを開いてはいけない場合、%f、%u、%F、%U等のフィールドコードをコマンドラインから削除する必要がある。
また、フィールドコードは、引用された引数の中で使用してはならない。
%Fと%Uのフィールドコードは、単独で引数としてのみ使用できる。
| フィールドコード | 説明 |
|---|---|
| %f | 複数のファイルが選択されていても、単一のファイル名(パスを含む)として認識する。 また、ファイルがローカルシステム上に存在しない場合(HTTPやFTPにある場合)、 ファイルはローカルシステムにコピーされて、%fは一時ファイルを指すように展開される。 これは、URL構文を処理できないソフトウェアで使用される。 |
| %F | 複数のローカルファイルを1度に開くことができるソフトウェアに使用する。 各ファイルは、別の引数としてソフトウェアに渡される。 |
| %u | 複数のファイルが選択されていても、ローカルファイルは、単一のURLまたはファイルパスとして渡される。 |
| %U | 各URLは、ソフトウェアに個別の引数として渡される。 ローカルファイルは、複数のURLまたはファイルパスとして渡される。 |
| %i | デスクトップエントリのIconキーを、--iconとIconキーの値の2つの引数として展開する。 Iconキーの値が空または見つからない場合は、どの引数にも展開しない。 |
| %c | デスクトップエントリのNameキーに記述されているソフトウェア名に別名を設定する。 |
| %k | デスクトップファイルの場所を、URI (vfolderシステムから取得した場合等) または ローカルファイル名で指定する。 |
| %d | 非推奨 |
| %D | 非推奨 |
| %m | 非推奨 |
| %n | 非推奨 |
| %N | 非推奨 |
| %v | 非推奨 |
デスクトップファイルデータベースの更新
デスクトップファイルデータベースの更新は、[Alt]キー + [F2]キーを押下後、[R]キーを押下するる。
デスクトップエントリファイルを作成または更新した場合は、必ず実行する必要がある。
GUIでデスクトップアイコンを追加する方法
デスクトップ画面で右クリックすれば、[新しいLauncherを追加]する旨の選択肢がある。
それを選択した後、起動対象のアプリケーション情報を入力する画面が表示されるので、
この画面上で必須項目を入力すれば、デスクトップエントリファイルを作成しなくてもデスクトップアイコンが作成できる。
WMClassの値を確認する方法
デスクトップエントリファイルのStartupWMClassキーに設定する値は、対象アプリケーションのウインドウから取得する必要がある。
X11環境の場合
X11環境では、xprop コマンドを使用してWMClassの値を確認できる。
xprop WM_CLASS コマンドを実行すると、カーソルが十字に変化するので、対象のウインドウをクリックする。
xprop WM_CLASS
# 出力例 WM_CLASS(STRING) = "navigator", "firefox"
1番目の値はインスタンス名、2番目の値はクラス名である。
StartupWMClassキーには、2番目のクラス名を指定する。(上記の例では、firefox)
また、アクティブなウインドウを自動的に指定する場合は、xdotool コマンドと組み合わせて使用する。
xprop -id $(xdotool getwindowfocus) WM_CLASS
Wayland環境の場合
Wayland環境では、X11の WM_CLASS に相当するものとして、app_id が使用される。
ただし、XWayland上で動作するアプリケーションの場合は、従来のWM_CLASSが使用される。
使用するコンポジタによって確認方法が異なる。
GNOME (Mutter)
Looking Glassを使用して確認する。
[Alt] + [F2]キーを押下して、lg と入力してLooking Glassを起動する。
[Windows]タブを選択すると、開いているウインドウの一覧が表示され、各ウインドウの wm_class の値を確認できる。
KDE Plasma (KWin)
以下のいずれかの方法で確認する。
- システム設定のウインドウルール
- [システム設定] - [ウインドウの管理] - [ウインドウルール]を開き、[ウインドウプロパティを検出]ボタンを押下する。
- 対象のウインドウをクリックすると、ウインドウクラス等のプロパティが表示される。
- kdotoolコマンド
- KDE環境向けのxdotool相当ツールであり、ウインドウのプロパティを取得できる。
Sway / wlroots系
swaymsg コマンドを使用してウインドウツリーの情報を取得する。
swaymsg -t get_tree
jq コマンドでフィルタリングして、app_id と class の値を確認する。
swaymsg -t get_tree | jq '..|select(.type=="con")?|{app_id, class}'
Waylandネイティブアプリケーションの場合は、app_id フィールドに値が設定される。
XWaylandアプリケーションの場合は、class フィールドに値が設定される。(XWaylandアプリケーションの app_id は null になる)
Hyprland
hyprctl コマンドを使用してウインドウ情報を取得する。
hyprctl clients
出力には各ウインドウの class フィールドが含まれており、その値をStartupWMClassキーに使用する。