OK, estou batendo a cabeça contra isso há duas horas e tentando não ter que postar como uma pergunta, mas desisto. Migrei hoje para uma nova instalação do Ubuntu 24.04 e não consigo fazer meus arquivos FaveProgram.desktop funcionarem. Esses são arquivos que definem ícones do iniciador de GUI para executar um comando CLI específico (por exemplo, "faveprogram -option attribute"), e eu pesquisei e tentei e pesquisei e hackeei e testei e aaaarrrrgghh...
Quando eu "executo" o ícone, ele sempre abre o editor de texto padrão. Aqui está o que eu tentei:
- clique com o botão direito -> Executar como programa
- clique com o botão direito -> Abrir com -> Executar software
- definido como executável graficamente na GUI
- definido como executável manualmente com chmod (confirmado)
- gio set FaveProgram.desktop metadata::trusted {sim verdadeiro VERDADEIRO} (tentei todos)
- nota: "Permitir iniciar" NÃO está disponível no menu do botão direito!
- começando do zero com o novo arquivo .desktop
Eu assisti /var/log/syslog e ele diz algo sobre um problema de spawn VTE. Isso pode ser uma pista falsa, mas estou mencionando caso alguém tenha uma dica sobre o próximo passo.
Comecei a tentar pesquisar sobre o xdg-mime, mas não entendi.
Aqui está o conteúdo do arquivo .desktop que estou tentando executar:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=true <-- normally false, tried true anyway
Exec=/usr/bin/program -option value <-- yes it exists, can run manually
Name=FaveProgram
Comment=FaveProgram
Icon=/valid/path/to/icon.png
EDIT: Achei o link "editar" aqui, não estava visível antes. Adicionando mais algumas coisas:
- obrigado ao administrador @mook765 por editar rapidamente esta questão para formatar meu código
- Eu tentei remover o xdg-open, sem melhora
- Anteriormente, eu estava executando esses ícones de pastas arbitrárias, via Nautilus / Arquivos / gerenciador de arquivos, não de menus da GUI; em relação a uma pasta de aplicativo XDG, qual devo tentar?
- obrigado @david; Eu tentei o primeiro método sugerido naquele tópico e não funcionou, passarei para os outros em breve
Caso os erros do VTE no syslog causem problemas, aqui está a sequência de erros que recebo quando tento "executar como programa":
- 2025-03-06T15:58:58.273700-05:00 shuttle4 systemd[1379]: vte-spawn-8a9d9df0-2262-4e79-b9be-15b00bcdf6b5.scope: PID 48562 desapareceu antes que pudéssemos movê-lo para o cgroup de destino '/user.slice/user-1000.slice/ [email protected] /app.slice/app-org.gnome.Terminal.slice/vte-spawn-8a9d9df0-2262-4e79-b9be-15b00bcdf6b5.scope', ignorando: Esse processo não existe
- 2025-03-06T15:58:58.273830-05:00 .... Nenhum PID restante para anexar ao grupo de controle do escopo, recusando
- (mais duas linhas, caracteres limitados)
Para registro, algumas pesquisas no Google sobre os erros do VTE (mencionados em um comentário acima) me levaram a a) reinstalar o dbus (via apt) e b) reinicializar. Então, um desses (talvez apenas a reinicialização!) sozinho pode ter contribuído para que as coisas começassem a funcionar.
Então, agora estou chegando a algum lugar! Resumindo, descobri que o mesmo arquivo .desktop, de 2019 SEM edições, funciona corretamente se copiado para a área Desktop e iniciado de lá por meio de clique duplo. Se eu usar Nautilus / Files para navegar até a pasta ~/Desktop e clicar duas vezes no arquivo .desktop lá, recebo o editor de texto irritante. Não era assim que funcionava antes!
Então eu acho que @vanadium (em um comentário) acima estava no caminho certo. De que forma eu posso adicionar "xdg-open" ao arquivo .desktop para que ele funcione dentro do Nautilus, no Ubuntu 24.04? Porque eu não quero ter que visualizar meu Desktop para iniciar esses programas.
Executar programas clicando em qualquer arquivo executável em um gerenciador de arquivos não é mais suportado em vários ambientes de desktop. O usuário deve executar programas instalados corretamente iniciando-os a partir de um menu de aplicativos, ou com um comando no terminal ou uma caixa de diálogo "Executar um comando", ou por meio de uma associação de arquivo (por exemplo, clicar em um
.odt
inicia o LibreOffice). No Gnome Shell, os executáveis ainda podem ser executados a partir do menu do botão direito, mas não mais pressionando Enter ou clicando duas vezes.Ainda é possível configurar seu sistema de modo que clicar duas vezes em um
.desktop
iniciador no gerenciador de arquivos inicie o aplicativo..desktop
iniciador que execute uma ferramenta que possa executar.desktop
arquivos, por exemplo para a área de trabalho do gnome:Exec=gio launch %U
, em um local dedicado (por exemplo,~/.local/share/applications
para acesso somente do usuário).desktop
os arquivos a esse iniciador.Veja esta pergunta para saber como executar
.desktop
inicializadores a partir de um comando, neste caso de .