Perl e módulos na $HOME
Mas, por quê?!
Qual o sentido de alguém instalar os módulos dentro do seu $HOME
? Normalmente, uma das duas:
- Você não tem permissão suficiente para instalar no próprio sistema (você está mexendo num servidor ou coisa do tipo);
- Você está desenvolvendo a bagaça, e quer manter a versão bleeding edge só para você.
Bom, se for o 2-o caso, existe o tal do perlbrew.
Mas eu gosto das instalações locais e as uso desde '97. E o local::lib foi uma mão na roda e tanto! Então, vamos lá:
Passo-a-passo:
Download do local::lib:
curl -LO http://search.cpan.org/CPAN/authors/id/A/AP/APEIRON/local-lib-1.008004.tar.gz tar xzf local-lib-1.008004.tar.gz cd local-lib-1.008004/
Instalação do local::lib:
perl Makefile.PL --bootstrap=$HOME/perl5 make make test make install
Ativando local::lib na inicialização da shell (Bash):
cat << PROFILE >> $HOME/.profile export PERL_MM_USE_DEFAULT=1 eval \$(perl -I\$HOME/perl5/lib/perl5/ -Mlocal::lib) PROFILE
Agora, é hora de logoff/logon para quem está acostumado com o Windows, ou então:
. $HOME/.profile
Prosseguindo com a configuração/teste do CPAN (essa configuração faz as dependências serem instaladas automaticamente):
cpan cpan[1]> o conf prerequisites_policy follow cpan[2]> o conf commit cpan[3]> install App::cpanminus cpan[4]> quit
Enumerando os módulos instalados:
perl -MExtUtils::Installed -E 'chdir $ENV{PERL_LOCAL_LIB_ROOT}; my $i = new ExtUtils::Installed; say for $i->modules'
cpanminus permite atualizar todos de uma vez, de uma maneira eficiente:
perl -MExtUtils::Installed -E 'chdir $ENV{PERL_LOCAL_LIB_ROOT}; my $i = new ExtUtils::Installed; say for $i->modules' | cpanm
Referências:
II São Paulo Perl Workshop
Olha, não conheço sequer uma criatura digna de ser chamada Programador Perl que esteja dentro dos padrões daquilo que a sociedade considera "normal".
Se Perl mutila a psique humana ou apenas atrai freaks, jamais saberemos. O fato é: somos "foverer alone" e nos vangloriamos disso
Mas, por mais insuportável que será para mim deixar o meu covil, nesse dia 7 de maio ao menos terei uma boa razão para fazê-lo: o II São Paulo Perl Workshop! Esse evento promete, ao menos para mim, muito mais do que o famigerado Google Developer Day, a começar pelo fato de que o local não terá acesso à Internet!!! Ou seja: só vai quem se interessa pelo tema.
E, falando em coisas interessantes, o próprio Larry Wall, o criador do Perl, dará palestra! Se eu tivesse uma cópia de "Deus, um Delírio" [Richard Dawkins] em papel, garanto que pediria um autógrafo na contracapa.
Enfim, esse post não é patrocinado, eu não ganho comissão das inscrições, e, no fundo, quero mais que vocês todos, programadores .NOT, se fsck
-odam. Para quem fica, a minha; para quem vai, a do meu pai!
UTF-8: A Missão
Me recuso a entender como ainda existem uébidevélopers que não conseguem decidir se usam codificação ISO-8859-1 ou UTF-8 em suas bagaças, e acabam optando por ambas. Para piorar, os países que tem a capacidade de definir normas consistentes já o fizeram há décadas, e hoje podem sobreviver muito bem sem fugir do ASCII
Já quem lê (e escreve) em cirílico ou português, que se vire. Inclusive, quem escreve hoje em dia raramente pensa em quem vai ler. Então, você, que por razões de ofício ou não, precisa processar computacionalmente uma quantidade exorbitante de texto heterogêneo na língua de Camões, está fo-di-do.
Felizmente, pensou "processamento de textos", pensou Perl! Entretanto, por melhor que seja a ferramenta, não resolve o problema sozinha. Então, tentando fazer do mundo um lugar melhor, fiz uma miscelânea da minha experiência de dar cabeçada na parede. Have a phun: