Arquivo de agosto \19\UTC 2009

Firefox 3.5 direto dos repositórios do Ubuntu.

O Firefox 3.5 já se encontra nos repositórios do Ubuntu Jaunty, sua instalação é simples, porém para alguns de nós também problemática.
A razão dos problemas eu discuto durante a aplicação desse artigo, para citar apenas uma, o Firefox-3.5 tá somente no idioma em inglês, mas o artigo consertará isso.

Se você seguir as dicas que irei lhe passar, a migração para o Firefox-3.5 será tranqüila e indolor.

Primeiramente, não tente instalar o Firefox 3.5 diretamente pelo Synaptic sem tomar algumas precauções. Seja mais cauteloso e siga os procedimentos que detalho a seguir.

Backup do seu Firefox atual

Visite e instale o complemento que há nessa página :

https://addons.mozilla.org/pt-BR/firefox/addon/2109

Trata-se dum complemento para o Firefox chamado F.E.B.E, uma ferramenta de backup para o seu Firefox que é capaz de realizar o backup de suas senhas, formulários, pesquisa, cookies, complementos, temas, … enfim tudo o que você possui no firefox hoje. A utilidade dele é imensa : guardar seu backup para voce restaura-lo num momento de sinistro, transportar sua configuração para outra máquina com o Firefox instalado ou no nosso caso fazer uma migração tranquila para versões posteriores do Firefox.

Instalou o FEBE e reiniciou o Firefox ?
Vá em Ferramentas->Febe->Opcoes do Febe, e acerte o diretorio de destino do backup :
Febe : Destino do backup

Clique no botão “Opções” :

Selecione o tipo do backup como “seletivo” e em itens Adicionais marque apenas os itens que tem importância para você :
Itens adicionais para backup

Não vale muito a pena marcar tudo porque nós vamos migrar a versão do Firefox e não temos certeza absoluta que os temas e as extensões (complementos) serão compatíveis.

Depois, clique no botão [OK].

Agora, vamos ao Backup vá ao Menu Ferramentas->Febe->Executar Backup e se tudo ocorreu como planejado, na pasta que você indicou como destino do backup haverão os seguintes arquivos :
Arquivos de backup gerado pelo FEBE

Tendo garantido que os arquivos de backup estão OK, então prosseguimos.

Lençóis limpos para o novo Firefox

A profile anterior do Firefox deverá ser eliminado antes de usar o novo Firefox, isso fará com que a nova versão recrie uma profile limpinha. Nesse instante, se você estiver usando o Firefox para ler esta página deverá gerar uma impressão dela em formato PDF para seguir as novas instruções pois temos de fechar o Firefox para eliminar sua profile :
Criando um PDF deste artigo.

1..2…3…4…5… Já fechou o seu Firefox ? Está seguindo as instruções através do leitor de PDF ?
Então tá, vá até o Terminal (Aplicativo->Acessórios->Terminal) e execute o comando :

cd ~/.mozilla
~/.mozilla$ ls -1
extensions
firefox

O Firefox 3.5 criará uma pasta independente chamada de ‘firefox-3.5’ e depositará toda sua estrutura nova (incluindo as profiles) alí. Mas a verdade é que até que eu eliminasse a pasta ‘firefox’ eu simplesmente não conseguia fazer o firefox 3.5 funcionar, sempre reclamando com uma tal de instrução chamada XUL num arquivo XML e capotando no final. Por isso eu recomendo executar o seguinte comando :

mv firefox firefox.old

Aparentemente se houver a pasta ‘firefox’, o Firefox-3.5 reutiliza algumas de suas configurações ou as copia para sua nova estrutura e tenho a impressão que dependendo de algumas circunstancias ou combinações de fatores não consegue as utilizar e capota no final. Assim renomeamos a pasta ‘firefox’ para ‘firefox.old’ para o Firefox-3.5 estrear sua aparição sem erros.

Instalando o Firefox-3.5

Ainda no Terminal (Aplicativo->Acessórios->Terminal) execute o comando :

sudo apt-get install firefox-3.5 firefox-3.5-gnome-support

