quinta-feira, 28 de junho de 2018

Incrementando o gerenciador de arquivos Spacefm

Depois de já ter visto aqui no blog como criar ações personalizadas no thunar e no pcmanfm, agora é a vez do spacefm para tornar o seu uso diário mais prático.

O gerenciador de arquivos spacefm pode ser incrementado com alguns plugins feito para ele e a inclusão de comandos externos (ações personalizadas) que embora possam ser executados fora do spacefm pelo terminal ou menu Iniciar, com a inclusão no menu Ferramentas se torna mais prático pra administrar os arquivos já que está tudo no mesmo local e aplicando a ação diretamente no(s) arquivo(s) selecionando(s). Neste tutorial veremos como criar as ações personalizadas e a instalação de plugins no spacefm.

Configurando ações personalizadas no spacefm

Abrir uma janela de terminal na pasta atual

Acesse Menu Ferramentas/Novo comando ou selecione um item qualquer existente com o botão direito do mouse e escolha Novo/comando.

Na janela Definir nome do item, digite Terminal aqui e clique em OK.
Na guia Comando digite somente lxterminal e na guia Opções desmarque "Executar como tarefa" depois clique em Ok para finalizar.

Pronto, agora no spacefm, ao acessar Ferramentas/Terminal aqui, será aberta a janela de terminal lxterminal, na pasta atual aberta.

Nota:
Não use nenhum argumento para o lxterminal como %F %d etc.

MD5SUM

Crie o script mymd5sum em /usr/local/bin com  permissão x com o contéudo abaixo:
zenity --info --timeout=2 --title="Aviso" --text "Aguarde, isto pode demorar mais de 1 minuto para arquivos maior que 3 GB"
xterm -g 100x5+10+10 -fa lucidasans  -fs 14 -T MD5SUM -hold -e md5sum $1

Acesse Menu Ferramentas/Novo comando ou selecione um item qualquer existente com o botão direito do mouse e escolha Novo/comando.

Na janela Definir nome do item, digite MD5SUM e clique em OK.
Na guia Comando digite somente mymd5sum %f e na guia Opções desmarque "Executar como tarefa" depois clique em Ok para finalizar.

Nota:
Dependendo da sua resolução de tela do monitor pode ser necessário ajustar a geometria 100x5+10+10 do xterm e tamanho da fonte para um melhor visualização da informação.


A linha do zenity pode ser omitada se preferir e a janela de terminal pode ser substituída por outra de sua preferência.

Editar configuração como Root

Acesse Menu Ferramentas/Novo comando ou selecione um item qualquer existente com o botão direito do mouse e escolha Novo/comando.

Na janela Definir nome do item, digite Editar configuração como Root e clique em OK.
Na guia Comando digite somente  gksu leafpad %f e na guia Opções desmarque "Executar como tarefa" depois clique em Ok para finalizar.


Montar celular pelo cabo usb

Foi publicado um artigo algum tempo atrás aqui no blog, o procedimento está neste link http://meumundotux.blogspot.com.br/2018/04/montando-o-seu-celular-android-no.html

Criar empacotamento


Acesse Menu Ferramentas/Novo comando ou selecione um item qualquer existente com o botão direito do mouse e escolha Novo/comando.

Na janela Definir nome do item, digite Criar empacotamento e clique em OK.
Na guia Comando digite somente  engrampa -d %N e na guia Opções desmarque "Executar como tarefa" depois clique em Ok para finalizar.


Agora no spacefm, selecione os arquivos e pastas que você deseja para criar um pacote comprimido, digitando um nome para pacote, escolha o formato do pacote (zip, 7z, bz2 etc...) e em Localização, selecione o diretório a onde ficará armazenando o arquivo do pacote criado e clique em Criar.

Com isto vimos como é fácil e muito útil configurar as ações personalizadas para ser executadas através do spacefm, use sua criatividade e crie outras ações quando precisar lidar com arquivos a partir do spacefm.


Instalação de plugins do Spacefm

Manipulação de imagens

Baixar os pacotes abaixo:

https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/bashscripts/imgtools-0.1.1.tar.gz

https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/bashscripts/Image-Tools_v0.2.2.spacefm-plugin.tar.gz

Onde o primeiro pacote contém o script em shell imgtools, que permite especificar um papel de parede, informações da imagem e ainda converter, rotacionar, redimensionar e unir todas as imagens em um arquivo .pdf, tudo isto utilizando os comandos do ImagemMagick, podendo ser executado em qualquer janela de terminal fora do o spacefm.

