.desktopファイルを検証/検証する方法は?


12

.desktop期待どおりに機能しない、またはまったく機能しないファイルがいくつかあります。エラーはどこにも見られず、それぞれに助けを求めることは非生産的なようです。特定の修正を適用できるように、ファイルで正しい構文を使用していること、それがFreeDesktop標準に準拠していることを確認できる方法はありますか?

回答:


19

ディストリビューションのdesktop-files-utilsパッケージdesktop-file-validate提供されるツールを探しています。要約すると、予約語/予約文字を使用して、デスクトップエントリ仕様に準拠していることを確認します。悪い.desktopファイルの例を次に示します。

➜  ~  desktop-file-validate asdf.desktop 
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '&' outside of a quote
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '&' outside of a quote
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '$' outside of a quote
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '*' outside of a quote
asdf.desktop: hint: value item "GNOME" in key "Categories" in group "Desktop Entry" can be extended with another category among the following categories: GTK
asdf.desktop: error: value "GNOME;Oracle;Utility;Development;" for key "Categories" in group "Desktop Entry" contains an unregistered value "Oracle"; values extending the format should start with "X-"
asdf.desktop: hint: value "GNOME;Oracle;Utility;Development;" for key "Categories" in group "Desktop Entry" contains more than one main category; application might appear more than once in the application menu
asdf.desktop: error: value "s.0.m.t.h.i.n.g" for key "Version" in group "Desktop Entry" is not a known version

良いファイルでcaribou-autostart.desktopは何も表示されません。


FTR desktop-file-validateはエラーを表示しない場合がありますが、の無効なエントリが原因でまったく機能しない可能性がありExecます。
パブロA
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.