Desabilitando as sugestões de pacotes no terminal do fedora

Quando você entra com um comando que não é reconhecido pelo sistema, o fedora tenta automaticamente encontrar um pacote com esse comando e sugerir a instalação dele. É um recurso interessante, não fosse pelo fato de que mesmo errando no nome do comando, fará com que ele procure pelo pacote e prenda o terminal por alguns alguns segundos. Usuários mais apressados (como eu) não costumam gostar muito da ideia. Resolver esse problema, no entanto, é muito simples: basta remover o pacote que fornece esse recurso no seu sistema.

O PackageKit é responsável por procurar os pacotes e é ele o culpado por esse atraso. Mais especificamente, o nome do pacote responsável por isso é o PackageKit-command-not-found. Vamos removê-lo de uma vez por todas:

Feche e abra o seu terminal novamente. Problema resolvido.

Seismic Unix: Pacotes para o Archlinux, Fedora, Red Hat, CentOS e derivados

Apresentação

Seismic Unix é um conjunto de ferramentas em linha de comando que permitem o processamento de dados em sísmica.  O desenvolvimento deste software começou por volta dos anos 70 e atualmente é mantido por desenvolvedores no Colorado School of Mines (CSM), bem como outros colaboradores e usuários desse excelente pacote de processamento.  Seismic Unix  é compatível com a Licença BSD, o que quer dizer que você pode ter acesso ao código-fonte do programa a alterá-lo como bem desejar.


Análise de Velocidades

Análise de velocidades no Seismic Unix. Créditos pela imagem: Wikipédia

Os pacotes

O plano de criar pacotes para o Seismic Unix datam da época em que era aluno do curso de Sísmica II no IAG/USP, mas o pouco tempo não me permitiu terminá-los a tempo.  Pelo menos não os pacotes rpm. Compilar e instalar programas a partir do código-fonte é algo que poucos usuários tem domínio, até porque o procedimento nem sempre é simples e pode requerer bastante intervenção manual. Já a instalação de um pacote pré-compilado é outro história. Basta um simples comando para instalar o software no seu PC e ter ele funcionando. É pra isso que existem os repositórios de software presentes na maioria das distribuições Linux existentes. Vendo que ainda não existiam pacotes para o Seismic Unix, decidi arregaçar as mangas e fazer a parte “suja” do trabalho. Aproveitei os meus conhecimentos como empacotador do projeto fedora, bem como de empacotamento de software para o Arch Linux e criei o pacotes para as distribuições todas as distribuições Linux que  uso ou tenho ligação de alguma maneira. Sendo assim, esses pacotes estão disponíveis para o Archlinux (e qualquer distro derivada dele e que possa utilizar o  AUR para a instalação de pacotes),  Fedora (15 em diante) e Red Hat Enterprise Linux (e seus clones como o CentOS ,  Scientific Linux, etc.  Nesse caso, os pacotes estão disponíveis a partir da versão 5 ).

Se você é um usuário do Ubuntu  sinto lhe informar, mas terá de compilar o software a partir dos fontes. Mais para o futuro, se adquirir conhecimentos em empacotamento de software para distros Debian-Like, irei considerar a possibilidade de criar pacotes também para essas distros. Mas se você quer uma alternativa, considere a possibilidade de mudar para o Archlinux, Fedora, Red Hat, CentOS, Scientific Linux, etc  ;)

Como instalar os pacotes

São descritos aqui os passos necessários para instalar o Seismic Unix no Archlinux, Fedora e distribuições como o Red Hat Interprise Linux, CentOS, Scientific Linux e outras compatíveis. Esses pacotes dizem respeito a versão 43R1 do software, a última versão até o momento em que essse post foi escrito.  Mas tenho planos de continuar atualizando o pacote na medida em que novas versões surjam e meu tempo permita. Visite este post futuramente para maiores informações.

Archlinux

Eu disponibilizei o pacote Seismic Unix  através do AUR. Você pode utilizar o yaourt ou o packer para instalar ele em seu sistema. Com um terminal aberto, basta entrar com o comando

Isso irá baixar o PKGBUILD do pacote e iniciar o processo de compilação e empacotamento.  Ao final, o yaourt pede a senha necessária para a instalação do Seismic Unix no seu PC. Simples assim.

