He creado un archivo .desktop.
[Desktop Entry]
Exec=cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*
Terminal=false
StartupNotify=true
Categories=GNOME;Oracle;Utility;Development;
Type=Application
Icon=/opt/sqldeveloper/icon.png
Name=Oracle SQL Developer
Comment=what to say
Version=s.0.m.t.h.i.n.g
GenericName=ORACLE SQL DEVELOPER
Está presente en /usr/share/applications
. Incluso muestra el icono si se ve en Nautilus, pero cuando presiono alt (el guión o la tecla de Windows) y lo busco, no está visible.
También probé:
sudo update-desktop-database
Respuesta1
¿Cuál es el problema crítico en su archivo .desktop?
Probé su archivo .desktop reemplazando el Exec=
comando por otro (simple y funcional) y el archivo parece funcionar y Dash no lo rechaza.
Es un malentendido común que se puede utilizar la Exec=
línea de un archivo .desktop como si fuera una ventana de terminal. Ese no es el caso; expandir me gusta ~/
o $HOME
no funciona, por ejemplo. Es una buena práctica (es decir, fácil) colocar comandos más complicados en un archivo de script separado, para ejecutarlos desde el archivo de inicio (su .desktop
archivo).
Ejecutar comandos complicados desde un archivo .desktop
Si deseas específicamente mantener tu mandoadentrosu .desktop
archivo, debe hacerlo de la siguiente manera:
Exec=sh -c "your_complicated_command_here && the_rest_of_it"
(command inside quotes)
Ejecutar un script desde el archivo .desktop para realizar el trabajo
Suponiendo que tu comando
cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*
funciona desde una ventana de terminal, sin embargo, simplemente crearía un pequeño script:
#!/bin/bash
cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*
Guárdelo como scriptname.sh
y cambie la Exec=
línea de su archivo .desktop a:
Exec=sh /path/to/scriptname.sh
Entonces tu .desktop
archivo aparecerá en Dash
Nota
Que hay más problemas con su archivo .desktop, como lo mencionaron @Braiam y @MrVaykadji. Algunos ejemplos:
- No debes usar solo valores inventados en la
Categories=
línea, como puedes leeraquí - El campo de versión no es obligatorio, pero si lo usas, usa 1.0
Se puede encontrar másaquí. Buenas herramientas que puedes encontrar.aquí(también gracias a @Braiam y @MrVaykadji).
Sin embargo, el elemento fundamental que hace que su archivo .desktop no aparezca en Dash es la Exec=
línea.