terça-feira, 19 de junho de 2018

Teclado sem os LEDs exibindo o status atual das teclas CapsLock e NumLock

No Linux nas distros Ubuntu, Lubuntu e Xubuntu existe um plugin para exibir o status atual do teclado que é o indicator-keylock e que  provavelmente deve funcionar em outros sabores do Ubuntu, mas quem está utilizando uma outra distro não baseada no Ubuntu e utilizando um ambiente gráfico mais simples com openbox, fluxbox, lxde, IceWM e outros muitas vezes não existe um plugin para os mesmos e nem um programa específico para isto nestas distros então como ter a exibição do status atual das teclas CapsLock e NumLock ?

Uma solução paliativa, embora que não exiba o status permanente no painel como os plugins de status do teclado encontrado em grandes desktop mais completos e criar um script e associar este script as teclas CapsLock e NumLock que exibirá um popup exibindo o status atual por 2 segundos se está ligada ou desliga ao ser acionadas estas teclas.

Para teclados que não tem o led indicador se o CapsLock e o Numlock está ligado/desligado muito comum em teclados sem fio precisamos ter os seguintes pacotes instalados: xbindkeys, notify-send e numlockx.

Para a tecla CapsLock, criamos o script capslock com permissão x salvo em /usr/local/bin com o conteúdo abaixo:

#!/bin/bash
sleep 1
state=$(xset -q | grep Caps | awk '{print $4}')
if [ "$state" = "on" ]
then
notify-send -t 2000 --hint=int:transient:1 "Capslock :ON"
else
notify-send -t 2000 --hint=int:transient:1 "Capslock :OFF"
fi

Agora numa janela de terminal devemos usar o comando xbindkeys -k para obter o código e o nome da tecla, e copiar o resultado para o arquivo ~/.xbindkeysrc e substituir "NoCommand" pelo nome do script.

$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"NoCommand"
    m:0x12 + c:66
    Mod2 + Caps_Lock



Dentro do arquivo ~/.xbindkeysrc é feita a associação da tecla CapsLock com o script capslock, devendo ficar conforme abaixo.

"capslock"
    m:0x12 + c:66
    Mod2 + Caps_Lock


Após salvar o arquivo é necessário matar o processo atual do xbindkeys e iniciar novamente para carregar a nova configuração.

Agora quando acionar somente a tecla CapsLock será sempre exibindo um popup de balão no topo da tela no lado direito, dizendo o estado atual se a mesma está sendo ligada ON ou desligada OFF sendo mostrado por 2 segundos e fechando automaticamente.

Tecla NumLock do teclado numérico

Crie o script numerolock com permissão x salvo em /usr/local/bin

Conteúdo do script:
#!/bin/bash
sleep 1
state=$(xset -q | grep Num | awk '{print $8}')
if [ "$state" = "on" ]
then
notify-send -t 2000 --hint=int:transient:1 "NumLock :ON"
else
notify-send -t 2000 --hint=int:transient:1 "NumLock :OFF"
fi

Use o comando xbindkeys -k numa janela de terminal para obter o código da tecla NumLock ao pressionar a mesma, copie o resultado para o arquivo ~/.xbindkeysrc e substituir "NoCommand" pelo nome do script.

$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"NoCommand"
    m:0x30 + c:77
    Mod2+Mod3 + Num_Lock


Dentro do arquivo ~/.xbindkeysrc é feita a associação da tecla NumLock com o script numerolock, devendo ficar conforme abaixo.

"numerolock"
    m:0x30 + c:77
    Mod2+Mod3 + Num_Lock


Após salvar o arquivo é necessário matar o processo atual do xbindkeys e iniciar novamente para carregar a nova configuração.

Notas:
Não é a melhor solução, mas quebra um galho legal na falta de um plugin ou programa para esta finalidade no seu ambiente gráfico preferido.

Você deve colocar o comando  xbindkeys para ser executado automaticamente pelo seu ambiente gráfico assim que o mesmo for iniciado, onde você deverá saber onde configurar isto no seu ambiente gráfico.

Procedimento testado no Slackware 14.2 utilizando o desktop openbox com painel tint2 e um teclado sem fio da marca C3 Tech modelo K-W600 BK wireless com mouse wireless e adaptador usb nano sendo 100% compatível com o Linux. O referido teclado também foi utilizando no Xubuntu 12.10 32 bits e no Lubuntu 16.04 64 bits funcionando perfeito.

O código fonte do script foi obtido em https://ubuntuforums.org/showthread.php?t=1927545

Telas





domingo, 27 de maio de 2018

Criando vídeo slides show com Imagination no Slackware



Imagination é um programa que serve para criar slides de suas fotos favoritas para gravar em um vídeo, podendo aplicar vários efeitos em cada foto, determinar o tempo de exposição de cada uma, escrever fases sobre as imagens, inserir um arquivo de som em formato mp3 ou wav, e com o trabalho concluído basta exportar para o formato de vídeo escolhido no inicio da criação que pode ser somente no formato vob, ogv, flv e 3gp, mas se precisar que o vídeo esteja em outro formato, basta converter o vídeo criado usando o ffmpeg em linha de comando ou através de uma gui gráfica como FFmpegYAG ou Winff.

Para instalar no Slackware, se tiver instalado o sbopkg e com o sudo habilitado basta executar o comando abaixo:

$ sudo sbopkg -i imagination

Nota:
Como a única dependência para o imagination é o ffmpeg e se você já tem o mesmo instalado, para não ser baixado e recompilado o ffmpeg que demora muito, antes de usar o sbopkg, edite o arquivo imagination.sqf com um editor de texto ASCII puro de sua preferência e comente (colocar o caractere # sustenido na frente do ffmpeg) a linha do ffmpeg, daí o mesmo não será baixado e compilado para instalação, devendo ficar conforme abaixo.

$ sudo leafapd /var/lib/sbopkg/queues/imagination.sqf
#ffmpeg
imagination

Aqui um exemplo simples de um vídeo criado sem som no Imagination feito de alguns Screenshots de vários distro Linux e desktops diferentes que já utilizei ao longo dos anos.



Para mais informações:
http://imagination.sourceforge.net/


quinta-feira, 17 de maio de 2018

Traduzindo o menu Iniciar do Openbox

Se você está utilizando o obmenu-generator para gerar o menu Iniciar do Openbox, você pode traduzir todas as categorias (grupos) de programa para o português facilmente, bem como os atalhos rápidos, podendo alterar o comando que vai nos mesmos em algumas partes, bastando apenas editar o arquivo ~/.config/obmenu-generator/schema.pl com seu editor de texto ASCII preferido.

Na sessão {sep => 'Categories'}, na segunda coluna que é LABEL, troque o nome Accessories por Acessórios repetindo o mesmo procedimento para os outros itens desejados que você deseja alterar a descrição, ficando assim a linha alterada.
{cat => ['utility',     'Accessórios', 'applications-utilities']},

our $SCHEMA = [

    #          COMMAND                 LABEL              ICON
    {item => ['xdg-open .',       'File Manager', 'system-file-manager']},
    {item => ['xterm',            'Terminal',     'utilities-terminal']},
    {item => ['xdg-open http://', 'Web Browser',  'web-browser']},
    {item => ['gmrun',            'Run command',  'system-run']},

    {sep => 'Categories'},

    #          NAME            LABEL                ICON
    {cat => ['utility',     'Accessories', 'applications-utilities']},
    {cat => ['development', 'Development', 'applications-development']},
    {cat => ['education',   'Education',   'applications-science']},
    {cat => ['game',        'Games',       'applications-games']},
    {cat => ['graphics',    'Graphics',    'applications-graphics']},
    {cat => ['audiovideo',  'Multimedia',  'applications-multimedia']},
    {cat => ['network',     'Network',     'applications-internet']},
    {cat => ['office',      'Office',      'applications-office']},
    {cat => ['other',       'Other',       'applications-other']},
    {cat => ['settings',    'Settings',    'applications-accessories']},
    {cat => ['system',      'System',      'applications-system']},

------------ corte de conteúdo que não será alterado ----------

## Custom advanced settings
    {sep => undef},
    {beg => ['Advanced Settings', 'applications-engineering']},


Alterando os programas padrão dos 4 itens de programa da raiz do menu Iniciar (atalho rápido).
Na sessão our $SCHEMA = [ troque o nome que tiver na coluna COMMAND por um nome de executavel do sistema de sua preferência onde os 4 primeiros itens do menu Iniciar executam um gerenciador de arquivos, uma janela de terminal, um navegador web e uma caixa executar por padrão da instalação.

Como fica depois de tudo alterado

our $SCHEMA = [

    #          COMMAND                 LABEL              ICON
    {item => ['pcmanfm .',       'Gerenciador de arquivos', 'system-file-manager']},
    {item => ['lxterminal',            'Terminal',     'utilities-terminal']},
    {item => ['firefox', 'Firefox',  'web-browser']},
    {item => ['gmrun',            'Executar...',  'system-run']},
    
    {sep => 'Categorias'},  

    #          NAME            LABEL                ICON
    {cat => ['utility',     'Acessórios', 'applications-utilities']},
    {cat => ['development', 'Desenvolvimento', 'applications-development']},
    {cat => ['education',   'Educação',   'applications-science']},
    {cat => ['game',        'Games',       'applications-games']},
    {cat => ['graphics',    'Gráficos',    'applications-graphics']},
    {cat => ['audiovideo',  'Multimídia',  'applications-multimedia']},
    {cat => ['network',     'Internet',     'applications-internet']},
    {cat => ['office',      'Office',      'applications-office']},
    {cat => ['other',       'Outros',       'applications-other']},
    {cat => ['settings',    'Configurações',    'applications-accessories']},
    {cat => ['system',      'Sistema',      'applications-system']},

------------ corte de conteúdo que não será alterado ----------

    ## Custom advanced settings
    {sep => undef},
    {beg => ['Configurações Avançadas', 'applications-engineering']},

Somente tem como alterar a descrição  das categorias (grupos de programas) em LABEL e os programas utilizados na coluna COMMAND e algumas ações padrão no arquivo schema.pl, não sendo possível traduzir algum item de programa que tiver em um determinado grupo de programa na edição deste arquivo, já que os mesmos nem aparecem aqui, salvo a parte de configuração dos arquivos do Openbox e tint2.

Por padrão todos os items que tiver no menu Iniciar criado pelo obmenu-generator será sua descrição em inglês independente do idioma configurado da sua instalação do sistema, no qual a grande maioria não fara muita diferença pois os nomes utilizados são o proprio nome da aplicação em si mesmo, mas tem alguns casos que vem com uma descrição extra ou somente a descrição do que faz não sendo exibido o nome da aplicação, neste caso você pode editar o arquivo do programa que fica em /usr/share/applications/ onde o mesmo possuir a extensão .desktop e alterar somente uma linha que começa com Name= (não edite as outras linhas que tem Name seguido das [ ] onde vai 2 ou 4 letras de identificação da linguagem do idioma para o menu dentro delas que não funcionará para o Openbox.

Como exemplo no menu Iniciar o item GCompris no grupo Educação aparece como Educational suite GCompris, você pode alterar esta descrição editando o arquivo /usr/share/applications/gcompris.desktop editando somente a linha com Name= descrição.

Name=Educational suite GCompris (descrição padrão antes da alteração)

Name=Jogos Educativos GCompris  (após alterado) 

Se você tiver utilizando o modo menu dinâmico a alteração no menu Iniciar depois de salvar o arquivo editado é no mesmo instante, mas se tiver utilizando menu estático deverá utilizar o comando openbox --reconfigure em uma janela de terminal para atualizar nesta sessão em uso ou pelo atalho do menu.

Telas




    

quinta-feira, 10 de maio de 2018

Instalando o desktop Openbox no Slackware 14.2

Nesta dica, foi feita uma instalação personalizada do Slackware sem os desktop Kde e Xfce para posterior instalação do Openbox que é um window manager bem leve, mas para deixar com um estilo bem próximo de um ambiente freedesktop e usabilidade fácil devemos também instalar algumas aplicações essenciais, alertando que o procedimento abaixo deve ser feito somente para usuários mais experientes caso você não tiver nenhum outro desktop instalado e funcionando atualmente diferente do openbox já que deverá fazer diversas configurações para openbox, tint2, e outros arquivos do Slackware o qual não entrarei em detalhes de todas elas nem do procedimento da instalação personalizada  e configuração do Slackware.

No console logrado como root

# wget https://github.com/sbopkg/sbopkg/releases/download/0.38.1/sbopkg-0.38.1-noarch-1_wsr.tgz

# installpkg sbopkg-0.38.1-noarch-1_wsr.tgz
# sbopkg -r

Agora instalaremos o openbox e algumas aplicações feita para o mesmo.

# sqg -p "openbox obmenu obconf obmenu-generator obshutdown"
openbox: empty REQUIRES line. No queuefile generated.
Uncomment SKIP_EMPTY to change this.
Processing obmenu.
Processing obconf.
Processing obmenu-generator.
Processing obshutdown.
Done.

Foi usado o sqg para verificar todas as dependências dos pacotes citados e para poder passar mais de um pacote para o sbopkg instalar, sendo que a opção -k do sbopkg faz com que ele não baixe o mesmo pacote e recompila o mesmo caso este pacote já está instalado, pois um mesmo pacote pode ser uma dependência de vários outros pacotes com funções diferentes.

# sbopkg -k -i "openbox obmenu obconf obmenu-generator obshutdown"

Tecle q e a seguir Enter na mensagem exibida.


Instalando algumas aplicações para melhorar o uso do desktop openbox

# sbopkg -k -i imlib2 (Na imlib2 escolha a url alternativa, teclando A já que exibi arquivo não encontrado)
# sbopkg -k -i tint2
# sbopkg -k -i gmrun  (Tecle A pra escolher a url alternativa já que a default não funcionou)
# sbopkg -k -i lxterminal
# sbopkg -k -i spacefm (gerenciador de arquivos gráficos com suporte a plugin e ações)
# sbopkg -k -i udevil
# sbopkg -k -i parcellite
# sbopkg -k -i cups-pdf
# sbopkg -k -i feh
# sbopkg -k -i giblib
# sbopkg -k -i scrot
# sbopkg -k -i gcalctool
# sbopkg -k -i lxdm
# sbopkg -k -i nbtscan
# sbopkg -k -i gsimplecal
# sbopkg -k -i geany
# sbopkg -k -i volumeicon
# sbopkg -k -i viewnior
sbopkg -k -i numlockx

Sobre os pacotes acima:

imlib2 = lib dependência do tint2, scrot e feh
tint2 = painel para programas abertos, atalhos, relógio e system tray.
gmrun = caixa executar
spacefm = gerenciador de arquivos, que permite criar atalhos no desktop e papel de parede
udevil = pacote para o spacefm montar dispositivos ou compartilhamento remoto como user normal
parcellite = gerenciador da área de transferência
cups-pdf = impressora virtual pdf
feh = visualizador de imagens, podendo usar a mesma como papel de parede.
giblib = lib de dependência do scrot
scrot = para tirar screenhort
gcalctool = calculadora
lxdm = gestor de login gráfico
nbtscan = pesquisar todas maquinas na rede que esteja rodando um compartilhamento de pasta window ou smb
gsimplecal = calendário simples para utilizar no tint2
geany = editor de texto padrão utilizado para editar configurações do openbox e tint2
volumeicon = ícone de volume para o system tray
viewnior = ótimo visualizador de imagens com suporte a exif
numlockx = ligar teclado numérico automaticamente na inicialização do desktop.

No console logrado agora como usuário normal

$ mkdir ~/.config/openbox
$ cd /etc/xdg/openbox
$ cp -v * ~/.config/openbox

O próximo passo agora é criar um arquivo xinitrc.

Para criar uma arquivo ~/.xinitrc configurado para openbox faça:

$  xwmconfig

Na lista de ambiente gráfico selecione xinitrc.openbox-session, depois selecione OK.
Agora sempre que usar o comando startx, será executado o desktop openbox como padrão do runlevel 3.

Iniciando o desktop openbox

$ startx

Agora faremos diversas configurações, a partir de uma janela de terminal.
Os passos abaixo você deverá esta com o seu usuário normal

Editando o arquivo ~/.config/environment

$ cat environment
#
# Set system-wide environment variables here for Openbox
# User-specific variables should be placed in $HOME/.config/openbox/environment
#

# To set your language for displaying messages and time/date formats, use the following:
#LANG=en_CA.UTF8
LANG=pt_BR.UTF8

# To set your keyboard layout, you need to modify your X config:
# http://www.google.com/search?q=how+to+set+keyboard+layout+xorg

O arquivo environment traduz algumas ações do openbox, ao clicar em Sair a mensagem será exibida em português se você configurou LANG=pt_BR.UTF8 bem como no tint2 onde o botão de área virtual será exibido área de trabalho 1 ao invés de desktop 1 e na parte do relógio apresentará o dia da semana e o mês em português ao invés do inglês.

Configurando aplicações para iniciar junto com o openbox

No final do arquivo comando ~/.config/openbox/autostart coloque os comandos abaixo, para estas aplicações serem iniciadas junto com o openbox.

tint2 &                 (painel)
volumeicon &      (ícone pra regulagem do volume de som)
setxkbmap br      (configura o teclado para abnt2, ou seja brasileiro com a tecla Ç)  
parcellite &         (clipboard)
spacefm --desktop &  (isto permite criar ícones no desktop, e usar fotos de papel de parede pelo spacefm)
xscreensaver -no-splash & (rodar o daemon da proteção de tela)
numlockx on (liga o teclado numérico)

Nota:
Ao dar total controle da área de trabalho para o spacefm, o click com o botão direito do mouse não mais exibirá o menu Iniciar do openbox como padrão, mas você pode exibi o mesmo clicando com o botão direito do mouse em cima
de um atalho configurado no painel ou em uma parte vazia sem ícone do painel (depende da configuração padrão do seu tint2rc) ou querendo de volta o menu Iniciar ao clicar em um espaço vazio do desktop, no spacefm ir no menu Exibir/Configurações, guia Área de trabalho, marque a opção "Botão direito do mouse exibi menu na área de trabalho."

Configurando o obshutdown

Para funcionar as opções do obshutdown e exibi os ícones delas faça o procedimento abaixo como usuário normal.

$ cd /usr/share/obshutdown/
$ cp example.rc ~

No seu HOME faça:

$ mv example.rc .obshutdown.rc

Agora quando executar o  obshutdown, aparecerá os ícones Cancelar, Logout, Reiniciar, Desligar, Suspender, Hibernar que são bonitos e ao clicar nas opções todas as mesmas funcionam agora como user normal.


Utilizando o obshutdown no menu avançado do openbox criado pelo obmenu-generator

Se você utilizou o obmenu-generator para gerar um menu Iniciar avançado e melhor que o tradicional, edite o arquivo ~/.config/obmenu-generator/schema.pl e edite a sessão  This uses the 'oblogout' menu e retire o # desta da linha item e troque oblogout por obshutdown, para substituir a janela de confirmação de saída que retorna para o gerenciador de login gráfico ou para o console real pelo do comando obshutdown que tem opções de cancelar, logout, reiniciar, desligar, suspender e hibernar com belos ícones na cor branca em um fundo preto fullscreen, podendo ser executado pelo user normal.


Antes:

## This uses the 'oblogout' menu
    # {item => ['oblogout', 'Exit', 'application-exit']},
--------------
Depois

 ## This uses the 'oblogout' menu
     {item => ['obshutdown', 'Exit', 'application-exit']},
]

Mudando o editor de texto padrão que edita as configurações do openbox como tint2rc, rc.xml, menu.xml

No arquivo ~/.config/obmenu-generator/config.pl edite o mesmo com seu editor de texto favorito e basta trocar geany por leafpad ou outro de sua preferência e se você tiver utilizando menu dinâmico não precisa reiniciar o openbox ou usar o comando openbox --reconfigure que será aplicada no mesmo instante.

Na sessão our $CONFIG = {  e na linha "editor" troque geany por leafpad.


Utilizando o spacefm para montagem de pendrives

Para que a montagem de pendrive funcione através do spacefm coloque seu usuário nos seguintes grupos do arquivo /etc/group onde nando é o meu usuário normal.

$ cat group | grep nando
disk:x:6:root,adm,nando
cdrom:x:19:nando
messagebus:x:81:nando
haldaemon:x:82:nando
plugdev:x:83:nando
polkitd:x:87:nando

Reinicie o computador, e agora funciona normalmente pelo spacefm a montagem de pendrives.

Compartilhamento windows

Coloque o seu usuário nos grupos abaixo, para que os arquivos colados pela rede fique com as permissões do seu usuário e grupo users.

/etc/group

nobody:x:98:nobody:nando
nogroup:x:99:nando
users:x:100:nando

Montando compartilhamento windows com senha pelo spacefm

Menu Arquivo/Abrir url

Digite:
smb://gustavo:minhasenha@192.168.1.105/privativo

Onde gustavo é o nome do user remoto gustavo, após os dois ponto é a senha minhasenha do user remoto e após a @ é o IP remoto do computador, seguindo pelo compartilhamento remoto que é privativo.

Clique em Ok, onde o mesmo será montado a partir /media podendo ser acessado também pela janela terminal.
A montagem aparece tanto no comando df quanto no comando mount.

Notas:

A linha de comando da montagem fica armazenada no spacefm, incluindo a senha digitada visível, até que você entra com um nova linha de comando.

O spacefm utiliza o udevil para montar dispositivos e o mesmo somente funciona pela especificação do IP como padrão, salvo ser o seu sistema e os outros computadores da rede tiver utilizado IP fixo sendo feito uma configuração especifica de hostname para cada IP fixo da rede associando a um hostname no seu computador, podendo neste caso utilizar qualquer comando de rede pelo hostname como ping, ssh, mount e outros.

Se você configurou o seu servidor samba, pode usar o comando nmblookup para retornar o IP especificando o nome do hostname remoto para pesquisa.

$ nmblookup gustavo  (gustavo é o nome de um computador que compartilha uma pasta windows na rede)
192.168.1.105 gustavo<00>

Para compartilhamento windows sem restrições (senha) use desta forma no spacefm: smb://192.168.1.105/partilha


Instalando uma impressora pdf

Para poder instalar a impressora pdf devemos habilitar o servidor cups tornando-se root na janela de terminal.

# cd /etc/rc.d
# chmod +x rc.cups
# ./rc.cups start

Pronto, agora você pode iniciar o aplicativo do menu Iniciar para instalar a impressora

Por padrão os arquivo imprimidos pelo cups-pdf ficam em /var/spool/cups-pdf/nando

Para modifica para o seu HOME, faça:
# cd /etc/cups
# leafpad cups-pdf.conf

Coloque a seguinte linha na sessão Path Settings   
Out ${HOME}/pdf

Após salvar o arquivo, reinicie o servidor cups.

Ativando o gestor de login gráfico lxdm

Ative o runlevel 4 no arquivo /etc/inittab para usar o gestor login gráfico lxdm, mas é também necessário
editar também o arquivo /etc/rc.d/rc.4 e comentar as linhas do xdm e colocar estas linhas abaixo do mesmo.

# If all you have is LXDM, I guess it will have to do:
 if [ -x /usr/sbin/lxdm ]; then
    exec /usr/sbin/lxdm
  fi

Após reinicie o pc.

O lxdm permite escolher outros desktops que você vier a instalar mais tarde e tem também a opção de Desligar/Reiniciar o computador podendo ser executado pelo user.


Criando um menu melhor que o tradicional com obmenu-generator

O obmenu-generator permite criar um menu Iniciar completo com todos os programas instalados que utilizam arquivos .desktop do freedesktop facilmente podendo escolher entre dois modos de menu sendo estático e dinâmico com ou sem ícones para ambos.

Menu Estático

Gerando um menu estático

$ obmenu-generator -s -c    (gera um menu sem ícones)
$ obmenu-generator -s -i -c (gera um menu com ícones) 

Vantagem:
Você pode remover todos os itens que você não utiliza ou muito raramente utiliza sem remover o arquivo .desktop do local original do sistema, já que os itens do seu menu Iniciar estão no arquivo ~/.config/openbox/menu.xml, servindo também para deixar o seu menu mais exunto somente com atalhos que realmente são usados diariamente.

Permite criar novo grupo de programa que não existe ainda e adicionar programas que não tem arquivos .desktop facilmente sem precisar criar um arquivo .desktop.

Desvantagem:
Não atualiza automaticamente ao instalar ou remover programas pelo seu gerenciador de pacotes.


Menu Dinâmico

Gerando um menu dinâmico

$ obmenu-generator -p     (gera um menu sem ícones)   
$ obmenu-generator -p -i  (gera um menu com ícones) 
 

Não tem como editar os itens do menu Iniciar para alterar um nome de programa, deletar os atalhos que raramente são usados, já que não existe os atalhos no arquivo menu.xml.

Todos programas instalados ou removidos pelo seu gerenciador de pacotes automaticamente o menu Iniciar é atualizado na mesmo instante.

Para incluir um atalho de um programa que não existe um arquivo .desktop basta criar arquivo .desktop simplificado em /usr/share/applications para que o mesmo apareça no menu Iniciar automaticamente


Na tela abaixo um screenhort do meu desktop openbox personalizado.