Pronto !
Agora vá em Menu->Aplicativos->internet->e…. uai cadê o Firefox 3.5 ?
Pois é, ele mudou de nome, agora chama-se “Shiretoko Web Browser”, execute-o.
Possivelmente mudou de nome para não criar encrenca com a fundação Mozilla que deseja que apenas pode chamar-se Firefox compilações a partir do original sem nenhuma modificação.
Agora já pode apontar o seu navegador para esse post (https://hamacker.wordpress.com/2009/08/19/firefox-3-5-direto-dos-repositorios-do-ubuntu/) e ler o restante das instruções.

Instalando o idioma em português

Aponte seu Shiretoko, ops, Firefox-3.5 para :

http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.5.2/win32/xpi/

E instale o pacote ‘pt-BR.xpi’ :
Firefox 3.5 - instalando o idioma portugues
Reinicie o Firefox-3.5.

Restaurando o backup

Instale novamente o FEBE e configure-o conforme já explicando, mas não faça nenhum backup. O que iremos fazer agora será a restauração dos arquivos anteriores.
Vá no menu Ferramentas->FEBE->Restaurar->[Item de seu backup] e restaure item por item do que você pediu para fazer uma cópia de segurança no inicio desse artigo. Se você marcou 5 itens então serão 5 vezes que terá de ir até o menu Ferramentas->FEBE->Restaurar->[Item de seu backup] , é uma restauração de cada vez.
O interessante dessa restauração é que ela já se torna funcional assim que é aplicada, isto é, assim que restaura qualquer dos itens não é preciso reiniciar o Firefox e os novos dados (favoritos, cookies, senhas,…) já estarão funcionando.

E o Firefox anterior ?

O Firefox anterior (3.1) continuará instalado e funcionando e sinceramente não recomendo a sua remoção.
Depois de você constatar que o Firefox 3.5 está plenamente funcional, isto é, com todos os seus itens importantes restaurados e funcionais então vá ao terminal e execute :

cd ~/.mozilla
~/.mozilla$ ls -1
extensions
firefox.old
firefox-3.5

Se voce notar que além da pasta ‘firefox.old’ já existe uma ‘firefox’, é porque você de forma rebelde executou o firefox antigo que por sua vez recriou a pasta ‘firefox’, neste caso, elimine-a :

rm -fR firefox

Agora sim, renomeie novamente a pasta ‘firefox.old’ para ‘firefox’ :

mv firefox.old firefox

Sim, agora voce tem o Firefox 3.1 do jeito que era antes e… o novo Firefox-3.5 (Shiroko Web Browser).

Conclusão

A instalação do Firefox-3.5 não remove o Firefox anterior. Na realidade, não recomendo que você remova o Firefox anterior, pois nunca se sabe quais dependências você poderá eliminar junto.
Mas recomendo que você atualize os atalhos que possuir nos paineis do GNOME onde houver o Firefox antigo para apontar para novo Firefox e aos poucos de usar o Firefox antigo.

Anúncios

11 Comentários

Quer fazer seu próprio programa de backup ?

Se voce gostaria de fazer seu próprio programa de backup usando scripts, mas faltava um pouco de orientação, bem, posso te ajudar.
Eu escrevi o script que é bem básico que poderá lhe servir de base para scripts maiores.
O script abaixo foi criado porque eu desejava fazer um backup que mantivesse as estruturas originais das pastas copiadas e realizasse apenas a compactação dos arquivos individualmente. Pode parecer estranho, mas o que eu queria era :
Fazer backup de :

/home/fulano/planilhas/compras.xls
/home/fulano/textos/poesias/minha-esposa.doc
/home/fulano/musicas/mp3/testando-minha-voz.mp3

E ele fosse parar na minha unidade de destino assim :

/media/usbdisk/home/fulano/planilhas/compras.xls.gz
/media/usbdisk/home/fulano/textos/poesias/minha-esposa.doc.gz
/media/usbdisk/home/fulano/musicas/mp3/testando-minha-voz.mp3

Ou seja, compactasse apenas arquivos e não pastas inteiras.
O problema de compactar pastas inteiras num .tar.gz, é que dependendo do tamanho da pasta cria-se um super-gigante-tar.gz e com isso alguns empecilhos na hora de restaurar ou enviar para uma mídia de DVD. Procurei algum programa que fizesse isso, mas infelizmente não achei nenhum e então tive de criar esse script.
A ideia do script é simples, compactar apenas os arquivos na hora de copia-lo para unidade de destino, porém mantendo a mesma estrutura de pastas de seu local de origem. Já que seria feito um script para isso, então não custaria acrescentar a possibilidade de compactar apenas arquivos que valem a pena, sim, não existe vantagens (na minha opinião) de compactar arquivos que já sofreram algum tipo de compactação, por exemplo, arquivos .mp3/.avi/.mp4/.zip/.rar/etc… e de praxe não enviar para backup arquivos que sabemos antecipadamente são temporários.

O SCRIPT

Na realidade, vou parar de colar codigos longos no WordPress porque simplesmente não funciona, então eu colei o script neste link :
http://pastebin.com/f65651973

VANTAGENS E DESVANTAGENS

Há ferramentas de backup muito melhores do que este modesto script, no entanto, o script foi feito porque necessitava das funcionalidades que mencionei acima. Por isso, algumas vantagens :
– Backup mais rápido por selecionar compactar apenas o que pode ser compactado.
– Restauração rápida, na realidade é só encontrar o arquivo que necessita e copia-lo de volta para o disco.
– Menores chances de corrupção de arquivos em mídias como CDROM porque todos os arquivos são compactados individualmente, e não um super-big-arquivo compactado, onde um bit corrompido pode comprometer todo o restante.

Mas há desvantagens também :

– Método de compactação menos eficiente com arquivos menores que o tamanho do cluster do disco, se um cluster tiver 4K e o arquivo compactado tiver 1K, ocupa-se 4K no disco, epa ! não fui eu que criou essa regra falha de armazenamento de arquivos. No tópico a seguir eu falo a respeito disso.

COMPACTAR PASTAS OU ARQUIVOS INDIVIDUAIS, eis a questão ?

Como foi dito, compactar arquivos individuais traz um problema, arquivos muito pequenos embora possam ser compactados em 50%, seus bytes armazenados podem corresponder a capacidade do tamanho do cluster do disco.
Por isso, quando se compacta pastas inteiras, o tamanho de armazenamento será melhor, para exemplificar melhor:
– Temos 100 arquivos de 4K, vamos aplicar uma compactação de 50%, resultado ? 200K, certo ? Sim e não. Se o tamanho do cluster for de 4K, isso indica que não posso ter arquivo menor de 4K porque ele continuará a ocupar 4K, então se o arquivo tiver o tamanho final de 2K, será 4K o espaço alocado. Existem filesystem que fazem subalocação de cluster, mas nem FAT/NTFS/EXT fazem isso. Nossa compactação então foi nula, porque embora reduzissemos cada arquivo individualmente para 2K eles continuarão a ocupar 4K. Pense numa pasta cheia de arquivos GIFs bem pequenos, pois é, já viu o tamanho do problema.

Por essa razão compactar pastas inteiras é uma solução melhor, embora possa apresentar maiores riscos de corrupção. Como estamos falando de BACKUP, na maioria dos casos pode-se abrir mão duma melhor compactação em detrimento de maior segurança.

PORQUE UM SCRIPT ?

Porque num script pode-se personalizar uma instrução de backup.
Posso acrescentar montagens especiais de discos tanto na origem como no destino, evitar erros de operação antecipando-os e se o procedimento de backup mudar eu posso mudar o script.

Voce verá no script que num instante posso alterar a compactação individual de arquivos, por uma compactação por pasta. Posso trocar a compactação zip por gzip ou por 7zip. Enfim, flexibilidade.

Vamos a um exemplo, se voce olhar o script de perto verá que foi usada a função “do_copy” que faz a cópia dos arquivos de um lugar para o outro, vamos substituir a função “do_copy” por outra “do_copy_7z” que ao invés de copiar arquivos individualmente, compactará a pasta. É dessa flexibilidade que estou falando.

CONCLUSÃO

O script é apenas um exemplo para voce aprender a criar sua própria ferramenta de trabalho.
A vantagem do script é que voce pode modularizar e personalizar a solução do problema.
Pode começar com um script menor e caminhar para um script maior.

Podem curti-lo a vontade.
Se tiverem dúvidas, procurem uma lista de discussão adequada, não costumo responder mensagens de programação no blog.

2 Comentários

Que tal um 'biscoito de mensagem' a cada login no seu sistema ?

Sei que toda segunda-feira acordamos muito animados para ir trabalhar.
Mas você sabia que nem todas as pessoas são assim ?
Pois é, algumas pessoas para relaxar neste dia (e todos os outros) precisam meditar, refletir, encontrar o seu centro de equilíbrio. Esse relaxamento pode vir através dum estimulo visual, uma conversa entre amigos e em casos especiais espancamento gratuito (físico ou verbal) de objetos, pessoas e animais.
Temendo que o último item para relaxar torne-se cada vez mais comum, vou dar minha contribuição, que tal se ao logar-se no seu sistema aparecesse uma mensagem bem humorada ou para refletir ? Um exemplo :
Texto para o dia

A mensagem acima é produzida com um software chamado ‘fortunes’ que foi traduzido para o português como ‘biscoito da sorte’. O ‘fortunes’ é uma coleção de textos curtos a partir de várias fontes, que vão de provérbios às citações da literatura de clássicos.
A instalação desse programa é simples.

INSTALAÇÃO

Primeiramente vá até o Synaptic (Sistema->Administração->Gerenciador de pacotes Synaptic), no painel de busca rápida digite ‘fortune’ e em seguida marque os seguintes pacotes :

* fortunes
* fortunes-br
* fortune-mod

E então aplique a instalação :
Instalando o fortunes via Synaptic

O SCRIPT

O programa foi instalado ?
Se sim, então vamos prosseguir. Agora precisamos criar um pequeno script que faça a exibição do texto em nossa tela. Dê um ALT+F2 e execute “gksu gedit /usr/bin/texto-para-refletir.sh” e cole o seguinte conteúdo :

#!/bin/bash
# Texto para reflexao
zenity --info --title "Texto para refletir :" --text "$(/usr/games/fortune /usr/share/games/fortunes/brasil)"&

Salve o arquivo e feche o editor.

Voce vai ter que dar permissão de execução ao script recém-criado, vá no terminal (Aplicativos->Acessórios->Terminal) e execute :

sudo chmod a+x /usr/bin/texto-para-refletir.sh

Pode fechar o terminal agora.

O ATALHO PARA A INICIALIZAÇÃO DO SISTEMA

Se você quer que um texto apareça na inicialização do sistema, então temos de criar um atalho para o nosso script no local certo. Novamente dê um ALT+F2 e execute “gksu gedit /etc/xdg/autostart/texto-para-refletir.desktop” e cole o seguinte conteúdo :

[Desktop Entry]
Type=Application
Name=Texto para refletir
Exec= /usr/bin/texto-para-refletir.sh
Icon=system-run
Comment=Texto para refletir
Name[pt_BR]=Texto para refletir
Comment[pt_BR]=Texto para refletir
X-GNOME-Autostart-enabled=true


Salve o arquivo e saia do editor.

O TESTE

Voce poderá testar de duas formas, uma delas é dando um ALT+F2 e executando o comando “texto-para-refletir.sh” :
Testando nosso script
Se aparecer uma janela como a exibida acima, então o script está funcionando perfeitamente.
O outro teste é fechar o login do seu sistema e refazer o login, ao logar-se uma nova mensagem irá aparecer.

CONCLUSÃO

O ‘fortunes’ é apenas um passa-tempo, uma descontração. Ele não possui mensagens misticas do tipo ‘hoje é seu dia da sorte’ ou ‘ótimo dia para iniciar um relacionamento’, em outras palavras, textos de aplicação ampla para controlar a vida das pessoas.
As instruções que detalhei servem para qualquer distribuição, obviamente o modo de instalar os pacotes podem diferenciar-se em cada uma delas, se você não usa o Ubuntu apenas atente-se que deve instalar o pacote ‘zenity’.
A pasta de inicialização de programas (/etc/xdg/autostart/) é obedecida por todos os ambientes gráficos compatíveis com a especificação da FreeDesktop.org e isso inclui o GNOME e KDE.

7 Comentários

Como fazer um backport de um pacote para o Ubuntu

Vezes ou outras precisamos usar programas cujas versões adiantadas não estão em nosso repositório. A alternativa mais atualizada pode estar em código fonte, repositório de terceiros ou em repositórios oficiais de versões futuras do Ubuntu ou Debian. Compilar a partir do código fonte é uma excelente alternativa…para nerds ! Se existe um repositório – que seja confiável – e que ainda por cima forneça o código fonte… então usemos !

A alternativa de usar um pacote de uma versão posterior à sua distro é chamada de backport, por exemplo, o pacote dia-gnome ( Editor de Diagramas) está na versão 0.96 no Ubuntu Jaunty 9.04. Mas se olharmos a próxima versão do Ubuntu, a Karmic, veremos que lá a versão encontra-se na 0.97. Não é apenas uma questão de pegar o pacote .deb da Karmic e instalarmos no Jaunty, pois pode haver dependências que impeçam a sua instalação, ou pior, que você consiga instalar, mas quebre o sistema de pacotes. Em poucas palavras só podemos instalar pacotes que foram previamente adaptados a nossa distribuição e versão.

Quando queremos fazer uso de um pacote que está em versões futuras de nossa distribuição Ubuntu, precisamos fazer o que é chamado de ‘backport’. Que corresponde a compilar os fontes e gerar novos pacotes para a versão de distribuição que estou usando, claro que de uma forma automatizada, tão automatizada que não precisa ser feita por programadores. Esse recurso de ‘backport’ não é exclusividade do Ubuntu, na realidade ele existe e funciona para qualquer distribuição baseada em debian e é muito simples.

Como exemplo, vamos usar o próprio pacote ‘dia-gnome’. O ‘dia-gnome’ versão 0.97, não existe nos repositórios atuais, porém existe nos repositórios futuros. A primeira etapa é saber qual é o nome da próxima versão do Ubuntu, qual ? KARMIC KOALA ! Mas todo repositório tem um nome forte, qual seria o nome forte para Karmic Koala ? Uma boa dica é listar o endereço do repositório, isto é :

http://archive.ubuntu.com/ubuntu/dists/

Assim, notaremos que o nome forte usado pelos repositórios para Karmic Koala é ‘karmic’, assim, dê um ALT+F2 e execute :

"gksu gedit /etc/apt/sources.list.d/backport.list"

e cole o seguinte conteúdo :

deb-src http://archive.ubuntu.com/ubuntu/ karmic main restricted universe multiverse

Perceba que iniciando a linha com deb-src voce está se referindo apenas a repositório de código fonte de programas, e não para binários que geralmente estão prontos para instalação.
Você notou que usamos o nome karmic ? Sim, este é o novo nome da próxima versão do Ubuntu.
Depois de colado o texto, salve o arquivo e feche o editor.
Vá até o prompt (Aplicativos->Acessórios->Terminal) e execute :

sudo apt-get update

Assim você atualizará a lista de repositórios, incluindo o indice de repositório para código fonte de programas, quando estiver concluído, a ferramenta APT saberá que pacotes você poderá compilar diretamente em seu sistema e o melhor : de forma automatizada.
O próximo comando é avisar ao sistema que você pretende compilar o pacote 'dia-gnome' e que é para instalar as dependências necessárias para compila-lo :

sudo apt-get build-dep dia-gnome

O comando acima verifica e instala todas as dependências necessárias para compilar o pacote dia-gnome.
O próximo passo é descarregar o código fonte do programa dia-gnome, então temos de criar um diretório para receber o código fonte, execute o comando :

mkdir -p ~/dia
cd ~/dia

O sinal de '~' é um atalho para /home/fulano que é seu diretório pessoal. Em geral, eu criaria uma pasta em /usr/src, mas isso requiriria usar outros comandos, mas o processo de backport é tão simples que não vale esse esforço a menos que você seja um exímio programador e queira depositar também suas alterações pessoais e mantê-las.
O próximo comando será :

sudo apt-get -b source dia-gnome

Esse comando automaticamente descarrega os fontes, compila e gera os pacotes binários .deb, cada programa será compilado para a plataforma que estiver usando, em algumas oportunidades poderá ganhar performance. O intuito desse artigo é apenas mostrar o básico, mas há variáveis de compilação que se trocadas podem dar uma turbinada no aplicativo que pretende recompilar, o pacote 'mplayer' por exemplo é um dos programas que podem ser otimizados.
A compilação e geração dos binários pode demorar, eu não aconselho por exemplo fazer backport de programas como Mozilla Firefox ou OpenOffice, eles demoram muito e no geral repositórios PPA (repositórios pessoais de terceiros) já o possuem.
Quando tiver terminado a compilação e geração de pacotes o seguinte aviso será fornecido :

(...)
dpkg-deb: construindo pacote 'dia-libs' em '../dia-libs_0.97-2_i386.deb'.
dpkg-deb: construindo pacote 'dia' em '../dia_0.97-2_i386.deb'.
dpkg-deb: construindo pacote 'dia-gnome' em '../dia-gnome_0.97-2_i386.deb'.
dpkg-genchanges -b >../dia_0.97-2_i386.changes
dpkg-genchanges: somente-binário upload - não inclui alguns codigo fonte
dpkg-buildpackage: enviar apenas binários (fontes não inclusas)

Isso indica que os pacotes foram criados, veja :

ls -l *.deb
-rw-r--r-- 1 root root 194976 2009-08-11 09:16 dia_0.97-2_i386.deb
-rw-r--r-- 1 root root 5726802 2009-08-11 09:15 dia-common_0.97-2_all.deb
-rw-r--r-- 1 root root 195336 2009-08-11 09:16 dia-gnome_0.97-2_i386.deb
-rw-r--r-- 1 root root 834492 2009-08-11 09:16 dia-libs_0.97-2_i386.deb

A vantagem de compilar usando o sistema de backport em detrimento do tradicional './configure;make;make install' é TOTAL. Compilando de maneira tradicional os fontes você tem que se habituar a saber quais bibliotecas são necessárias, alterar prefix dos programas, se preocupar com que os binários gerados não interfiram em outros programas, etc... Com o backport você mantém o gerenciamento de pacotes intacto, transporta os arquivos *.deb para onde quiser.

Uma preocupação que você deve ter antes de instalar novos os pacotes provenientes de backports em seu sistema acima é saber se precisará remover os atuais que já estiverem instalados. Quase sempre a atualização é substitutiva e não há nada com que se preocupar. Eu tenho um esquisito comportamento de sempre que eu ver um pacote "-common.deb" de remover o programa inteiro antes de instalar o novo, desculpa, mas isso é uma autodefesa adquirida de experiências passadas, assim ao ver o pacote "dia-common_0.97-2_all.deb" na relação é quase automático eu executar também :

sudo apt-get remove dia*

Raramente acontecem problemas, mas ao instalar o novo 'dia', o APT interrompeu a instalação porque um arquivo de outro pacote (imagination) iria também ser substituído, veja :

(...)dpkg: erro processando dia-common_0.97-2_all.deb (--install):
tentando sobrescrever '/usr/share/icons/hicolor/icon-theme.cache', que também está no pacote imagination

Que chato ! O arquivo '/usr/share/icons/hicolor/icon-theme.cache' existem nos dois pacotes, que coincidência incrível, o que fazer ?
No caso de substituição de arquivos sem importância eu posso usar o parâmetro --force-all no dpkg, ou então remover o pacote supracitado.
Eu prefero usar --force-all nessa situação :

sudo dpkg -i --force-all *.deb
Selecionando pacote previamente não selecionado dia.
(Lendo banco de dados ... 257148 arquivos e diretórios atualmente instalados).
Desempacotando dia (de dia_0.97-2_i386.deb) ...
Preparando para substituir dia-common 0.96.1-7.1 (usando dia-common_0.97-2_all.deb) ...
Desempacotando substituto dia-common ...
Selecionando pacote previamente não selecionado dia-gnome.
Desempacotando dia-gnome (de dia-gnome_0.97-2_i386.deb) ...
Preparando para substituir dia-libs 0.97-2 (usando dia-libs_0.97-2_i386.deb) ...
Desempacotando substituto dia-libs ...
Configurando dia-common (0.97-2) ...
Configurando dia-libs (0.97-2) ...
Processando gatilhos para doc-base ...
Processing 1 changed doc-base file(s)...
Registering documents with scrollkeeper...
Configurando dia (0.97-2) ...
Configurando dia-gnome (0.97-2) ...
Processando gatilhos para man-db ...
Processando gatilhos para menu ...

Para ter certeza de que nenhum programa merecido ficou de fora :

sudo apt-get install -f

Agora usufrua o fruto do seu labor :

dia-gnome --integrated

Nova interface do programa dia.

O programa 'dia' foi apenas um exemplo para a realização do backport, escolhi-o propositalmente porque com ele possuiria conflito de arquivos e pacotes "comuns" (pacote-common.deb), assim o 'dia' seria um exemplo mais complexo do que seria com outros pacotes. Com isso em mente, você pode repetir a mesma ideia para qualquer outro pacote. Os procedimentos são praticamente os mesmos para qualquer distro baseada em Debian, apenas muda a linha deb-src no arquivo sources.list de sua distribuição.

Se precisar instalar a nova versão do 'dia' para outro computador, não precisa repetir todo esse artigo, apenas leve os arquivos *.deb para a outra máquina e instale-os.

Por enquanto é só, vida longa e próspera a todos.

Deixe um comentário

Notepad++ no Linux

Notepad++ é um editor de textos com vários recursos de edição. É um programa muito popular para Windows (e somente para ele) que substitui com muitas honrarias o patético notepad.exe da Microsoft. O Notepad++ além de ser um software livre, é um editor de texto muito bom.
O único problema até então é que só há versão dele para Windows.

PROBLEMA :

Muitos usuários avançados tem de editar arquivos como batchfiles, arquivos de configuração, scripts cmd/wsh/vbs e tantos outros tipos de arquivos oriundos do Sistema Operacional Windows. Se for usar o sistema operacional Linux não pode usar qualquer editor, pois o editor escolhido tem que saber lidar com o fato de que dependendo da versão do Windows não poderá usar UTF-8, além disso, arquivos textos compatíveis com o Windows tem o final de linha (EOL) diferente dos arquivos Unix, o editor escolhido portanto tem que saber lidar com essa dificuldade automaticamente ou o arquivo quando for transferido para o sistema Windows estará corrompido causando diversos problemas. É verdade que temos muitos editores de textos que são bons, mas nem todos lidam com esse problema automaticamente, sendo necessário antes de começar a edição identificar se o arquivo será ANSI ou UTF-8, Tabs ou espaços, Final de Linha (EOL) do tipo Unix ou DOS antes de começar a edição. Portanto, não é tão fácil quanto parece.

SOLUÇÃO :

A solução para quem usa e está familiarizado com seu editor de textos no Linux é continuar com o seu editor preferido, por exemplo, o kate (editor de textos padrão do KDE) sabe lidar com maestria os arquivos textos provenientes do Windows. Portanto, se está familiarizado com um editor de textos e ele funciona para você então use-o.

Uma outra solução é usar o Notepad++ para editar seus arquivos de Windows ou até mesmo arquivos no Linux, assim você contará com o mesmo editor em ambos os sistemas. Se estiver interessado nessa solução, o restante do artigo é para você.

INSTALANDO O NOTEPAD++ :

1. Instale o WINE em seu sistema. Preferencialmente a ultima versão disponibilizada em http://www.winehq.org
2. Crie uma pasta chamada “notepad++” na sua pasta pessoal $HOME.
3. Descarreque a ultima versão de instalação do notepad++ na recém pasta criada, ficando mais ou menos assim :

/home/fulano/notepad++/npp.5.4.5.Installer.exe
(troque “fulano” pelo seu login)

4. Vá para a linha de comando (Aplicativos->Acessórios->Terminal) e execute os comandos :

cd /home/fulano/notepad++
export WINEPREFIX="/home/fulano/notepad++"

O comando [export WINEPREFIX="/home/fulano/notepad++"] seta a localização de onde eu desejo que o wine crie sua estrutura virtual para receber os aplicativos Windows. Esse comando objetiva não atrapalhar outras instalações que você tenha e que também usa o WINE.
Algo que atrapalha um pouco no WINE é que ele não acompanha as fontes com cantos arredondados conhecidas como “FontSmoothing” no Windows, forçando-nos a habilita-las através do recurso de edição de registro, por essa razão, dê um ALT+F2 no seu GNOME e execute “gedit /home/fulano/notepad++/fontes-melhores.reg” e cole o seguinte conteúdo :

REGEDIT4

[HKEY_CURRENT_USER\Control Panel\Desktop]
"FontSmoothing"="2"
"FontSmoothingType"=dword:00000002
"FontSmoothingGamma"=dword:00000578
"FontSmoothingOrientation"=dword:00000001

Deixe seu arquivo exatamente como tem visto acima, remova espaços em branco do lado esquerdo se eles aparecerem no ato de colar. Depois apenas salve o arquivo acima e feche o editor.
Ainda estando no Terminal e no mesmo diretorio notepad++, execute o arquivo recém criado da seguinte forma :

regedit fontes-melhores.reg

Isso habilitará as fontes com uma aparência razoável dentro do WINE.
Ainda estando no Terminal e no mesmo diretorio notepad++, vamos iniciar a instalação com o comando :

wine npp.5.4.5.Installer.exe

O instalador perguntará qual o idioma desejado, você seleciona o português (Brasil) :
Escolha o idioma durante a instalação
Depois siga o processo convencional conhecido como NNF (Next->Next->Finish) :
Instalação do tipo NNF (Next->Next->Finish)
No final da instalação, ele estará pronto para ser executado, até mesmo um atalho é criado na sua área de trabalho.
Mas queremos mais, vamos criar nosso próprio script de carregamento do Notepad++, assim poderemos associar certos tipos de arquivos ao script. Dê um ALT+F2 e execute “gksu gedit /usr/bin/notepad-plus.sh” e cole o seguinte conteúdo :

#!/bin/bash
export WINEPREFIX="/home/$USER/notepad++"
wine "$WINEPREFIX/drive_c/Arquivos de programas/Notepad++/notepad++.exe" $@
unset WINEPREFIX

Ainda estando no Terminal, execute :

sudo chmod a+x /usr/bin/notepad-plus.sh

Prontinho, qualquer tipo de arquivo que for querer usar o notepad++ bastará associar com o script /usr/bin/notepad-plus.sh :
Associando tipos de arquivos ao Notepad++

Se quiser criar um atalho de menu para o Notepad++, dê um ALT+F2 e execute “gksu gedit /usr/share/applications/notepad_plus.desktop” e cole o seguinte conteúdo :

[Desktop Entry]
Name=Notepad++ Editor de Textos
Comment=Notepad++ Editor de Textos
Exec=/usr/bin/notepad-plus.sh %U
Terminal=false
Type=Application
StartupNotify=true
MimeType=text/plain;
Icon=accessories-text-editor
Categories=GNOME;GTK;Utility;TextEditor;

Salve o arquivo acima e saia do editor.

O atalho acima aparecerá para todos os usuários do sistema no menu “Aplicativos->Acessórios”, no entanto, só funcionará para os usuários que instalaram o notepad++ na sua pasta pessoal $HOME.

VANTAGENS :
Para quem já usava o notepad++ no Windows traz um certo conforto.
Permite a edição de arquivos remotamente usando o gvfs do gnome (Menu Locais->Conectar ao Servidor).
O software é livre e um bom programa.

DESVANTAGENS :
Falta de integração com o GNOME, você não poderá usar os marcadores do gnome na janela de dialogo de abertura de arquivo ou salvar impressão no formato PDF/PS que é um recurso da janela de impressão que qualquer aplicativo integrado ao GNOME.

CONCLUSÃO :
Não estou incentivando ninguém a usar um ou outro editor, fica a receita para experimentar o notepad++ no Linux apenas para quem quiser ou sabe do que se trata. Um abraço a todos.

4 Comentários