Novo rumo, novos caminhos.

Olá todo mundo!

Já faz bastante tempo não é mesmo? O último post publicado do Blog é de 2011, quase quatro anos de intervalo.

O foco do blog era basicamente Linux/Unix e administração de sistemas de forma geral, primeiro porque era o que mais me chamava a atenção na época e segundo porque é algo que eu gostava, e ainda gosto bastante.

Pretendo diversificar isso, desta vez trazendo algo mais voltado para o desenvolvimento de softwares web, linguagens e frameworks, coisas que estão sendo meus objetivos de estudo no últimos e meses, e como precisava de algum lugar pra escrever sobre essa minha jornada, achei que este blog, meio abandonado, seria uma boa.

Anúncios

Divagação

Querer é poder?
Sempre ouvi esse ditado. Admito que me pego constantemente pensando nele.
Será que o simples fato de desejarmos algo possa torna-lo realidade?
Ou ao menos o tornar mais real?

Penso que muitas vezes nos confundimos entre sonhos e desejos.
Algo que nos liga a uma fantasia, ou algo que esperamos tornar realidade.
Ambos estão ligados pela mesma linha de conexão.

Nenhum dos dois se passa no presente, ou mesmo é constantemente relacionado ao
futuro próximo.
Indo mais longe na questão, e nos aprofundando nesse nefasto mar, temos a
ingênua idéia de que o nosso futuro pertence única e exclusivamente a nós, mas
isso não passa de uma divagação surreal.
Cada pessoa ao seu redor é uma real conexão entre você e o seu objetivo, não
somos ilhas separadas por oceanos e que nenhum acontecimento linear que ocorre a
um afeta ao outro.

Somos ao mesmo tempo únicos e similares, fazermos parte do muito e do
pouco.

Voltando ao princípio, ainda não sei as respostas, me vejo em um mar de
dúvidas, isso me deixa inquieto, confuso.

As perguntas estão espalhadas,
não muito distante das respostas,
respostas embaralhadas,
escondidas no nosso próprio ego.
As diferenças entre o querer e o poder
ainda não sei, mas posso dizer
estão no fazer, no realizar, na concretização.
Estão fora do nosso estado de conforto.
Não residem apenas nas idéias, nos subúrbio da nossa constante individualidade.
Mas sim nas nossas ações.

O Mundo não é justo. Me mostre a sua justiça.
O Mundo não é para os fracos. Me mostre os fortes.

“…And when the hardest part is over, we’ll be here
And your dreams will break the boundaries of our fear…”

Dica da Semana, VIM.

Muitos dos novos usuários de Linux se perguntam de como o VIm funciona, qual a proposta, e principalmente qual a razão para um editor de texto em CLI, aparentemente simples, possuir usuários tão apaixonados, quase fãs.

Este texto tem como pretensão ser um ‘how to’ do Vim, já que a documentação oficial não deixa nada a desejar, e o pelo fato do mesmo ser muito extensível, seriam necessários posts e posts, horas e horas e mesmo assim não conseguiria descrever metade das qualidade e funções deste editor de textos maravilhoso, poderoso, leve e robusto. Em tempos onde a GUI já dominou, o Vim mostra o quão mais produtivo, mais profissional, mais simples e elegante a CLI pode ser, em alguns casos, mostrando que não é necessários milhões de linhas de código sujo, de funções desnecessárias e que ninguém usa são o bastante para consolidar a melhora continua.

Existem muitos editores de texto CLI no Linux, como por exemplo o nano, mas o Vi sempre foi o preferido dos usuários linux, isso se deve ao fato da extensibilidade, portabilidade, e comportamento que ajudam e muito na produtividade de qualquer programador ou SysAdmin. Antes de começar a contar a história do Vim queria deixar claro que esse é um post escrito por uma fanboy, e sem compromisso com o bom senso ¬¬

O Vi (pronuncia-se vi-ai ) foi escrito por Bill Joy no longínquo ano  de 1976 para o BSD. O nome era uma abreviação de VIsual. Em 1991, foi lançado o editor Vim, uma derivação melhorada do vi ,o nome Vim é abreviação para Vi IMproved.

Apesar do Vim ser um editor de texto extremamente voltado a programação, ele não é exclusivo para isso, sendo excelente para editar arquivos de configuração extensos ou listas de compras [ 🙂 ]. Entre as milhares de features, estão o fato dele ter autocorreção, auto-identação, seleção visual, macros, seleção vertical de texto, interação total com o sistema operacional, uso de expressões regulares, sintaxe colorida, etc.

Outro fator que deve ser mencionado é de que o VIM não é exclusivo para Linux, tendo versões para todos Unix-LIKE, incluindo o Mac OS X, os BSDs, e outros sistemas como o Windows. Convido você a instala-lo na sua distribuição Linux, no seu Mac, ou porque não no Windows.

Vamos começar com o simples, basta digitar no terminal vim e se deparar com algo semelhante a isso:

Vim aberto

Uma grande característica e diferença para com demais editores, é que o Vim se foca no Visual, na edição do texto, os desenvolvedores sacaram que nós passamos muito tempo editando o texto, copiando, colando, recortando, até mais tempo que inserindo caracteres nele. Com essa mentalidade, o Vim possui quatro Modos principais:

  • O Modo Visual
  • O Modo de Inserção
  • O Modo de Comandos
  • O Modo Normal

Com um arquivo carregado, para entrar no modo visual, basta digitar v, para o modo de inserção i e esc para comandos, precedidos de : .

Vim with VSplit view.

Se você é um usuário de Linux, Mac OS, ou um programador de Ruby, linguagens Web, C/C++ entre outras, lhe aconselho a começar a olhar para VIM, no começo pode ser um pouco confuso, mais com o tempo você será agraciado com a liberdade, a simplicidade e coisas que compensaram cada segundo lendo a documentação. Você  é aquilo que você conhece. Acho um pecado, uma heresia um linuser que não sabe usar o VIm, é vergonhoso, não pela parte do ego, mais sim pelo fator de estarem perdendo tempo com coisas fúteis, e deixarem de lado uma ferramenta tão poderosa como essa para arrastarem o mouse.

Esta é minha recomendação da semana, deixarei alguns links com bons artigos, a documentação oficial, e vídeos para os mais ‘multimídia’.

MacVim, vim for OS X

VIM Documentation..

Palestra do PotHix sobre Vim.

Rails on VIM, pelo Fábio Akita

vimfiles no GitHub..

VimCasts <= Altamente recomendado.

Por isso é só, até semana que vem com a próxima dica!

Sobre Liberdade, Comunidade e distribuições EuQueFiz.

Como o assunto é software livre, nada melhor do que começar a falar de Linux.

Linus Torvalds, ao iniciar o desenvolvimento do kernel do Linux (1), e subsequentemente lança-lo sob licença GPL (2), deu inicio a uma cadeia de eventos que nos explica o porque do sucesso do sistema operacional livre.
Vamos primeiro esclarecer algumas coisas. Como pode ser lido na nota de lançamento do Linux 0.1, o prjeto iniciou com poucas pretensões, como um hoob. Não foi definido um alvo grandioso. Vivemos em um mundo globalizado, capitalista e predador, onde vence o mais forte. Um grande erro que muitas pessoas cometem ao iniciar algo na vida, seja um projeto de software ou plano, é que elas se esquecem de que o Alvo muitas vezes não é fixo. Ele, assim como o resto do mundo, estão em constante mudança.  O mundo não é previsível, não existe estado de conforto e fracos não tem vez.
Outro erro muito comum que pessoas cometem é “seguir” a maré, o típico “Maria vai com as outras”. Em 1991 uma das grandes apostas para os Sistemas Operacionais era o conceito de microkernel (onde grande partes das funcionalidades não são ‘grudadas’ ao kernel, existe um núcleo mínimo modular e que se comunica com servers que compõe o resto do kernel) que vai de encontro ao aposta feita por Linus, que decidiu seguir o caminho mais fácil sem querer “inovar” usando o conceito já considerado por “especialistas” da época como defasado, um kernel monolítico, onde o kernel se concentra em uma único grande individuo.

O Projeto GNU já tinha começado e desenvolver o HURD usando o modelo de microkernel, e encontram várias dificuldades. Esse modelo é muito mais complicado de se debugar, muito mais complexo e deve se ter um controle sobre o código mais rígido, devida a facilidade de ser fazer merda.

Se Linus tivesse seguida a maré, fazendo e investindo no que todo o resto investia, talvez você não estivesse lendo esse blog.

Nesse caso, você faria o que os outros fazem?

Outra grande sacada de Linus foi lançar o Linux sob uma licença livre, a GPL. Por trás de toda a curtina filosófica e ética, a GPL, o Software Livre em si, esconde artifícios para um bom desenvolvimento em grupo, comunitário. Em pouco tempo o Linux ganhou uma quantidade de usuários grande e de co-developers grande. Linux criou todo uma ambiente favorável a isso, ele não definiu uma alvo inalcançável, mas sim ofereceu uma promessa plausível e que poderia ser atingida, usou uma licensa copyleft e oferecesse segurança para seus developers, mais importante que isso, ele não quis impor nada ao Linux, ele não foi rígido e não quis manter um controle de ferro sobre sua criação. Esta ai outro grande erro que as pessoas cometem, que é querer controlar tudo como mãos de ferro, querer controlar a vida é algo inútil, pífio. O Curso da vida é imprevisível, e querer controlar isso é impor barreiras, é limitar, é colocar sua vida em uma cercadinho, em uma redoma de vidro. Tudo o que linus fez e faz é coordenar o desenvolvimento do kernel, é olhar para boas idéias e adota-las, dispensando o lixo, filtrando.

Em volta do kernel se criou uma comunidade que deu origem a outras comunidades. A comunidade envolta do software livre não é simples como se pensa. Ela é formada, assim como toda comunidade, por pessoas. Esse fator poderia ser uma problema para o software livre onde lidar com pessoas e egos é algo mais direto, mas o problema em se lidar com pessoas afeta mais o desenvolvimento de software proprietário. O Software livre estimula o que a de bom nas pessoas, onde todos buscam soluções para um problema específico e que se torna geral, um bem que se torna livre, se torna de todos. No desenvolvimento de software proprietários é comum ver brigas de patentes e direitos autorias, dinheiro.

Como disse Maquiavel em o Príncipe: “...porque homens são geralmente ingratas e volúveis, podem ser dissimulados e ambiciosos de dinheiro…“.

Tudo isso se deve a um ambiente  que pode ou não ser favorável as coisas boas ou ruins. Devemos criar em torno de nós um ambiente favorável, mas não limitado, para as coisas aconteçam nas nossas vidas.

A comunidade é um dos principais fatores do software livre, ela faz acontecer. Mas, é ingenuidade pensar que a comunidade do free software é um templo de pessoas dotadas de bom senso e inteligência superior. Como qualquer ambiente natural, ela também possui “desvios de curva”. Existem os Trolls, os fanáticos, os com tendências comunistas, os apáticos, os de ego inflado e vários outros estereótipos que vocês devem conhecer. Nesse caso é mais que necessário separar joio do trigo, absorver o que é bom e descartar o que é ruim.

Sendo a comunidade tão complexa e aos mesmo tempo simples, é necessário se adaptar. O conceito de evolução criado por Chales Darwin, que diz a respeito de que todo ser precisa  adaptar-se ao meio em que vive,e que o ambiente favorece esse processo adaptativo, ou seja, as condições que cercam um indivíduo são fatores determinantes para sua evolução, explica o porque de surgirem usuários de todos os tipos. Alguns desse usuários se vêem em uma mar de contribuição, de ótimos SysAdmins, de excelentes programadores, e querem de alguma forma contribuir com tudo isso. Querem fazer parte de algo bom, algo especial.