É possível evitar a compilação de certos módulos no sistema. Para isso, dê uma olhada função build  presente no PKGBUILD e siga as instruções nos comentários. Se você não faz ideia do que estou falando, não se preocupe; simplesmente instale como citado acima. Por padrão, todas os módulos são compilados e empacotados com o software de forma que se tenha ele o mais completo quanto possível.

Fedora e distros compatíveis com pacotes do Projeto Fedora.

Os pacotes estão disponíveis no meu espaço no fedorapeople.org.  É necessário habilitar o repositório para que o Seismic Unix possa ser instalado no seu sistema. Abra o seu editor de textos predileto (gedit, kate, vim,  nano, nedit… ), copie e cole o seguinte trecho num arquivo de nome seismicunix.repo. 

Salve o arquivo e como root, copie-o para o diretório /etc/yum.repos.d/. Depois é somente instalar instalar o pacote:

Ou através de qualquer aplicativo gráfico que você use para instalar programas. Simples, não?

Red Hat Enterprise Linux, CentOS,  Scientific Linux e distros compatíveis com os pacotes disponibilizados via EPEL.

O procedimento é muito parecido com o de cima. Crie um arquivo com seus editor de textos predileto (gedit, kate, vim,  nano, nedit…), copie e cole o seguinte trecho num arquivo de nome seismicunix.repo:

Salve o arquivo e como root, copie-o para o diretório /etc/yum.repos.d/. Depois é somente instalar instalar o pacote:

Ou através de qualquer aplicativo gráfico que você use para instalar programas

Pronto, agora você já tem o Seismic Unix instalado em seu sistema. Pode ser necessário reiniciar a máquina para que a variável CWPROOT seja setada corretamente e seu o diretório com os binários seja adicionado no PATH do sistema. Se você já tinha instalado o Seismic Unix a partir dos fontes, edite o arquivo onde você definiu a variável CWPROOT e remova ou comente a linha com ela. Se isso não for feito, você poderá acabar sobrescrevendo essa variável e impedindo que o pacote instalado funcione adequadamente.

No caso de problemas

Problemas pode ser relatados no formulário de comentários abaixo. Detalhe-o bem, exibindo qualquer mensagem de erro que possa existir para que possa verificar se se trata de um problema associado com o empacotamento ou com o software em si. Se for com o software, a chance de eu consertá-lo será menor, sendo mais prudente entrar em contato diretamente com o upstream.

PLplot 02: O primeiro gráfico

A criação de gráficos utilizando a PLplot é bastante simples na maior parte do tempo. O conjunto de funções da biblioteca pode, a grosso modo, ser visto como dois conjuntos separados. Um conjunto de funções que definem as propriedades do gráfico — cor de fundo, tipo de linha, uso ou não de grades, escala, etc —  e um conjunto de funções responsáveis pela plotagem do gráfico em si. Neste artigo, criaremos um gráfico básico com a PLplot.

Seja então f(x) a função que queremos plotar. Consideremos, a título de exemplo, f(x) como sendo definida por

f(x) = \frac{x}{1+x^2}

O programa abaixo é uma implementação para que possamos gerar o gráfico dessa função.  Praticamente nenhuma personalização é feita, deixando que a biblioteca utilize os parâmetros default para a maior parte das opções disponíveis.

O download do código-fonte pode ser feito aqui.

 Simples e rápido, não? Antes de compilarmos esse código, vamos dar uma olhada melhor nele. Note que qualquer programa que queira utilizar essa biblioteca deve adicionar o arquivo de cabeçalho plplot.h. É onde estão definidas todas as funções do quais iremos precisar para gerar os nossos gráficos.

Como foi dito no código, a PLplot não é capaz de receber uma expressão matemática como parâmetro e gerar um gráfico a partir disso, mas nada impede que você implemente uma função capaz de fazê-lo. Nesse caso, a biblioteca libmatheval seria de grande utilidade.  Em artigos futuros, tentaremos implementar esse recurso.

Vamos compilar esse código e ver o que obtemos. Abra um terminal, navegue até o diretório onde colocou o programa e compile-o com o comando

Isso deverá gerar um executável de nome exemplo01 em seu diretório de trabalho. Vamos executá-lo:

