Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
デスクトップエントリのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
デスクトップエントリ
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:Freedesktop.org]] [[Category:設定ファイル]] [[Category:パッケージ開発]] [[en:Desktop entries]] [[ru:Desktop entries]] [[zh-hans:Desktop entries]] [https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html XDG デスクトップエントリ仕様]は、[https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html XDG Desktop Menu] 仕様を実装している[[デスクトップ環境]]のアプリケーションメニューにアプリケーションを統合するための規格です。 == 基本 == デスクトップエントリには、1つの {{ic|Type}} キーと1つの {{ic|Name}} キーが含まれていなければなりません。オプションで、アプリケーションメニューでの見た目を定義することができます。 {{ic|Type}} に指定できるタイプは3つあります: ;Application :どのようにしてアプリケーションを起動するかや、どの MIME タイプをサポートするかを定義します (MIME タイプの記述は [[XDG MIME Applications]] により使用されます)。[[XDG 自動起動]]を使えば、アプリケーションエントリを特定のディレクトリに配置することにより、そのエントリを[[自動起動]]させることができます。アプリケーションエントリは、ファイル拡張子 {{ic|.desktop}} を使用します。[[#アプリケーションエントリ]] を見てください。 ;Link :{{ic|URL}} へのショートカットを定義します。リンクエントリは、ファイル拡張子 {{ic|.desktop}} を使用します。 ;Directory :アプリケーションメニューでのサブメニューの見た目を定義します。ディレクトリエントリは、ファイル拡張子 {{ic|.directory}} を使用します。 以下のセクションでは、これらのエントリの作成や検証の方法について大まかに説明します。 == アプリケーションエントリ == アプリケーションのデスクトップエントリ ({{ic|.desktop}} ファイル) は、基本的にメタ情報リソースの集合であり、アプリケーションのショートカットです。通常、これらのファイルは、システム全体でインストールしたアプリケーションなら {{ic|/usr/share/applications}} か {{ic|/usr/local/share/applications}} に、ユーザ固有のアプリケーションなら {{ic|~/.local/share/applications}} に入っています。ユーザーのエントリはシステムのエントリよりも優先されます。 === ファイル例 === 以下は、コメントを追加したデスクトップエントリの構成のサンプルです。このサンプルは雰囲気を伝えるだけのものであり、利用可能なエントリキー全ての使い方を示してはいません。完全なキーのリストは [https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys freedesktop 仕様] を見てください。 [Desktop Entry] # 前の章でリストアップしたタイプ Type=Application # このファイルが準拠しているデスクトップエントリ仕様のバージョン Version=1.0 # アプリケーションの名前 Name=jMemorize # ツールチップとして利用できる/されるコメント Comment=Flash card based learning tool # 実行ファイルが存在するフォルダへのパス Path=/opt/jmemorise # アプリケーションの実行可能ファイル。引数を付けることができます。 Exec=jmemorize # エントリを表示するときに使われるアイコンの名前 Icon=jmemorize # アプリケーションをターミナルで実行する必要があるかどうかを記述 Terminal=false # このエントリをどのカテゴリで表示すべきかを記述 Categories=Education;Languages;Java; {{Note|必須のキーは {{ic|Type}} と {{ic|Name}} だけです。}} === キーの定義 === [https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys freedesktop] のサイトに、認識される全てのデスクトップエントリが記載されています。 例えば、{{Ic|Type}} キーは3つのタイプのデスクトップエントリを定義します: アプリケーション (Application, タイプ1), リンク (Link, タイプ2), ディレクトリ (Directory, タイプ3)。 * {{Ic|Version}} キーはアプリケーションのバージョンを表すものではなく、デスクトップエントリが準拠しているデスクトップエントリ規格のバージョンを指定します。 * {{Ic|Name}}, {{Ic|GenericName}}, {{Ic|Comment}} はしばしば以下のように同じような値が使われることがありますが: Name=Pidgin Internet Messenger GenericName=Internet Messenger または: Name=NoteCase notes manager Comment=Notes Manager 上記のような設定はユーザーを混乱させるだけなので避けるべきです。{{Ic|Name}} キーにはアプリケーションの名前 (あるいはその省略語や頭字語) だけを書いてください。 * {{Ic|GenericName}} にはアプリケーションがどのようなものなのかを示す名称を指定するべきです (例えば Firefox なら "Web Browser")。 * {{Ic|Comment}} には何らかの追加情報を記入することを意図しています。 === 検証 === いくつかのキーは非推奨となっているので、{{man|1|desktop-file-validate}} を使ってデスクトップエントリを検証する必要があるかもしれません。このツールは {{Pkg|desktop-file-utils}} パッケージに含まれています。エントリを検証するには、以下を実行してください: $ desktop-file-validate <''デスクトップファイル''> 上記のコマンドで詳細かつ有用な警告・エラーメッセージが表示されます。 === インストール === 対象のディレクトリに desktop ファイルをインストールするには、{{man|1|desktop-file-install}} を使ってください。例えば: $ desktop-file-install --dir=$HOME/.local/share/applications ~/app.desktop === デスクトップエントリデータベースの更新 === {{ic|~/.local/share/applications}} で定義されているデスクトップエントリを機能させるには、以下のコマンドを実行してください: $ update-desktop-database ~/.local/share/applications {{Tip|{{ic|-v}} (verbose) 引数を追加すると、デスクトップエントリのエラーを表示します。}} == アイコン == [https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html Icon Theme Specification] も参照してください。 === 一般的な画像フォーマット === 以下はアイコンとしてよく使われている画像フォーマットの簡単な概要です。 {| class="wikitable" align="center" |+ freedesktop.org 仕様で指定されているアイコンとしてサポートされる画像フォーマット。 ! 拡張子 ! フルネームまたは説明 ! グラフィック形式 ! コンテナフォーマット ! サポート |- !align="left" | .[[wikipedia:ja:Portable Network Graphics|png]] | Portable Network Graphics | [[wikipedia:Raster graphics|ラスタ]] | {{No}} | {{Yes}} |- !align="left" | .[[wikipedia:ja:Scalable Vector Graphics|svg(z)]] | Scalable Vector Graphics | [[wikipedia:Vector graphics|ベクタ]] | {{No}} | {{G|Yes (オプション)}} |- !align="left" | .[[wikipedia:X PixMap|xpm]] | X PixMap | [[wikipedia:Raster graphics|ラスタ]] | {{No}} | {{Y|Yes (非推奨)}} |- !align="left" | .[[wikipedia:Graphics Interchange Format|gif]] | Graphics Interchange Format | [[wikipedia:Raster graphics|ラスタ]] | {{No}} | {{No}} |- !align="left" | .[[wikipedia:ICO (icon image file format)|ico]] | MS Windows Icon Format | [[wikipedia:Raster graphics|ラスタ]] | {{Yes}} | {{No}} |- !align="left" | .[[wikipedia:Apple Icon Image|icns]] | Apple Icon Image | [[wikipedia:Raster graphics|ラスタ]] | {{Yes}} | {{No}} |- |} === アイコンの変換 === ({{ic|gif}} や {{ic|ico}} など) freedesktop.org の仕様でサポートされていないフォーマットのアイコンしか見つからなかった場合、''convert'' ツールでサポート/推奨されているフォーマットに変換できます (''convert'' は {{Pkg|imagemagick}} パッケージに含まれています): $ convert <アイコン名>.gif <アイコン名>.png {{ic|ico}} などのコンテナフォーマットから変換した場合、{{ic|<icon name>-<number>.png}} という名前で {{ic|ico}} ファイルにカプセル化されていた画像が取得できます。画像のサイズや {{ic|ico}} などのコンテナに含まれている画像の数を調べたいときは ({{Pkg|imagemagick}} パッケージに含まれている) ''identify'' を使います: {{hc|$ identify /usr/share/vlc/vlc48x48.ico| /usr/share/vlc/vlc48x48.ico[0] ICO 32x32 32x32+0+0 8-bit DirectClass 84.3kb /usr/share/vlc/vlc48x48.ico[1] ICO 16x16 16x16+0+0 8-bit DirectClass 84.3kb /usr/share/vlc/vlc48x48.ico[2] ICO 128x128 128x128+0+0 8-bit DirectClass 84.3kb /usr/share/vlc/vlc48x48.ico[3] ICO 48x48 48x48+0+0 8-bit DirectClass 84.3kb /usr/share/vlc/vlc48x48.ico[4] ICO 32x32 32x32+0+0 8-bit DirectClass 84.3kb /usr/share/vlc/vlc48x48.ico[5] ICO 16x16 16x16+0+0 8-bit DirectClass 84.3kb }} 上記の ''ico'' ファイルでは、ファイル名からは 48x48 の画像しか含まれていないように見えますが、実は6つのサイズの画像が含まれていて、中には 48x48 よりも大きな 128x128 の画像もあります。 あるいは、''icotool'' ({{Pkg|icoutils}} にあり) を使って ico コンテナから png イメージを抽出できます: $ icotool -x <icon name>.ico .icns コンテナからイメージを展開する場合、''icns2png'' ({{Pkg|libicns}} により提供) を使うことができます: $ icns2png -x <icon name>.icns === アイコンの取得 === 大抵 ''.desktop'' ファイルが付属しているパッケージにはアイコンが含まれていますが、アイコンは存在するのに ''.desktop'' ファイルが開発者によって作られていない場合もあります。まずはソースパッケージの中にアイコンが存在しないか確認すると良いでしょう。 ソースパッケージの中に大量の画像が存在するときは、'''find''' を使って拡張子でファイルを絞り込んで、それから '''grep''' を使ってパッケージ名や "icon" あるいは "logo" などのキーワードで検索をかけましょう: $ find /path/to/source/package -regex ".*\.\(svg\|png\|xpm\|gif\|ico\)$" アプリケーションの開発者がソースパッケージにアイコンを含めていないときは、アプリケーションのウェブサイトを検索しましょう。{{AUR|tvbrowser}} など、プロジェクトによってはウェブサイトに [https://enwiki.tvbrowser.org/index.php/Banners,_Logos_and_other_Promotion_Material アートワーク/ロゴのページ] が存在しアイコンをダウンロードすることができます。プロジェクトがマルチプラットフォームの場合、Linux/UNIX パッケージにアイコンが付属していなくても、Windows パッケージには存在する可能性があります。プロジェクトが CVS や SVN などの[[wikipedia:Version control system|バージョン管理システム]]を使用している場合、リポジトリにアイコンが存在しないか確認してください。 どうやっても見つからないのであれば、プロジェクトにまだアイコンやロゴがないのかもしれません。 === アイコンのパス === [https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html freedesktop.org 仕様]は、プログラムがアイコンを探索するディレクトリと、探索する順番を規定しています: # {{ic|$HOME/.icons}} (後方互換性のため) # {{ic|$XDG_DATA_DIRS/icons}} # {{ic|/usr/share/pixmaps}} == ツール == === Arronax === [https://www.florian-diesch.de/software/arronax/ Arronax] は、アプリケーションやショートカットのデスクトップエントリを作成/変更するためのグラフィカルなプログラムです。使用するには {{AUR|arronax}} を[[インストール]]してください。 === Alacarte === {{Pkg|alacarte}} は [[GNOME]] のためのグラフィカルなメニューエディタで、freedesktop.org のメニュー仕様を使用します。デスクトップエントリのオーバーライドもサポートしています。 === jdDesktopEntryEdit === {{AUR|jddesktopentryedit}} は、デスクトップエントリを編集するための、[[Qt]] を使用するグラフィカルプログラムです。 === gendesk === {{Pkg|gendesk}} は PKGBUILD ファイルから直接情報を取得して .desktop ファイルを生成する Arch Linux 専用のツールとして開発がスタートしました。今ではコマンドライン引数を使用する汎用のツールとなっています。 アイコンは [http://openiconlibrary.sourceforge.net/ openiconlibrary] から自動的にダウンロードすることが可能です (アイコンのソースは将来変更される可能性があります)。 ==== 使用法 ==== * {{Ic|gendesk}} を makedepends に追加 * {{Ic|prepare()}} 関数に以下を記入: {{bc|gendesk --pkgname "$pkgname" --pkgdesc "$pkgdesc"}} * もしくは、アイコンが既に含まれている場合 (例: $pkgname.png)、アイコンをダウンロードしない、あるいはデフォルトのアイコンを使うために {{Ic|-n}} フラグを使います。例: {{bc|gendesk -n --pkgname "$pkgname" --pkgdesc "$pkgdesc"}} * 作成された {{Ic|$srcdir/$pkgname.desktop}} は {{Ic|package()}} 関数でインストールします: {{bc|install -Dm644 "$pkgname.desktop" "$pkgdir/usr/share/applications/$pkgname.desktop"}} * アイコンをインストールするには: {{bc|install -Dm644 "$pkgname.png" "$pkgdir/usr/share/pixmaps/$pkgname.png"}} * {{Ic|1=--name='Program Name'}} でメニューエントリの名前を決めることができます。 * {{Ic|1=--exec='/opt/some_app/elf --with-ponies'}} で exec フィールドを設定することができます。 * 詳しくは [https://github.com/xyproto/gendesk gendesk プロジェクト] を参照。 === lsdesktopf === {{AUR|lsdesktopf}} は、利用可能な ''.desktop'' ファイルを一覧表示したり、エントリの内容を検索したりできます。 $ lsdesktopf $ lsdesktopf --list $ lsdesktopf --list gtk zh_TW,zh_CN,en_GB MIME タイプ関連の検索を行うこともできます。[[XDG MIME Applications#lsdesktopf]] を見てください。 === fbrokendesktop === {{AUR|fbrokendesktop}} Bash スクリプトは、既存のパスを指していない壊れた {{ic|Exec}} の値を検出します。パラメータを指定しなかった場合、fbrokendesktop は {{ic|DskPath}} 配列のプリセットフォルダを使います。破損している ''.desktop'' だけを完全なパスとファイル名と共に表示します。 例: $ fbrokendesktop $ fbrokendesktop /usr $ fbrokendesktop /usr/share/xsessions/icewm.desktop == ヒントとテクニック == === ターミナルから desktop ファイルを実行する === {{Pkg|gtk3}} がインストールされている場合、{{ic|gtk-launch ''application.desktop''}} と実行してください。 あるいは、{{Pkg|dex}} パッケージをインストールして、{{ic|dex ''/path/to/application.desktop''}} と実行してください。 === desktop ファイルの変更 === システム全体で使用される ''.desktop'' ファイル (例えば、パッケージからインストールしたもの) を変更したい場合、まず関連する ''.desktop'' ファイルを {{ic|$XDG_DATA_HOME/applications/}} にコピーしてください (例えば、{{ic|/usr/share/applications/}} から {{ic|~/.local/share/applications/}} へ)。こうすることで、[[システムメンテナンス#システムのアップグレード|システムのアップグレード]]の際に対象のパッケージがアップデートされても、あなたが加えた変更が上書きされることはありません。ローカルのユーザ固有の ''.desktop'' ファイルは、自動的にシステム全体の ''.desktop'' ファイルよりも優先されるはずです。これで、必要に応じてローカルのユーザ固有の ''.desktop'' ファイルを変更できます。 {{Note|アプリケーションを自動起動するように設定している場合、[[XDG Autostart]] に従って、{{ic|$XDG_CONFIG_HOME/autostart}} 内にシステムデスクトップエントリのコピーがすでに存在している場合があります。自動起動する場合のみの動作を変更したい場合、このファイルを変更してください。すべての場合における動作を変更したい場合は、以下のことを行う必要があります: * デスクトップエントリファイルを {{ic|$XDG_CONFIG_HOME/autostart/}} から {{ic|$XDG_DATA_HOME/applications}} に移動する。 * {{ic|ls -l}} を使って、このデスクトップエントリが編集可能な通常のファイルであり、システム関連の場所へのリンクでないことを確認する。リンクである場合は、上記で説明したように元のファイルのコピーに入れ替える。 * ユーザアプリケーションディレクトリ (内のデスクトップエントリ) へのシンボリックリンクを作成する (便宜上、デフォルトの XDG ディレクトリに置き換えています): ln -s ~/.local/share/applications/''desktop_entry'' ~/.config/autostart/ これで、アプリケーションランチャー内のファイルは、自動起動させるファイルと同じになります。 }} ==== 環境変数の変更 ==== [[環境変数]]を設定するには、{{man|1|env}} コマンドで環境変数を設定するように ''.desktop'' ファイル内の {{ic|1=Exec=}} 行を編集してください。例えば (元の行はコメントアウトされています): {{hc|~/.local/share/applications/abiword.desktop|2= ... # Exec=abiword %U Exec=env LANG=he_IL.UTF-8 abiword %U ... }} ==== コマンドライン引数の変更 ==== コマンドライン引数を変更または追加するには、{{ic|1=Exec=}} 行を編集し、オプションを追加してください。例 (元の行はコメントアウトされています): {{hc|~/.local/share/applications/steam.desktop|2= ... # Exec=/usr/bin/steam-runtime %U Exec=/usr/bin/steam-runtime -no-browser %U ... }} ==== デスクトップエントリの隠匿 ==== デスクトップエントリの可視性は、複数の方法で制御できます。詳細は [https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys Desktop Entry Specification] を見てください。以下の内容のうち1つを ''.desktop'' ファイルに[[追加]]してください: * ''全ての''デスクトップ環境に適用。以下のうち1つ (あるいは両方) を選んでください: ** メニューに表示したくないアプリケーションに対して {{ic|1=NoDisplay=true}} 行を追加する。 ** 削除済みでありメニューに表示したくないアプリケーションに対して {{ic|1=Hidden=true}} 行を追加する。 * デスクトップ環境を''指定''。以下のうち1つを選んでください。{{ic|''desktop_names''}} の部分はデスクトップ環境のリストであり、セミコロンで区切ってください (例: {{ic|GNOME}}, {{ic|GNOME;Xfce;KDE;}}): ** {{ic|1=NotShowIn=''desktop_names''}} 行を追加すると、指定したデスクトップ環境でエントリを''隠し''ます。 ** {{ic|1=OnlyShowIn=''desktop_names''}} 行を追加すると、指定したデスクトップ環境でのみエントリを''表示''します。 == 参照 == * [[Wikipedia:.desktop]] * [https://freedesktop.org/wiki/Howto_desktop_files/ 開発者向けの情報] {{TranslationStatus|Desktop entries|2023-05-14|776650}}
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Bc
(
ソースを閲覧
)
テンプレート:G
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:Man
(
ソースを閲覧
)
テンプレート:No
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:R
(
ソースを閲覧
)
テンプレート:Tip
(
ソースを閲覧
)
テンプレート:TranslationStatus
(
ソースを閲覧
)
テンプレート:Y
(
ソースを閲覧
)
テンプレート:Yes
(
ソースを閲覧
)
デスクトップエントリ
に戻る。
検索
検索
デスクトップエントリのソースを表示
話題を追加