Auf meinem Desktop habe ich eine .desktop-Datei. Wenn ich tippe:
Icon=/home/ianbell/Pictures/myLogo.png
Das Symbol der .desktop-Datei ändert sich (das erwartete Ergebnis).
Aber wenn ich tippe:
Icon=~/Pictures/myLogo.png
es funktioniert nicht
Ist nicht ~/
eine Abkürzung für /home/$USER
?
Antworten:
Die Verwendung von Pfaden in einer .desktop-Datei
In einer
.desktop
Datei müssen Sie absolute und vollständige Pfade verwenden. Daher~
wird nicht erweitert.Dies ist ein häufig gemachter Fehler :)
Ausnahmen zu Symbolen werden ua hier beschrieben :
und hier :
Mehr Informationen
In einer
.desktop
Datei:In der
Icon=
Zeile, Sie sind zu verwenden Räume erlaubt:ist gut.
jedoch
In der
Exec=
Zeile, Sie sind nicht erlaubt Räume zu verwenden, es sei denn , im Falle eines Arguments . In allen anderen Fällen müssen Sie die Pfadschritte mit einem Leerzeichen angeben:wird scheitern, während
oder
wird gut funktionieren
quelle
Kurz gesagt,
.desktop
derIcon=
Pfad der Datei versteht absolute Pfade, jedoch keine Tilde-Erweiterung, da die Spezifikation definiert, wie.desktop
Dateien funktionieren sollen.Tilde Erweiterung
~
Erweiterung von tilde ( ) auf die$HOME
Umgebungsvariable sehen würden, ist häufig beispielsweise in bash, der üblichen Anmeldeshell, mit der Sie an der Eingabeaufforderung interagieren.desktop-Dateien
.desktop
Datei ist jedoch nicht dasselbe wie eine Shell, sondern eine reine Textkonfigurationsdatei, sodass sie nicht unbedingt auf die gleiche Weise funktioniert, selbst wenn sowohl.desktop
Dateien als auch Shells unter Linux gefunden werden können.desktop
Datei funktionieren soll, wird in der Desktop- Eintragsspezifikation von Freedesktop definiertIn Bezug auf die Desktop-Eintragsspezifikation
Icons
heißt es:Aus diesem Grund konnten Sie absolute Pfade verwenden, da diese von der Spezifikation abgedeckt werden
Wenn wir die Icon-Theme-Spezifikation überprüfen , gibt es nichts, was besagt, dass sie überhaupt der Tilde-Erweiterung von POSIX folgen muss.
Zusammenfassung
Aufgrund der Freedesktop-Spezifikationen für
.desktop
dieIcon=
Einstellung werden daher absolute Pfade unterstützt, POSIX-Tilde-to-HOME-Erweiterungen jedoch nicht.quelle