Opa, mas o que diabos… Ah sim, o driver! Quando você executa o programa, a função plinit é chamada (linha 63).  Ela verifica se um driver foi definido e em caso negativo, exibe a lista acima perguntando ao usuário qual utilizar. Note que temos várias opções. Se a opção escolhida for salvar o arquivo no disco, na forma de uma imagem (drivers ps, png, svg, pdfcairo, svgcairo, etc), o programa irá perguntar o nome da imagem que deverá ser utilizado e então salvar o arquivo nela. Mas vamos escolher a opção xcairo, número 22 na lista acima. Digite isso e dê um ENTER para visualizar o gráfico na tela:

Perfeito! Mas cadê as marcas nos eixos? Lembra que na linha 77, utilizamos a função plenv, onde o último parâmetro estava  associado as propriedades dos eixos, bem como o desenho de uma caixa ao redor do gráfico? Pois é, fica como tarefa pra você: Leia a documentação dessa função no site oficial e veja quais são as outras opções possíveis. Modifique-as e recompile o seu programa para ver qual é o resultado. Teste também os diferentes drivers que podem ser utilizados e verifique quais são as diferenças entre eles.

No próximo artigo,  iremos definir algumas propriedades do nosso gráfico como a cor de fundo, cor da linha utilizada para o gráfico, espessura, etc. Isso fará com que tenhamos algo mais personalizado.

Última atualização: 17/12/2012

O Banco do Brasil e o OpenJDK 64 bits

Logotipo do OpenJDKNão é de hoje que o Banco do Brasil tem problemas com o OpenJDK.  Uma simples busca na internet e você deverá encontrar dezenas ou centenas de posts em fóruns, sempre com a mesma dúvida: Por que diabos o módulo de seguranção não instala no PC quando usamos o OpenJDK? Na verdade, o problema está relacionado ao OpenJDK 64 bits, já que a versão de 32 bits não têm apresentado grandes problemas com relação a isso.

Se você usa um sistema de 64 bits com o OpenJDK instalado, bem como o plugin icedtea-web, siga os passos abaixo. Mas antes, tenha em mente que esse procedimento funcionou apenas com o firefox nos testes que fiz.  Com o Chromium, o módulo foi instalado corretamente, mas você cai numa tela em branco em vez de ir para a tela de login e poder acessar a sua conta. Ainda não encontrei a solução para esse problema, mas assim que o fizer, posto aqui. Então vamos lá:

Logue-se como root e crie o diretório /etc/.java/.systemPrefs:

Feche qualquer navegador que esteja aberto. Como usuário comum,  exclua os diretórios ~/.java e ~/.icedtea:

Abra agora o firefox e tente entrar na sua conta. Você não deverá ter problemas dessa vez.

Há um bug sobre esse problema registrado no bugzilla da Red Hat.  O fedora passou a incluir esse diretório junto com o OpenJDK, mas outras distribuições não o fizeram.

Referências:

ArchLinux: removendo o ícone de acessibilidade no Gnome Shell

Sabe aquele ícone de acessibilidade chato que vem junto com o GNOME Shell?

Pois é, muitas pessoas não precisam dele e gostariam de ter uma forma de retirá-lo de lá. Procurei  por algo que pudesse remover ele nos repositórios oficiais do ArchLinux,  no AUR e encontrei algo apenas no AUR. No entanto, quando testei o pacote, vi que ele não estava funcionando.  Me lembrando que no fedora existe uma extensão que permite fazer isso e está funcionando, resolvi criar um pacote e submetê-lo ao AUR.

Caso você também tenha interesse,  basta instalá-lo com sua ferramenta preferida. No meu caso, o yaourt:

O link do pacote no AUR é este: http://aur.archlinux.org/packages.php?ID=51523. Depois de instalar esse pacote, habilite a extensão através do gnome-tweak-tool.

RPM para o tema Elementary no GNOME Shell

Recentemente o Tim Laurindsen empacotou vários temas legais para o GNOME Shell. No momento em que escrevo esse post, os pacotes podem ser baixados a partir do repositório updates-testing no Fedora 15 e creio que em breve estará no repositório updates e você poderá encontrá-los com uma busca normal via yum.  No entanto, um tema que realmente gostei e não encontrei entre os pacotes foi o Elementary, disponível no deviantArt:

