Errore di file di ingresso desktop non valido: midi2input

Jul 21 2020

Ho deciso di utilizzare un controller midi per determinate attività, quindi ho utilizzato midi2input per questo.

L'applicazione compilata senza errori tuttavia, quando clicco sull'icona ottengo:

Invalid desktop entry file: '~/.local/share/applications/m2i.desktop

Questi sono i contenuti della voce del desktop:

[Desktop Entry] 
Encoding=UTF-8 
Version=1.0 
Type=Application 
Terminal=true 
Exec=/usr/local/bin/ 
Name=Midi2Input 
Icon=/home/emm/midi2input/build/res/icons/hicolor/512x512/apps/m2i-light.png

Qualche idea?

Il png esiste. Ho anche appena modificato la riga Exec come suggerito e l'ho anche ricostruita e continua a dare lo stesso errore.


Voce desktop corrente:

[Desktop Entry]  
Encoding=UTF-8  
Version=1.0  
Type=Application  
Terminal=false  
Exec=/usr/local/bin/m2i  
Name=midi2input  
DBusActivatable=false  
Icon=/home/emm/midi2input/build/res/icons/hicolor/512x512/apps/m2i-light.png  
StartupNotify=true  
emm@i3:~$ ls -al /usr/local/bin/m2i -rwxr-xr-x 1 root root 606864 Jul 21 12:28 /usr/local/bin/m2i emm@i3:~$ ls -al /home/emm/midi2input/build/res/icons/hicolor/512x512/apps/m2i-light.png
-rw-rw-r-- 1 emm emm 10010 Jul 22 08:05 /home/emm/midi2input/build/res/icons/hicolor/512x512/apps/m2i-light.png
emm@i3:~$

Risposte

1 Geoff Jul 21 2020 at 20:18

Non hai specificato il percorso completo dell'eseguibile.

Hai solo messo:

Exec=/usr/local/bin/

Vedi la documentazione su Desktop Entry Specification - GNOME Developer

Exec

Programma da eseguire, possibilmente con argomenti. Vedere la Execchiave per i dettagli su come funziona questa chiave. La Execchiave è richiesta se DBusActivatablenon è impostata su true. Anche se DBusActivatableè true, Execdovrebbe essere specificato per compatibilità con implementazioni che non comprendono DBusActivatable.

Da non confondere con:

Name

Nome specifico dell'applicazione, ad esempio "Mozilla".

sancho.sReinstateMonicaCellio Jul 22 2020 at 14:53

Prova ad assicurarti di avviare il .desktopfile che pensi. Usa locate m2i.desktop(1) per vedere se c'è più di uno di questi file nel tuo sistema (presumo che tu abbia un mlocatedatabase aggiornato ).

Quindi, se sei sicuro che il Execfile puntato sia corretto, commenta le righe nei .desktopfile e prova ad avviarlo m2i, finché non identifichi il colpevole. Potresti usare gtk-launch m2i(2), vedi questo . Potresti commentarli uno per uno, commentarli a grappoli (una sorta di metodo di bisezione) o commentare tutti tranne il Exece solo uno in più. Quest'ultima forma è probabilmente la migliore.

Si prega di inviare feedback sui comandi (1) e (2a), (2b), ecc. (Uno per ogni riga che è stata lasciata non commentata) e l'output di

ls -al /usr/local/bin/m2i
ls -al /home/emm/midi2input/build/res/icons/hicolor/512x512/apps/m2i-light.png
type m2i