Como voltar Ícone do Launcher para o emacs em 16.04?

1

Depois de instalar o 16.04, o ícone do Emacs no Launcher se transformou em um ponto de interrogação:

Em 15.10, o ícone ficou mais parecido com isto:

Eu acho que o problema pode ser que eu instalei o Emacs da fonte (e não usando sudo apt-get install emacs24 ). O binaray agora está instalado /opt/emacs-24.5/bin/emacs .

Eu encontrei este tutorial UnityLaunchersAndDesktopFiles para saber como criar .desktop arquivos.

Se eu executar find /opt/emacs-24.5/ -name '*.desktop' , obtenho

/opt/emacs-24.5/share/emacs/24.5/etc/emacs.desktop
/opt/emacs-24.5/share/applications/emacs.desktop

e executando find /opt/emacs-24.5/share/icons -name '*.png'

/opt/emacs-24.5/share/icons/hicolor/48x48/apps/emacs.png
/opt/emacs-24.5/share/icons/hicolor/32x32/apps/emacs.png
/opt/emacs-24.5/share/icons/hicolor/24x24/apps/emacs.png
/opt/emacs-24.5/share/icons/hicolor/128x128/apps/emacs.png
/opt/emacs-24.5/share/icons/hicolor/16x16/apps/emacs.png

Como devo proceder agora para criar um arquivo .desktop em funcionamento?

Atualizar :

Eu já tentei o seguinte:

  • Copiado o arquivo desktop fornecido que acompanha o emacs para uma pasta local:

      cp /opt/emacs-24.5/share/applications/emacs.desktop ~/.local/share/applications/emacs.desktop
    
  • Em seguida, alterou o nome do arquivo de ícone desse arquivo:

    [Desktop Entry]
    Name=Emacs
    GenericName=Text Editor
    Comment=Edit text
    MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
    Exec=emacs %F
    Icon=/opt/emacs-24.5/share/icons/hicolor/48x48/apps/emacs.png
    Type=Application
    Terminal=false
    Categories=Development;TextEditor;
    StartupWMClass=Emacs
    Keywords=Text;Editor;
    
  • Executar desktop-file-validate :

     $ desktop-file-validate ~/.local/share/applications/emacs.desktop 
     /home/hakon/.local/share/applications/emacs.desktop: hint: value item "TextEditor" in key "Categories" in group "Desktop Entry" can be extended with another category among the following categories: Utility
    
  • Executar desktop-file-install :

     sudo desktop-file-install --dir=/usr/share/applications/ ~/.local/share/applications/emacs.desktop
    

Ainda assim, o ícone não foi alterado. O que estou perdendo?

    
por Håkon Hægland 26.04.2016 / 08:17

2 respostas

1

Existem duas opções:

  1. O diretório /opt não está em $PATH , o que torna o arquivo .desktop inválido, a menos que você tenha adicionado o diretório manualmente. Geralmente, os aplicativos em /opt têm um caminho absoluto na linha Exec= . Altere-o para o caminho absoluto para o executável.
  2. Pode haver outro arquivo .desktop em ~/.local/share/applications , ocupando o lugar do seu arquivo .desktop personalizado. Qualquer um:

    • arraste o arquivo .desktop para o lançador e veja se ele funciona (com o ícone correto).
    • Se não, ou como alternativa, execute o comando:

      grep -rl emacs ~/.local/share/applications
      

    para localizar possíveis arquivos .desktop desatualizados ou incorretos, iniciando emacs

por Jacob Vlijm 26.04.2016 / 13:42
1

Parece que o problema não estava usando um nome de caminho absoluto para a chave Exec . Aqui está um arquivo /usr/share/applications/emacs.desktop modificado:

[Desktop Entry]
Name=Emacs
GenericName=Text Editor
Comment=Edit text
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
Exec=/opt/emacs-24.5/bin/emacs %F
Icon=/opt/emacs-24.5/share/icons/hicolor/scalable/apps/emacs.svg
Type=Application
Terminal=false
Categories=Development;TextEditor;
StartupWMClass=Emacs
Keywords=Text;Editor;
X-Desktop-File-Install-Version=0.22

Isso parece funcionar bem agora.

    
por Håkon Hægland 26.04.2016 / 13:37