Tema Elementary para o GNOME Shell no Fedora 15

Tema Elementary para o GNOME Shell no Fedora 15. A versão atual difere um pouco desse screenshot que foi retirado antes do tema ter sido atualizado. Mas a diferença não é grande

Sendo assim, utilizei o spec file de um dos temas que ele empacotou  e gerei um rpm para o tema Elementary no fedora 15,  deixando disponível através do fedorapeople.  Para instalar ele, baixe o arquivo fedora-gnome-shell-theme-elementary.repo e coloque-o no diretório /etc/yum.repos.d:

E então instale o tema:

Simples assim.  O wallpaper não é incluído junto com o tema. Você pode baixá-lo aqui. ;)

Caso esteja interessado nos outros temas você pode:

  • Esperar cerca de uma semana até que estejam disponiveis ou
  • Habilitar o updates-testing e instalar os outros temas a partir de lá.

Se decidir por essa última opção, eis o caminho das pedras. Procure pelos pacotes de tema com o comando

Então escolha os que achar mais interessantes. Instale-os da mesma maneira que você costuma instalar outros pacotes via yum,  exceto pelo fato de que você deve habilitar o updates-testing, como acima.

[Update - 10/11/2011] O pacote agora se encontra nos repositórios oficiais do fedora e está sendo mantido por mim. Sendo assim, o repositório no fedorapeople foi excluído, visto que não mais faz sentido que ele seja mantido.  Você pode instalá-lo da mesma maneira como especificado acima, mas agora sem a necessidade de qualquer repositório adicional.

[Update - 22/07/2011] Bom, agora você não precisa mais habilitar o updates-testing. Os temas já se encontram nos repositórios estáveis do fedora.

[Update - 14/07/2011] Este tema foi atualizado para a versão 1.1, o que deverá ficar diferente, mas não menos bonito do que a imagem acima.

Média e desvio padrão em awk

Recentemente, precisei de alguma maneira obter a média e o desvio padrão amostral de um conjunto de dados presentes em um arquivo e aproveitar eles num script que estava criando. Esses dados estavam na primeira coluna do arquivo e somente haviam eles. Bom, escrever um programa em C pra isso parecia apelação e eu sabia que com o awk é possível. Em algumas buscas na net e encontrei exemplos, mas achei estranha a solução. Então escrevi minha própria rotina. Vejamos a abordagem (se você quer apenas o script e nada de lero-lero, desça um pouco mais nesse post).. o desvio padrão amostral de um conjunto de n medidas é dado por

\sigma = \sqrt{\dfrac{\sum_{i=1}^n (x_i - \overline{x})^2}{n-1}}

Mas o awk precisa conhecer a média (\overline{x}) para poder fazer esse cálculo. Assim, seria interessante se pudéssemos calcular essa média e realizar essa operação somente no final. Mais do que isso, seria interessante se pudéssemos expressar o desvio padrão acima em termos da soma dos quadrados de cada valor e da média, visto que isso seria de mais fácil implementação, já que poderíamos somar os valores de cada linha e ao mesmo tempo somar o quadrado desses valores com facilidade. Da soma dos valores em cada linha teríamos facilmente a média. Assim, expandindo o numerador na expressão acima, ficamos com:

\sigma = \sqrt{\dfrac{\sum_{i=1}^nx_i^2 - 2\overline{x}\sum_{i=1}^nx_i + n\overline{x}^2}{n-1} }

Ainda é possível realizar mais uma simplificação no segundo termo do numerador da expressão acima. Fazendo:

2\overline{x}\sum_{i=1}^nx_i = 2\overline{x}(n\overline{x}) = 2n\overline{x}^2

Finalmente, substituindo isso na expressão para o desvio padrão \sigma e fazendo os ajustes necessários, teremos:

\sigma = \sqrt{\dfrac{\sum_{i=1}^nx_i^2 - n\overline{x}^2}{n-1} }

Pronto, era exatamente o que queríamos! Agora implementaremos um script em awk tendo em vista essa expressão e vamos chamá-lo de desvpad.awk:

Dando permissão para execução e testando com um conjunto de dados (eis um arquivo de exemplo aqui: dados.dat, teremos:

Legal! :-)

PLplot 01: Introdução e Instalação.

PLplot é uma blbioteca multiplataforma para para criar gráficos científicos. Com ela, você pode gerar gráficos comuns, histogramas,  gráficos de barra, traçar curvas de nível e várias outras coisas. A biblioteca está disponível para várias linguagens de programação, como C/C++, Python, Ada, Fortran, Java, entre outras. É possível também o uso dela dentro do Octave. Com vários drivers disponíveis, os seus gráficos podem ser salvos em vários formatos de imagem diferentes ou simplesmente serem visualizados na tela através dos drivers xwin, xcairo, entre outros. A possibilidade de embutir o gráfico dentro de um aplicativo Qt, GTK, WxWidgets é também um atrativo se você tem a intenção de criar um aplicativo com interface gráfica e que necessite lidar com gráficos científicos.

A figura abaixo é um exemplo de gráfico gerado utilizando utilizando a PLplot. Note a qualidade do gráfico gerado. Se você deseja ver do que mais essa biblioteca é capaz, visite a página de exemplos disponível no site oficial.

Gráfico 3D

Gráfico 3D gerado através da biblioteca PLplot. Esse exemplo foi tirado do site do projeto.

O objetivo dessa série de posts é explorar o uso dessa biblioteca utilizando a linguagem C. Se você têm interesse em utilizá-la com outra linguagem de programação, não se desanime. A lógica é a mesma, mudando apenas a sintaxe.

Instalação

A biblioteca PLplot está disponível na maior parte das distribuições Linux atuais. Vamos apresentar aqui a instalação da mesma em algumas das distribuições mais famosas. Caso a sua distribuição não esteja listada aqui, não se desespere! Utilize o seu gerenciador de pacotes para procurar e instalar a biblioteca em seu sistema. E lembre-se que em softwares livres, sempre há a possibilidade de instalação a partir do código-fonte.

Fedora, RHEL,  CentOS e openSUSE

Abra um terminal de linha de comando, torne-se root e instale os pacotes plplot e plplot-devel.

Para usuários do Red Hat Enterprise Linux e derivados, os pacotes são instalados pelo EPEL, de forma que você deve ter esse repositório habilitado em seu sistema

Mageia

Abra um terminal de linha de comando, torne-se root e instale os pacotes plplot e libplplot-devel:

Archlinux

Abra um terminal de linha de comando, torne-se root e instale os pacotes plplot a partir do AUR:

Debian e Ubuntu

Abra um terminal de linha de comando, torne-se root e instale os pacotes plplot-bin libplplot-dev, plplot9-driver-cairo e plplot9-driver-xwin:

É isso, agora você está pronto para gerar os seus gráficos utilizando a PLplot.

Última alteração: 16/02/2012

Usando o Dropbox como um repositório de pacotes para o yum

Já faz um bom tempo que tenho investido meu aprendizado na criação pacotes rpm para o fedora.  Como criei pacotes de alguns softwares que não encontrei nos repositórios oficiais ou ainda que não são livres — mas muito úteis — decidi criar um repositório simples, de forma que eu pudesse compartilhar com amigos que estivessem interessados em tê-lo também em seus sistemas e evitar a ideia de ter de instalar o software através dos fontes direto o que, diga-se, é tedioso.  O desafio era saber onde diabos eu iria colocar esses pacotes de forma que ficassem acessíveis 24 horas por dia, além de me permitir atualizá-los sempre.

Oras, a solução estava na minha frente, mas demorou para eu perceber. Minha conta no Dropbox tem todas as boas qualidades que permitem criar um repositório e manter os pacotes lá! E não existe limite de tamanho do arquivo se você carregá-lo pela interface com o nautilus (desde que não ultrapasse  a sua quota,  é claro!).  A desvantagem é que ele não me permite listar o conteúdo do diretório quando o acesso é feito pela interface web, mas existe uma maneira elegante de corrigir esse problema através do repoview…

Vou então assumir que você tenha algum pacote rpm modificado, criado por você ou qualquer coisa assim e esteja numa situação parecida com a minha. Vou também assumir que você já tem o nautilus-dropbox instalado no seu fedora e funcionando sem problemas. E por último, também irei considerar que você tem consciência que seus pacotes não podem entrar em conflito com os repositórios do fedora e de preferência, com nenhum outro, além de ter em mente que essa solução é para um uso pessoal, nada de querer fazer algo grande dessa maneira…

Primeiramente, vamos criar uma estrutura de diretórios para os pacotes binários e para os fontes (você vai distribuir os fontes também, não é?):

onde estou criando uma estrutura que conterá os pacotes para fedora 13  e 14,  bem como conterá pacotes de 32 e 64 bits,  além do pacote rpm contendo os fontes do mesmo.  Mude para a(s) versão(ões) que você deseja acima.

Perfeito, agora você deve mover os seus binários de 32 bits para os diretórios i386 e os binários de 64 bits para os diretórios x86_64 , de acordo com a versão do fedora em que foi compilado o pacote. Mova também os fontes do pacote para os diretórios SRPMS para o caso de alguém querer ter acesso a eles.

Depois de mover esses pacotes, precisamos criar os metadados que o yum irá baixar para obter informações sobre o seu repositório. Você pode fazer isso com o comando createrepo. Para isso, acesse os diretórios i386, x86_64 e SRPMS e crie os metadados em cada um deles:

A opção -d, passada ao comando createrepo,  é necessária para criar um banco de dados em sqlite que será usado pelo comando repoview. Isso irá criar um diretório chamado repodata nos diretórios em questão e ele conterá informações sobre os pacotes presentes em cada um desses. É ele que o yum acessa e busca por informações de pacotes presentes no seu repositório. Sempre que mexer nos pacotes ou atualizá-los , rode o comando createrepo da maneira acima, mas também com a opção –update para atualizar esses dados. A fim de não ter de realizar esse serviço repetitivo, decidi criar um script que o faz sempre que você colocar novos pacotes nesse diretório. O script repo-update-metadata.sh é o responsável por isso. Baixe-o, coloque em algum diretório no seu PATH e execute-o sempre que colocar ou atualizar pacotes nesses diretórios. Você pode alterá-lo como quiser, mas assim ele já deve estar funcionando sem grandes problemas.

repo-update-metadata.sh

 

Dica: Aguarde até que os rpms tenham sido completamente sincronizados e então depois crie os metadados. Caso contrário, pode acontecer de os metadados serem enviados primeiro que os pacotes e isso não seria uma boa coisa.

Se você tentar listar um diretório público no Dropbox, irá sempre se deparar com uma mensagem de erro, mas seria interessante que seus amigos pudessem ter acesso a informações a respeito do software bem como quais softwares você colocou no seu repositório. O programa repoview permite que você crie páginas HTML estáticas com todas as informações dos pacotes. Um exemplo de página assim é usada para os pacotes no repositório RPMFusion. Veja aqui.

Assim,  se você criar uma página HTML desse tipo, poderá enviar o link para qualquer pessoa que ela poderá visualizá-las sem grandes problemas,  mesmo no Dropbox,  desde que envie o link absoluto do arquivo html.

Vamos criar essas páginas. Depois de ter criado os metadados,  basta apenas fazer algo similar ao comando abaixo para cada diretório do seu repositórios em que haja pacotes:

A opção -t do repoview se refere ao título dado a página. Isso irá criar um diretório chamado repoview dentro dos diretórios onde já estão os pacotes e dentro dele, estarão as páginas HTML geradas e que dizem respeito a cada um dos pacotes rpm, bem como grupos de pacotes, etc.  Note que há um arquivo index.html dentro. É eles que você precisará passar a seus amigos para que eles possam visualizar o seu conteúdo. Você pode criar um outro arquivo index.html (ou outro nome, nesse caso não faz diferença) com as informações e links para essas páginas estáticas que criamos, o que torna a coisa mais simples. Tenha em mente que você precisa passar o endereço inteiro até com o index.html no URL porque vai receber um erro se não o fizer.  Novamente, para evitar a fadiga, você pode usar o script repo-update-metadata.sh que eu citei acima ou escrever um, caso assim deseje.

Você também pode usar a página que você fez para criar um link para o arquivo fulano.repo (obviamente, coloque um nome melhor nesse arquivo…) que iremos criar agora e que permitirá ao yum ter conhecimento do seu repositório. Mas antes… você precisa de uma informação! Vá até algum arquivo do seu repositório pela interface do nautilus, clique com o botão direito sobre ele, depois Dropbox > Copy Public link e cole esse link em algum lugar. Você  deverá ver algo assim:

