Invocare il file .desktop dal programma di avvio lo apre nell'editor invece di aprire il programma che descrive

Oct 29 2019

Sto funzionando con vanilla-gnome-desktop, usando GNOME Classic su Ubuntu 18.04.

Quando si preme Supere si immette KeePasspiù Enter, il ~/Desktop/KeePass.desktopfile viene aperto in un editor ( geditnel mio caso). Curiosamente quando, dopo aver abilitato la visualizzazione dei simboli del desktop ( gsettings set org.gnome.desktop.background show-desktop-icons true), faccio doppio clic sullo stesso elemento sul desktop, l'applicazione si apre come previsto. Mentre viene visualizzato nel programma di avvio, il .desktopfile viene mostrato con l'icona dell'app appropriata (proprio come sul desktop stesso) e si presenta con il percorso a ~/Desktop(espanso, però).

Cosa succede? E come faccio a fare in modo che il programma di avvio richiami il programma descritto dal .desktopfile?


Eventualmente informazioni rilevanti:

$ cat ~/Desktop/KeePass.desktop |sed 's|'$(whoami)'|username|g'
#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/username/bin/KeePass/KeePass_icon.png
Exec=mono /home/username/bin/KeePass/KeePass.exe
Name[en_US]=KeePass
Name=KeePass
Icon=/home/username/bin/KeePass/KeePass_icon.png
X-Desktop-File-Install-Version=0.23

... e:

$ ls -l bin/KeePass/KeePass.exe Desktop/KeePass.desktop |sed 's|'$(whoami)'|username|g'
-rwxr-xr-x 1 username username 3315280 2019-09-22 21:27 bin/KeePass/KeePass.exe
-rwxr-xr-x 1 username username     302 2019-09-22 21:27 Desktop/KeePass.desktop

Inoltre desktop-file-validate Desktop/KeePass.desktoptorna vuoto con 0 codice di uscita. A quanto ricordo desktop-file-editinizialmente creavo il suddetto .desktopfile, ma l'avevo aggiunto monoalla Execriga per non confondere il sistema, perché sto usando anche Wine e Crossover per certe applicazioni.

Risposte

3 vanadium Oct 30 2019 at 09:28

Il tuo file .desktop probabilmente appare come un file trovato nella panoramica della shell di Gnome, e quindi viene gestito di conseguenza.

Assicurati che il tuo file .desktop risieda in ~/.local/share/applications. Solo allora verrà prelevato correttamente come applicazione. Puoi lasciare la copia sul desktop se apprezzi la possibilità di avviarla direttamente dal desktop, oppure rimuoverla da lì e bloccarla nel Dash (fai clic con il tasto destro nella panoramica per farlo) se vuoi seguire il flusso di lavoro che gli sviluppatori di Gnome hanno in mente.