¿Cómo depuro un archivo .desktop?

¿Cómo depuro un archivo .desktop?

Tengo un .desktoparchivo para iniciar un programa Python en un entorno Conda específico, como este:

[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

Esto solía funcionar, pero recientemente modifiqué mi entorno de Python.

Ahora, en una terminal el mismo comando

$ bash -c "source /vol/home/kaipingga/anaconda3/bin/activate qutebrowser; qutebrowser"

ejecuta la aplicación, pero el .desktoparchivo no.¿Cómo puedo saber a qué se debe ese error?

Mis otros .desktoparchivos funcionan bien, supongo que algo sale mal con mi entorno Python, que es bastante complicado por el momento (que es la razón principal para ejecutar esto en un condaentorno dedicado para empezar).

Zachary Brady sugirió originalmente (pero hayasuntos) xdg-openpuede ejecutar .desktoparchivos, pero aparece un cuadro de mensaje que dice

Error

No se pudo agregar un complemento al panel

No se encontró ninguna instancia en ejecución de xfce4-panel

tanto para este .desktopcomo para otro que por lo demás funciona. (Estoy ejecutando Ubuntu simple, no xfce).

Respuesta1

También puedes utilizar la herramienta de validación.validar-archivo-de-escritoriopara encontrar más problemas.

(ver también:¿Cómo validar/verificar archivos .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

Respuesta2

Normalmente agrego lo siguiente para ver qué se está ejecutando:

Terminal=true
TerminalOptions=\s--noclose

Respuesta3

En Linux Mint, el servicio Administrador de archivos se llama nemo, se puede salir de nemo emitiendo:

nemo -q

Con tu administrador de archivos detenido, puedes abrirlo en una terminal

nemo

Ahora imprimirá su registro en esta terminal, cuando abra su archivo *.desktop, debería poder ver la salida estándar de su línea Exec de *.desktop.

Respuesta4

xdg-openy exo-opense utilizan para abrir archivos (en su respectivo programa asociado). Nunca debieron ejecutar nada por sí solos. Para ejecutar el comando definido por un escritorio, puede usardex.

información relacionada