Qual é o problema crítico no seu arquivo .desktop
Eu tentei o seu arquivo .desktop substituindo o comando Exec=
por outro (simples e funcional) e o arquivo parece estar funcional, e não é recusado pelo Dash.
É um mal-entendido comum que você pode usar a linha Exec=
de um arquivo .desktop como se fosse uma janela de terminal. Esse não é o caso; expandir como ~/
ou $HOME
não funciona, por exemplo. É bom (o que significa: fácil) praticar colocar comandos mais complicados em um arquivo de script separado, a ser executado a partir do arquivo do iniciador (seu arquivo .desktop
)
Execução de comandos complicados a partir de um arquivo .desktop
Se você deseja manter seu comando dentro do seu arquivo .desktop
, você deve fazê-lo da seguinte maneira:
Exec=sh -c "your_complicated_command_here && the_rest_of_it"
(command inside quotes)
Executando um script do arquivo .desktop para fazer o trabalho
Supondo que seu comando
cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*
funciona a partir de uma janela de terminal; no entanto, basta criar um script pequeno:
#!/bin/bash
cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*
Salve-o como scriptname.sh
e altere a linha Exec=
do seu arquivo .desktop para:
Exec=sh /path/to/scriptname.sh
Em seguida, o seu arquivo .desktop
será exibido no Dash
Nota
Existem mais problemas com o seu arquivo .desktop, como mencionado por @Braiam e @MrVaykadji. Alguns exemplos:
- Você não deve usar apenas usar valores inventados na linha
Categories=
, pois você pode ler aqui - O campo de versão não é obrigatório, mas se você usá-lo, use 1.0
Mais pode ser encontrado aqui . Boas ferramentas você pode encontrar aqui (também graças a @Braiam e @MrVaykadji).
A crítica que faz o seu arquivo .desktop não aparecer no Dash, no entanto, é a linha Exec=
.