quarta-feira, 3 de fevereiro de 2010

Criar pacotes para Slackware .tgz ou .txz

          Introdução

          O Slackware é uma das distros que mais preserva a filosofia KISS (Keep It Simple Stupid/Mantenha Simples, Estúpido!), por isso muita gente diz que é uma das distros mais difíceis de-se aprender, DISCORDO PLENA-MENTE disso, pois o Windows seduziu os usuários domésticos com suas facilidades , porem, limitações, mais não estou aqui para discutir sobre isso, o Slackware ao contrario do Debian, Ubuntu e Red Hat, não possui um gerenciador de pacotes que resolva dependências, forçando o usuário cada vez mais compilar os seus próprios pacotes e procurar por suas dependências. Na minha humilde opinião é nas adversidades que descobrimos nossa potencialidade, e no mundo Linux tudo é aprendizado, abaixo segue uma maneira de se criar pacotes pré-compilados.

          Mão na massa!
 
          Como exemplo irei usar o pacote do squid, vou usar o squid-3.0STABLE22, para frisar e antes de começar temos que seguir um padrão para construção do pacote a sua nomenclatura deve seguir o padrão abaixo: [PACOTE]-[VERSÃO]-[ARQUITETURA]-[CONSTRUÇÃO].tgz.
          Os pacotes que fiz utilizavam do trio classico de comandos ./configure, make e make install.
          Primeiro vamos executar o ./configure com as opções desejadas, não abordarei a instalação completa e configuração do squid, para mais detalhes do ./configure use ./configure --help.

          #  ./configure \
           --exec_prefix=/usr \
           --localstatedir=/var \
           --sysconfdir=/etc/squid \
           --enable-poll \
           --enable-snmp \
           --enable-removal-policies=heap,lru \
           --enable-storeio=aufs,coss,diskd,null,ufs \
           --enable-ssl \
           --enable-delay-pools \
           --enable-linux-netfilter \
           --enable-useragent-log \
           --enable-referer-log \
           --disable-dependency-tracking \
           --enable-cachemgr-hostname=localhost \
           --disable-ident-lookups \
           --enable-truncate

          Feito isso agora vamos ao proximo passo, que é o make.
       
          # make
       
          Não apresentando nenhum erro siga em frente, porem antes de dar o seguinte comando crie um diretorio dentro do /tmp.

          # mkdir /tmp/squid

          Agora você pode dar o comando make install, porem da seguinte maneira:

          # make install DESTDIR=/tmp/squid

          Feito isso agora entre no /tmp/squid e de o seguinte comando:

          # makepkg ../squid-3.0STABLE22-x86_64_B1.tgz

          O comando acima irá finalizar e criar o pacote dentro de /tmp, eu consegui fazendo dessa maneira, sem colocar o ../ antes do nome, ele ira perguntar sobre permissões de enter em tudo. Se não ocorrer nenhum erro o seu pacote está pronto, esse artigo utilizou como base o seguinte:
           Local do Source: /usr/src
         Local de destino da pré- instalação: /tmp/squid

         É só seguir o passo a passo que não tem erro.

         Até a próxima, que a força esteja conosco!

Nenhum comentário: