.desktop
次のような、特定の conda 環境で Python プログラムを起動するためのファイルがあります。
[Desktop Entry]
Version=1.0
Name=Qutebrowser
GenericName=Web Browser
Comment=View and edit files
MimeType=text/html;
Exec=bash -c "source /vol/home/kaipingga/anaconda3/bin/activate qutebrowser; qutebrowser"
Icon=/vol/home/kaipingga/.config/qutebrowser.svg
Type=Application
Terminal=false
Categories=Network;Utility;X-Python;
StartupWMClass=Qutebrowser
X-Desktop-File-Install-Version=0.20
以前はこれでうまくいきましたが、最近 Python 環境を微調整しました。
さて、ターミナルで同じコマンド
$ bash -c "source /vol/home/kaipingga/anaconda3/bin/activate qutebrowser; qutebrowser"
アプリケーションは実行されますが、.desktop
ファイルは実行されません。どのようなエラーが原因なのかをどうやって調べればよいでしょうか?
他の.desktop
ファイルは問題なく動作しますが、現時点ではかなりハックっぽい Python 環境に何か問題があると思われます (これが、conda
最初に専用の環境でこれを実行する主な理由です)。
ザカリー・ブレイディは当初(しかし、問題)はファイルxdg-open
を実行するかもしれませ.desktop
んが、次のようなメッセージボックスが表示されます。
エラー
パネルにプラグインを追加できませんでした
xfce4-panel の実行中のインスタンスが見つかりませんでした
これ.desktop
と、それ以外は動作する別のものの両方です。(私は xfce ではなく、プレーンな Ubuntu を実行しています)。
答え1
検証ツールを使用することもできますデスクトップファイル検証さらなる問題を見つけるために。
(参照:.desktop ファイルを検証/確認するにはどうすればいいですか?)
# Result for your example
$ desktop-file-validate qutebrowser.desktop
test.desktop: hint: value "Network;Utility;X-Python;" for key "Categories"
in group "Desktop Entry" contains more than one main category; application
might appear more than once in the application menu
答え2
通常、何が実行されるかを確認するには、以下を追加します。
Terminal=true
TerminalOptions=\s--noclose
答え3
Linux Mint では、ファイル マネージャー サービスは という名前でnemo
、次のコマンドを発行して nemo を終了できます。
nemo -q
ファイルマネージャーを停止すると、ターミナルで開くことができます
nemo
これで、この端末にログが出力され、*.desktop ファイルを開くと、*.desktop の Exec 行の stdout が表示されるようになります。
答え4
xdg-open
これらは、exo-open
ファイルを開くために使用されます(それぞれの関連プログラムで)。それ自体で何かを実行することは意図されていません。デスクトップで定義されたコマンドを実行するには、デックス。