如何調試 .desktop 檔案?

如何調試 .desktop 檔案?

我有一個.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,也適用於另一個有效的方法。 (我運行的是普通 Ubuntu,沒有 xfce)。

答案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 行的標準輸出。

答案4

xdg-openexo-open用於開啟檔案(在其各自的關聯程序中)。他們從來不打算自己執行任何事。若要執行桌面定義的命令,您可以使用右旋糖酐

相關內容