Tengo un .desktop
archivo 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 .desktop
archivo no.¿Cómo puedo saber a qué se debe ese error?
Mis otros .desktop
archivos 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 conda
entorno dedicado para empezar).
Zachary Brady sugirió originalmente (pero hayasuntos) xdg-open
puede ejecutar .desktop
archivos, 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 .desktop
como 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-open
y exo-open
se 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.