Até ai, nem um problema, desde que o usuário tenha reais condições de contribuir, ou melhor, que ele seja bem instruído de como colaborar. Tirando esses dois fatores, o conhecimento e a instrução, o que sobra ao usuário?
Essa é fácil. Fazer um remaster. A receita é simples, não exige esforço, conhecimento, nem investimento monetário. Basta pegar alguma distribuição Linux popular, acrescentar alguns pacotes, trocar o wallpaper, mudar o nome para AlgumaCoisa-Linux e pronto.
Pouco tempo depois a distribuição é descontinuada, os motivos: perca do interesse do “criador” da distribuição, falta de tempo dos “developers”, falta de feedback, ou ainda correr o risco de ser criticado infinitamente pela comunidade linux .

Os erros nesses casos são muitos, mas vamos explicar alguns deles:

1Criar um filho para ser igual ao pai — Vai dar merda. Usar o Ubuntu que já é uma distribuição fácil, destinada a end-user para Criar outra distribuição com o mesmo propósito que visa ser fácil de usar e voltada a end-users, não estimula nada, não acrescenta nada.
Todos os bons e grandes softwares nasceram para resolver um problema, saciar uma necessidade. Então pense comigo. Se você ao fazer/remasterizar um distribuição não vai resolver nenhum problema individual, e não vai sanar nenhuma necessidade sua, pare.
Os softwares livres Emacs, Linux, git, apache, bem como os bons softwares proprietários ActivyDirectory, Photoshop, e todos os bons softwares nasceram para resolver um problema ou sanar uma necessidade, seja ela individual ou geral.

2Não ter visão de futuro, ou criar um filho sem ensina-lo a andar sozinho
Eric S. Raymond no clássico “The Cathedral end the Bazaar” diz : “Quando você começa a construção de uma comunidade, você precisa ter capacidade de apresentar uma promessa plausível…” Linux ao lançar o linux não tinha alvo fixo definido, mas tinha a promessa de melhora continua. O Linux seria um sistema compatível com unix, usando ferramentas GNU, “basead” no Minix para que os nerds podessem brincar no pc de casa (objetivo “simples”, mas com grande potencial). Então não faça um distribuição que tenha como foco “Ser fácil e apresentar o gnu/linux a novos usuários, trazendo flash e codec .mp3 instalado…“, e querer que isso se torne o novo Ubuntu. Isso é Lixo, isso é pífio. Isso é querer abraçar o mundo com braços de um anão.

3Usar uma base ruim, ou querer tem um filho com um pai morto. — Isso é surreal. Já cansei de ver manolo dizendo que vai fazer uma distribuição baseada no Big Linux ou com o mesmo foco. Pior ainda, querer fazer um remaster do Kurumim. O Big Linux é uma distribuição enlatada, feita no quintal, que não resolve nenhum problema e não sana nenhuma necessidade. Não tem promessa plausível e não respeita seus usuários, além de violar a GPL das mais variadas formas. O Kurumim deve uma bela vida e morreu com dignidade. Isso se deve ao grande Carlos E. Morimoto, seu criador, que ao ver a falta de sentido em continuar seu projeto (Já existiam umas 9845457 distribuições como o mesmo propósito, problema resolvido, necessidade sanada.) parou o por conta própria.

4Tentar a sorte e infringir a lei, ou transar sem camisinha. — ??
Todos os três fatores acima não são nada se comparados a esse. Grande parte das distribuição “Ser fácil e apresentar o gnu/linux a novos usuários, trazendo flash e codec .mp3 instalado…” infringem a GPL. Muitos se esquecem disso, devido a natureza “boazinha” da GPL; Não se engane, a GPL apesar de tudo continua sendo uma licença e deve ser respeitada. Infringir a GPL é a maior forma de agressão ao software livre. Você, que vai lançar o FundoDeQuintal-Linux já leu e entendeu a GPL? Se a resposta for não. Pare!
Depois de ler esses quatro tópicos deve estar pensando que sou do tipo purista e que odeia qualquer distribuição linux “based on”. Isso não é verdade. Já usei por algum tempo várias distribuições do tipo, Mint, Sabayon, PCLinuxOS…..Todas essas distribuições ganharam seu espaço e sua comunidade porque valorizaram acima de tudo  seus usuários. Criaram um boa comunidade (qualidade técnica é só o básico, o mínimo).

Tem muita gente que associa a Comunidade do Free Software a Liga dos Justos , citada por Karl Marx no Manifesto Comunista. Não é bem assim. Como disso no inicio de Texto é mais variado é mais complexo.

A usuários que fazem uma verdadeira caça as bruxas de distribuições baseadas. Querer acabar com essa possibilidade de ser criar uma distribuição de forma simples é ir de encontro ao   que a liberdade do software prega, é querer ir contra uma variante da liberdade, é ir contra a própria GPL. Então não queiram acabar com isso. Qualquer distribuição que possua pelo menos UMA das quatro características acima será alvo de seu próprio destino. Em questão de meses será descontinuada. Será alvo da lei da Seleção Natural pregada por Darwin.

Quando vejo anúncios de distribuições que tem como diferencial wallpaper e flash, apenas me fingo de inocente e pulo de link. Não há motivos para perder meu tempo testando tal distribuição. Querer dar liberdade para uns, acabando com a liberdade de outros não é uma caminho. Quer fazer um EuQueFiz-Linux? Faça. Agora seja capaz de aceitar as consequências, vai ser só um na multidão, uma gota no oceano.

Multidão, você será apenas mais um...
Multidão, você será apenas mais um...

Bom, o que quero dizer com isso tudo é que você tem a liberdade. Essa liberdade é só um ponto de partida, um ínicio. A dois lados de uma moeda, não devemos olhar apenas para um.

OBS: Esse post relata minha opinião pessoal sobre esse tema que já se tornou “clichê”. Não fui didático demais, muito menos tentei parecer rebuscado demais.

Gnome Shell ou Unity? Eu fico com o KDE 4.

Recentemente fomos tomados por um grande turbilhão de atualizações em ambientes gráficos GNU/Linux. De um lado temos o Unity, a nova investida da Canonical para o Ubuntu; Do outro uma major release do Gnome, que pulou para a versão 3, trazendo consigo o Gnome-shell.

Confesso que fiquei muito mais curioso em relação ao Unity, por ser algo que vem do Ubuntu, a distribuição Linux mais popular de todos os tempos, e com certeza, tudo que o Ubuntu faz impacta no mundo dos desktops linux, seja isso algo bom ou não.

Logo após o Lançamento da versão 11.04, fiz o download e instalei o Ubuntu em uma partição reserva. Algumas coisas me impressionaram, como o fato de terem conseguido deixar a interface do ubuntu ainda mais simples, o tema default conseguiu ficar mais bonito que a versão anterior. Como esperado, o sistema ficou bem mais rápido, devido as novas versões do Kernel (2.6.38), glib e gcc. Como nem tudo são flores, com menos de 3 horas (três), desisti de tentar usar o Unity. O novo shell é muito simples, ao máximo, o que não é algo bom.

O simples a que me refiro não é o simples pregado pelo princípio KISS (Keep it Simple, Stupid), ou a simplicidade definida por Da Vinci como o último grau da sofisticação; Mas sim uma simplicidade pobre, isso mesmo, pobre. Simplicidade essa que lhe rouba produtividade, que lhe toma recursos necessários.

Se você usa o computador para navegar na internet e ouvir músicas, tudo bem. O Unity é feito para você. Mas caso seja um programador, um editor, ou algo a mais que um simples usuário do Firefox/Chrome, a coisa fica mais complicada. A simples tarefa de abrir um terminal (gnome-terminal) se torna uma batalha, uns duzentos cliques para abrir algo tão cômodo aos usuários linux. Alguns amigos me disseram que com o tempo de uso se acostuma ao ambiente do Unity, agora ficou me a dúvida se realmente eles pegaram ” o truque” de como usar o unity, ou eles que se acostumaram a pobreza de recurso do shell.

O Sistema de Search provido pelo Unity, me fez rir.