Pois é,  o que realmente precisamos nesse link é o número que identifica o seu usuário. No caso acima, esse número é 1281922.  Veja o seu caso  e modifique no arquivo .repo definido abaixo, trocando o número acima pelo seu. Vamos então criar o nosso arquivo fulano.repo.

Note que o repositório de pacotes fontes foi desabilitado por padrão. Seria uma boa ideia mantê-lo assim e somente quando o usuário quiser, o próprio yumdownloader — aplicativo que pode ser utilizado para baixar um pacote fonte — irá habilitar ele.

Pronto, compartilhe esse arquivo com seus amigos e peça para eles o colocarem no diretório /etc/yum.repos.d e instalar os pacotes exatamente como instalaria qualquer outro pacote.  Para que eles possam ver os pacotes existentes,  faça como eu sugeri acima com o repoview. Note que no exemplo acima, foi considerado que os pacotes não estavam assinados e por isso a opção gpgchek foi definida como sendo zero. Caso assine seus pacotes, defina esse valor como sendo 1(um) e use a opção gpgkey para passar o URL de onde se encontra a chave pública necessária para verificar se os pacotes são legítimos.

Lançado o Firefox 4!

Ontem foi o tão esperado dia para os usuários do Mozilla Firefox.  Depois de vários betas, finalmente  esse navegador chegou a sua versão 4.0 com uma completa remodelada em seu visual, lembrando em alguns pontos o Google Chrome/Chromium.  Mas o que realmente me surpreendeu em tudo isso foi a quantidade de downloads efetuada pouco mais de 24 horas depois do seu lançamento. No momento em que escrevia essa mensagem, já eram quase 12 milhões de downloads do navegador! 4 milhões a mais que o Firefox 3. A Mozilla criou especificamente uma página para apresentar essas estatísticas em tempo real. Você pode vê-las no endereço http://glow.mozilla.org. Dê lá já deu para perceber que uma grande parte dos downloads eram efetuados inicialmente a partir da Europa — onde o firefox ultrapassou o IE, diga-se — e depois, passou a ser dos Estados Unidos. Pelo menos, até eu escrever esse post.

Cheguei a usar o Firefox 4 a poucos dias atrás, através do repositório criado pelo spot no fedorapeople.org , enquanto ainda estava no beta 11 e a primeira coisa que disse foi: Putz, parece com o Chromium agora! Mas algo que me chamou a atenção rapidamente foi o desempenho do navegador:  Várias páginas em que navego começaram a carregar com uma rapidez notável nessa nova versão.  Segundo a Mozilla, o Firefox 4.0 é 6 vezes mais rápido que a versão 3.6.x do Firefox e o usuário irá de fato perceber algo do tipo.  Vários botões mudaram de lugar e alguns recursos também tiveram suas posições modificadas.  Outra novidade agora nativa do Browser é o recurso de sincronizar os seus favoritos, históricos, etc  e recuperá-los em outra máquina, assim como Chromium/Chrome.  Algo que senti falta, no entanto,  foi da opção de salvar as páginas que neveguei pela última vez e poder abrí-las assim que carregasse novamente o Firefox 4. Agora as coisas parecem ocorrer assim como o…  Chromium!  Clicou em fechar, ele já fecha o navegador de uma vez, sem fazer qualquer pergunta a respeito das abas abertas.

Creio que em breve o navegador deve estar nos repositórios oficiais do fedora, mas caso você queira utilizá-lo, ainda pode fazê-lo através do repositório mantido pelo spot, que citei anteriormente. Ele já atualizou o navegador para a sua última versão:

Se você também sente falta do recurso de fechar o firefox e salvar as abas que estavam abertas,  de forma que ele possa abrir elas assim que você carregar novamente o navegador, faça o seguinte: Abra o Firefox 4 e na barra de endereços, digite about:config e dê ENTER.  Ele irá dizer que modificar essas opções podem comprometer a estabilidade do navegador e te dá a opção de continuar mesmo assim. Pois continue. Localize a opção browser.showQuitWarning e mude-a de false para true. Pronto, isso deverá fazer com que ele volte e exibir o diálogo que permite salvar sua sessão e restaurá-la quando o navegador for novamente carregado.

Enjoy! :-)