O segundo pacote é o plugin feito exclusivamente para spacefm que utilizará o script imgtools, podendo selecionar uma ou mais imagens no spacefm com o mouse, depois acesse o menu Plugins/Image-Tools e escolha a opção desejada.

Instalação:
No terminal descompacte o pacote imgtools-0.1.1.tar.gz e copie o arquivo imgtools para /usr/local/bin

Para o plugin, no spacefm acesse menu Plugin/Instalar/Arquivo selecione o arquivo Image-Tools_v0.2.2.spacefm-plugin.tar.gz e entre com sua senha de root ou sudo dependendo da sua distro.

Lixeira de arquivos

Baixe o pacote
http://www.jpfleury.net/site/fichiers/corbeille-spacefm/Corbeille-en-source.spacefm-plugin.tar.gz

No spacefm acesse menu Plugin/Instalar/Arquivo selecione o arquivo Corbeille-en-source.spacefm-plugin.tar.gz  e entre com sua senha de root ou sudo dependendo da sua distro.

Para enviar arquivos para lixeira, acesse menu Plugins/Trash, escolha "Move to trash".
Para recuperar arquivos da lixeira menu Plugins/Trash, escolha "Go to Trash", selecione os arquivos desejados para recuperação, depois menu Plugins/Trash escolha "Restore."

Notas:

Você pode mover diretórios e arquivos juntos e também recuperar ambos ao mesmo tempo selecionando os mesmos.

É utilizada a lixeira padrão do freedesktop que fica ~/.local/share/Trash/files utilizada por todos os gerenciadores de janelas que utiliza os arquivos .desktop para formar o menu iniciar.

Os arquivos excluídos por outros gerenciadores de arquivos como thunar, pcmanfm e outros integrado com freedesktop, podem ser recuperados no spacefm pelo plugin corbeille e vice-versa, já que o corbeille utiliza a mesma lixeira do freedesktop e trabalha da mesma forma só que mais transparente.

Renomeador em massa

Baixar estes 2 pacotes:

https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/bashscripts/Batch-Rename_v0.3.spacefm-plugin.tar.gz

https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/bashscripts/rntools-0.3.tar.gz

O primeiro pacote é o plugin especifico para o spacefm que utiliza o script rntools e o segundo pacote é o script rntools que permite renomear em massa, funcionando diretamente em qualquer janela de terminal fora do spacefm.

Para instalar o plugin, no spacefm acesse menu Plugin/Instalar/Arquivo selecione o arquivo Batch-Rename_v0.3.spacefm-plugin.tar.gz e entre com sua senha de root ou sudo dependendo da sua distro.

No terminal descompacte o pacote rntools-0.3.tar.gz e copie o arquivo rntools para /usr/local/bin.

Montagem de compartilhamentos remotos

Baixe o pacote
http://khapplications.darktech.org/zips/applications/MountShare.spacefm-plugin.tar.gz


No spacefm acesse menu Plugin/Instalar/Arquivo selecione o arquivo MountShare.spacefm-plugin.tar.gz e entre com sua senha de root ou sudo dependendo da sua distro.

Inserir anexos no seu cliente de e-mail


No spacefm acesse menu Plugin/Instalar/Arquivo selecione o arquivo Attach-Files.v1.1.spacefm-plugin.tar.gz e entre com sua senha de root ou sudo dependendo da sua distro.

Nas Propriedades do Plugin, guia Opções, desmarque a opção Executar como tarefa para não exibi uma janela de fundo referente a inclusão de arquivos no e-mail embaixo da janela do thunderbird que não inicia maximizada.

Utilizando:
No spacefm selecione os arquivos que você deseja anexar ao seu cliente de e-mail default e acesse menu Plugin/Attach files onde todos os arquivos selecionandos aparecerá no seu cliente de e-mail, no meu caso no thunderbird.
O plugin procura nesta ordem os clientes de e-mail para usar que estiver no seu sistema.

  • icedove 
  • thunderbird 
  • claws-mail

Clamav

Baixe o pacote 

http://www.dpb.org.uk/spacefm-plugins/ClamAV-Scan.spacefm-plugin.tar.xz

No spacefm acesse menu Plugin/Instalar/Arquivo selecione o arquivo ClamAV-Scan.spacefm-plugin.tar.xz e entre com sua senha de root ou sudo dependendo da sua distro.

Nota:
Necessário ter o Clamav instalado no seu sistema.

Nota geral:

Alguns plugins somente estarão listado no menu Plugin quando tiver uma pasta ou arquivo selecionado no spacefm para ação suportada ou tipo de arquivo como o item Manipulação de imagens, Inserir anexos e outros tipos de plugins não mencionados neste tutorial.

Telas











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