Agora algo tenho que dizer, o Unity promete muito, a API é muito simples e poderosa, com mais algumas versões (se ele sobreviver) pode ser tornar algo muito bom, prático e que integre o sistema gráfico dos ambientes GNU/Linux de forma impár.

Meu veredito é: o Unity promete ser algo ótimo. Mas ainda só promete.

Logo após sair do UNity, fui dar uma olhada no Gnome 3. a instalação pelos repositórios ppa do Ubuntu foi light. Em pouco menos de uma hora o shell estava instalado e funcionando. A primeira impressão foi : “Caralho! Bem mais usável que o Unity!” O gnome shell se mostrou mais prático, mas rápido, bem melhor que o Unity, Tanto que arrisco a dizer que usuária o shell do gnome sem problemas como ambiente default. O gerenciamento de janelas, apesar de diferente (Adeus ao botões de maximizar e minimizar), é muito prático. Com dez minutos de uso você até se esquece que uma vez usou certos botões. Usando um/dois cliques você vai e vem entre as áreas de trabalho, alternando entre as aplicações. Diferentemente do Unity, o Gnome 3 apesar de também mudar a forma como se encontra aplicativos, se mostrou inovador e ao mesmo tempo conservador. Muitos louvavão o gnome-panel pela forma como as plicações eram organizadas : Internet; Acessórios; Escritório… E isso continua no Shell, tudo esta dividido da mesma forma como antes.

O GTK+3 finalmente tem uma grande melhoria, o tema default que antes era horrível, agora esta “bonito”, sombras, animações tudo foi repaginado e melhorado. Quem é usuário do Mac OS vai se sentir em casa. A janela “preferências do sistema” é idêntica ao “System Settings” do OS X. A forma de se trocar wallpaper fala por si só.

No meio de tantas mudanças me senti perdido. Ficar no Ubuntu e conviver com o Unity e suas infinitas limitações? Ou tentar o Gnome-Shell e aguardar pela volta do poder de personalização quase ilimitado do gnome2 ?

Nós, usuários de GNU/Linux devemos nos sentir honrados por tem um sistema robusto, UNIX-like, e que nos de mais de 2 escolhas de ambientes gráficos. Acabei voltando ao KDE.

O KDE SC que ao contrário do Unity que até agora é só uma promessa, e do Gnome-Shell que é pouco modular e adaptável, se mostra robusto, completo e estável.

Durante o breve uso do Unity uma questão não saia da minha mente…Porque a Canonical colocou o Unity como default nessa versão, se ainda tem cara e alma de software beta? Será a necessidade de mostrar que possui algo a mais que a “concorrência”? De mostra que inova? Ego? I Don’t Know….

O que aconteceu com o Unity e com o gnome-shell não é nenhuma novidade no mundo livre. O próprio KDE 4 sofreu desse mau. dessa necessidade. Uma versão crua, absolutamente instável foi lançada e como consequência até hoje, seis releases depois, o KDE4 ainda carrega o estigma de ser “pesado” e “instável”.

Quem dera isso se resumisse aos ambientes gráficos….O que falar do PulseAudio? do X.org? Não faltam exemplos. Quer inovar? Revolucionar? Você sabe pelo menos o significado dessas palavras? Você realmente acha que sabe?

Termino esse post dizendo para você esperar. As novidades dos dois ambientes são ótimas? São. Mas ainda não “verdes”. Em pouco tempo as promessas se tornaram realidade. Fique com o gnome-panel ou com o KDE.

PS: Tudo escrito acima, mostra somente minhas opiniões pessoais.

OpenSUSE Tumbleweed: Por uma distribuição Rolling Release!

Olá Povão!

O Projeto OpenSUSE Tumbleweed visa fornecer uma versão rolling release do OpenSUSE, que contem as versões mais atualizadas dos pacotes, sem depender de ciclos de lançamentos estáticos, rígidos, e que podem prender o usuário.

