Ich habe eine .desktop
Datei, um ein Python-Programm in einer bestimmten Conda-Umgebung zu starten, wie folgt:
[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
Das hat früher funktioniert, aber ich habe kürzlich meine Python-Umgebung optimiert.
Nun in einem Terminal den gleichen Befehl
$ bash -c "source /vol/home/kaipingga/anaconda3/bin/activate qutebrowser; qutebrowser"
führt die Anwendung aus, die .desktop
Datei jedoch nicht. Wie finde ich heraus, um welchen Fehler es sich handelt?
Meine anderen .desktop
Dateien laufen einwandfrei. Ich gehe davon aus, dass mit meiner Python-Umgebung etwas schief geht, was im Moment ziemlich hackig ist (was der Hauptgrund ist, dies zunächst in einer dedizierten conda
Umgebung auszuführen ).
Zachary Brady schlug ursprünglich vor (aber es gibt Probleme ) xdg-open
, .desktop
Dateien auszuführen , aber es gibt mir ein Meldungsfeld mit der Aufschrift
Error
Fehler beim Hinzufügen eines Plugins zum Panel
Es wurde keine laufende Instanz von xfce4-panel gefunden
sowohl für diesen .desktop
als auch für einen anderen, der sonst funktioniert. (Ich verwende einfach Ubuntu, kein xfce).
xdg-open
ist seit einiger Zeit fehlerhaft und öffnet nur die Desktop-Symbole in Texteditoren ...~
(als "~
", nicht als "/home/anaphory
" angezeigt), was ich durch Hinzufügenenv > check;
in der Mitte des Befehls herausgefunden habe. Aber ich bin mir sicher, dass es einen besseren Weg gibt, dies zu debuggen!Antworten:
Sie können auch das Validierungstool desktop-file-validate verwenden , um weitere Probleme zu finden.
(Siehe auch: Überprüfen / Überprüfen von .desktop-Dateien? )
quelle
Unter Linux Mint wird der Dateimanager-Dienst benannt
nemo
. Nemo kann durch Folgendes beendet werden:Wenn Ihr Dateimanager gestoppt ist, können Sie ihn in einem Terminal öffnen
Das Protokoll wird nun auf diesem Terminal gedruckt. Wenn Sie Ihre * .desktop-Datei öffnen, sollte die Standardausgabe der Exec-Zeile Ihres * .desktop angezeigt werden.
quelle
Normalerweise füge ich Folgendes hinzu, um zu sehen, was ausgeführt wird:
quelle
xdg-open
undexo-open
werden zum Öffnen von Dateien (in ihrem jeweiligen zugehörigen Programm) verwendet. Sie sollten niemals etwas alleine ausführen. Zum Ausführen des von einem Desktop definierten Befehls können Sie dex verwenden .quelle