Como posso adicionar itens de menu ao menu "Aplicativos" do Gnome a partir da linha de comando?

6

Estou usando o Ubuntu 9.10 e gostaria de automatizar a adição de alguns itens de menu no menu "Aplicativos" do Ubuntu.

Eu sei que posso usar o alacarte para fazer adições pontuais, mas estou procurando automatizar (seja via Perl ou Bash) a adição de muitos itens de menu a este menu.

Alguma idéia?

    
por Mick 09.11.2009 / 19:46

4 respostas

4

Aqui está um link para um script de shell que criará entradas no menu do GNOME

Snippet da postagem:

I have seen this question asked frequently on the Ubuntu forums. This page will teach you how. You as a user can make your own menu entry by right clicking on the menu icon in the upper left corner and selecting Edit Menus. This bring up a GUI an you can select which section to install the menu item in. We want to create one via a shell script.

All menu items are stored in the /usr/share/applications folder. In that folder there will be a .desktop file for each menu entry. Lets get into those .desktop files shall we?

Here is an example of the contents of a .desktop file: What the following code does is make a menu entry called Kompozer in the Programming section of the Gnome menu.

    
por 09.11.2009 / 20:27
3

Deve-se notar que o alacarte não coloca os itens adicionados em /usr/share/applications . Adiciona-os ao seu diretório pessoal. Então, se você não quiser criar entradas para todos os usuários, apenas o usuário atual, será necessário fazer as alterações abaixo.

Abaixo está uma entrada de teste, adicionada via alacarte, e os arquivos resultantes que foram criados.

(1) O arquivo applications.menu local é atualizado. Observe a entrada <Filename> .

# cat /home/user/.config/menus/applications.menu 
<!DOCTYPE Menu
 PUBLIC '-//freedesktop//DTD Menu 1.0//EN'
 'http://standards.freedesktop.org/menu-spec/menu-1.0.dtd'>
<Menu>
<Name>Applications</Name>
<MergeFile type="parent">/etc/xdg/menus/applications.menu</MergeFile>
<Menu>
<Name>Internet</Name>
<Include>
<Filename>alacarte-made.desktop</Filename>
</Include>
</Menu>
</Menu>

(2) O arquivo alacarte-made.desktop é criado em ~/.local/share/applications .

# ls -ltr ~/.local/share/applications/
-rw------- 1 user user  495 2010-04-14 15:48 Nokia-QtCreator.desktop
-rw------- 1 user user  403 2010-04-14 15:48 defaults.list
-rw-r--r-- 1 user user  134 2010-12-20 10:33 userapp-gvim-JYONNV.desktop
-rw-r--r-- 1 user user  321 2010-12-20 10:33 mimeinfo.cache
-rw-r--r-- 1 user user  165 2010-12-20 10:33 mimeapps.list
drwx------ 9 user user 4096 2011-05-26 15:34 ..
-rw------- 1 user user  108 2011-05-26 15:34 installjammer-program.desktop
-rw------- 1 user user  182 2011-05-26 15:34 installjammer-help.desktop
-rw------- 1 user user  201 2011-05-26 15:34 installjammer-userguide.desktop
-rw------- 1 user user  114 2011-05-26 15:34 installjammer-uninstall.desktop
-rwxr-xr-x 1 user user  202 2011-06-10 09:27 alacarte-made.desktop
-rw-r--r-- 1 user user  202 2011-06-10 09:28 alacarte-made.desktop.undo-0
drwxr-xr-x 2 user user 4096 2011-06-10 09:28 .

(3) Se você olhar o conteúdo de alacarte-made.desktop , verá a entrada "teste" que foi adicionada ao meu menu.

# cat ~/.local/share/applications/alacarte-made.desktop
#!/usr/bin/env xdg-open

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=gnome-panel-launcher
Name[en_US]=test
Exec=secretsync
Name=test
Icon=gnome-panel-launcher

Não tenho certeza da melhor maneira de modificar o arquivo applications.menu em 1 acima. É obviamente um arquivo formatado especificamente, e eu não sei se existe um utilitário que possa ser usado para fazer uma entrada a partir de um script ou linha de comando.

    
por 10.06.2011 / 17:58
0

Além do link fornecido pela Sathya, isso também mostra como automatizar a adição de menus adicionais ao menu Aplicativos:

link

    
por 09.11.2009 / 21:29
0

Algumas das outras respostas aqui têm caminhos incorretos (pelo menos, elas não existem no meu sistema Ubuntu 10.10) ou apenas abordam menus no nível do sistema. Os menus do nível do usuário do Gnome são armazenados em seu diretório $ XDG_CONFIG_HOME / menus (por padrão ~ / .config / menus /) e diretório $ XDG_DATA_HOME / applications (por padrão ~ / .local / share / applications). Você pode editar manualmente esses arquivos. Veja este tópico do Ubuntu para para alguns detalhes; Especificamente, a Especificação de menu da área de trabalho informa mais sobre os arquivos e seu formato.

    
por 30.03.2011 / 14:28