Para quem já conhece o opensuse sabe da existência do repositório “Factory”, que contem os pacotes novíssimos, nas últimas versões em desenvolvimento. A diferença entre o “Factory” e o “Tumbleweed”, é que o primeiro possui pacotes instáveis, em desenvolvimento, lá você irá encontrar versões alfa/beta/RC de softwares como Kernel 2.6.38-rc8. Até se pode usar uma versão Factory em máquinas de produção, mas não é muito recomendado. Já no “Tumbleweed”, os softwares estão em suas últimas versões estáveis.

Resumindo, usando o repositório “Tumbleweed” você não precisará atualizar de versão da distribuição, quando sair a versão 12.0, você já estará com os softwares atualizadas tanto, ou até mais que a versão 12.0.

Ao ler a release note do OpenSUSE 11.4, o Tumbleweed logo me chamou a atenção, já que sou usuário de longa data de distribuições rolling release, como o Arch Linux e o Gentoo, e me sinto muito confortável estando livre de ciclos de lançamentos a cada 6/8 meses.

Como usar o Tumbleweed?

Primeiro você deve estar usando a versão 11.4 ( o repositório ainda esta em testes para a versão 11.3, devido a enorme diferença entre versões de pacotes), depois é só se logar como root e:

zypper ar --refresh http://download.opensuse.org/repositories/openSUSE/Tumbleweed/standard/ Tumbleweed
zypper dup --from Tumbleweed

Na minha máquina o processo foi tranquilo, mas o Zypper pode lhe apresentar alguns conflitos entre pacotes do kernel, basta prestar atenção e resolver os conflitos, depois é só relaxar, como a versão 11.4 foi lançada recentemente, com pacotes estão bem atualizados, não a muitas alterações a serem feitas, nessa data 15-03-11, vim, git, e kernel linux foram os poucos pacotes a serem atualizados, mas com o passar do tempo isso só tende a aumentar.

Utilizando o Zypper para atualizar o sistema.

 

zypper mostrando alterações nos pacotes;

Espero que este post seja útil para os poucos leitores em potencial desse blod, e aproveitando esta deixa, estou pensando em encerrar o blog, já que ele não esta seguindo o seu curso definido em sua criação. Mas vamos esperar, o tempo é o senhor da verdade e só ele vai dizer se o blog continua de pé.

RVM, rubygems e Rails: Ambiente Ruby no Ubuntu Linux!

Olá Pessoas! Hoje um rápido post de atualização.

Recentemente, voltei a estudar Ruby, e para um melhor conforto , modifiquei algumas coisas no Ubuntu, já a versão do Ruby nos repositórios é a versão 1.8.7, e a última versão é a 1.9.2. Alem disso, modifiquei o gEdit com alguns plugins, e instalei o poderoso Vim.

Dependência.

Para iniciar a instalação do rvm e afins, vamos precisar de algumas ferramentas, aqui vão elas:

$ sudo apt-get install vim-gnome curl git build-essential libxslt-dev libxml2-dev libsqlite3-dev

RVM.

A primeira coisa que vamos precisar para instalar o rails 3 é o “Ruby Versioning Manager” , para realizar esse difícil operação, vamos ao bash:

$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

Agora, edite o .bashrc na sua pasta home, adicionando a seguinte linha no final do arquivo:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

Mude a linha:

[ -z "$PS1" ] && return
por

if [[ -n "$PS1" ]] ; then

Novamente, coloque na última linha, com o comando:

$ echo "fi" >> .bashrc

Reinicie o terminal.

Instalando o Ruby 1.9.2.

Primeiro vamos ver se tudo ocorreu como deveria e se o rvm esta funcionando e instalar o ruby:

$ type rvm | head -1

$ rvm package install openssl

$ rvm install 1.9.2 --with-openssl=$HOME/.rvm/usr

$ rvm --default use 1.9.2

Instalando o RubyGems.

Dowload RubyGems em rubyforge.org e extraia. Depois rode   $ ruby setup.rb.

Instalando o Rails.

$ gem install rails

Lembrando que todos os comandos devem ser executados no diretório /home do usuário, sem o “sudo”, vamos testar se tudo foi instalado:

$ ruby --version && gem --version && rails --version
$ rails new app
Espero ter ajudado, e até mais!