Sim, você pode ter um canal PEAR!

Quem aqui é desenvolvedor PHP e não conhece o PEAR? Difícil né? Entretanto, não são todos que sabem que podemos ter o nosso próprio canal PEAR. Ok, mas pra que preciso de um canal??

Origens e Objetivos

PEAR significa PHP Extension and Application Repository, e foi iniciado em 1999 com vários objetivos, sendo os principais (na minha opinião):

  • fornecer um local centralizado para criação de frameworks/micro-frameworks/componentes/bibliotecas open source em PHP;
  • prover um sistema de distribuição e gerenciamento de pacotes.

Simples não?

Como posso participar?

Desde sua criação foram adicionados inúmeros pacotes, desenvolvidos por pessoas diferentes. Estes pacotes são relacionados a um canal central, onde são buscados os arquivos para efetuar as instalações. Para você obter acesso à este canal e incluir seu pacote você precisa solicitar o registro, seguindo as instruções de acordo com cada tipo, porém (até onde sei) pode não ser um processo muito rápido (você pode ser barrado várias vezes por uma variedade de motivos: inglês errado, código fora do padrão, etc).

Mas eu quero ter um canal só MEU!

Calma rapaz, vamos chegar lá 😛

Realmente, as funcionalidades de gerenciamento de pacotes são simplesmente fantásticas, e fazer com que seus projetos sejam instalados apenas através do pear install dá um charme completamente diferente.

Por você não conseguir ser aceito no repositório central, ou então por simplesmente não querer colocar seus projetos lá, você tem a brilhante idéia: vou criar meu canal!

Para fazer isso precisamos entender como que a brincadeira funciona, quais ferramentas nos ajudam neste processo e como utilizar as tais ferramentas.

Conceitos

Os canais PEAR são agregadores de pacotes. Neles ficam as configurações do canal, os pacotes que são gerenciados, um change log geral do canal e o índice com os pacotes existentes. Os pacotes possuem os arquivos fonte do projeto e um arquivo chamado package.xml, neste arquivo são armazenadas a configuração do pacote (dependências, criadores, versões).

Até aqui mistério algum, certo?

Ferramentas

Esta parte é simples. Temos o Pirum que nos ajuda a criar e gerenciar o canal, e o PFM que gera/atualiza o arquivo de configuração de pacote. Pra instalar elas é só rodar os comandos abaixo (utilizando um usuário que possua as devidas permissões):

pear channel-discover pear.pirum-project.org
pear install PEAR_PackageFileManager_Cli
pear install pirum/Pirum

Colocando pra funcionar!

Agora vem a parte divertida, precisamos configurar a parada.

Canal

É necessário um arquivo XML, que conterá a configuração geral do canal, vejam a configuração do meu canal:

<?xml version="1.0" encoding="UTF-8" >
<server>
    <name>lcobucci.github.com</name>
    <summary>Lcobucci's PEAR Channel</summary>
    <alias>lcobucci</alias>
    <url>http://lcobucci.github.com/</url>
</server>

Por padrão este arquivo é chamado de pirum.xml, então vamos lá… em um pasta vazia crie um arquivo com este nome e conteúdo (alterando os parâmetros, claro), e rode o comando abaixo:

pirum build .

O ponto significa a pasta atual, ou seja, se você não estiver dentro do diretório que falamos acima, troque o ponto pelo caminho (absoluto ou relativo) para a pasta que você colocou o arquivo pirum.xml.

Você verá que agora existem vários arquivos na pasta, inclusive um index.html e um pirum.css, eles formam a parte “visual” do seu canal 😉

Pacotes

Para criar os pacotes precisamos de um arquivo chamado package.xml onde são armazenadas as configurações. O PFM é justamente responsável pela criação e atualização deste arquivo, mas a utilização dele não é obrigatória, você precisa de um XML com a estrutura definida pelo PEAR, como esse de uma biblioteca minha.

Para usar o PFM só executar o comando abaixo, seguir os passos que a ferramenta te pede e no final mandar salvar o arquivo:

pfm

Depois de executado o comando e o arquivo package.xml criado é só executar o comando abaixo que você terá o seu pacote pronto (considerando que você esteja no mesmo diretório do arquivo package.xml):

pear package

Gerenciando pacotes no canal

Já temos o canal e os pacotes, agora é só adicionar os pacotes no canal e ser feliz, pra isso é só fazer:

pirum add DIRETORIO_DO_CANAL CAMINHO_PARA_O.tar.gz

É óbvio que você deve fazer as devidas substituições.

Caso você queira remover um pacote do seu canal é só fazer:

pirum remove DIRETORIO_DO_CANAL CAMINHO_PARA_O.tar.gz

Pronto, você tem um canal montado agora é só publicar isso no seu servidor, ou utilizar o github pages ao seu favor!
Espero que tenha ajudado, qualquer dúvida manda ae =D

Related articles

Anúncios

Tags:, , , ,

About lcobucci

Passionate PHP Developer

2 responses to “Sim, você pode ter um canal PEAR!”

  1. gabrielfs7 says :

    Muito legal o artigo, simples e objetivo! Esclareceu bastante minhas dúvidas!

    Abraços!

  2. Hermenegildo says :

    Massa, tim tim por tim tim, hein!!!! Precisamos de mais posts assim, explicando um passo a passo das coisas que ninguém sabe.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: