Notícia publicada por brain em março 10, 2004 09:36 AM
| TrackBack
"Recebi por e-mail, via uma lista de discussão sobre certificação LPI, um artigo muito interessante do brasileiro Alexandre de Abreu no site FedoraNEWS.org. O artigo se chama "Tudo que você deve saber sobre RPM", mas eu acho que deveria se chamar "Tudo que você deve saber sobre RPM, mas tinha medo de perguntar" ;) Pena que é em inglês..." A dica é do Luiz Antonio Cassetari Vieira Filho (luiz@altoriopreto.com.br)
RPM assim como outras formas de empacotamente é a maneira mais triste de se instalar um programa, varias distros usam .rpm (ou via apt), porém cada uma delas difere de outras. Os .rpm do mandrake nao servem no conectiva, que nao serve no fedora, que nao serve...
Mesmo outros formatos promissores nao deslancham porque cada sabor de linux difere e muito de outros.
Depois de um certo tempo, infelizmente cheguei a seguinte conclusao sobre o melhor tipo de empacotamento para servidores é:
./configure;make;make install
Será que algum dia irao resolver esses problemas de falta de padronizacao nos pacotes ?
Eu não acho que compensa ./configure && make && make install. Você perde (deixa de ter) um bocado de informações sobre o que está instalando e seu sistema adquire uma certa "entropia", uma instabilidade latente que se fará ver em atualizações futuras do programa. E não são só dependências, existem muitos outros tipos de metadados.
Você tem que entender, hamacker, que a proposta inicial de RPM era ser um formato de arquivo de pacote, só. Ele não especificava políticas de dependências, amarrações, certos detalhes de nomenclatura e coisas assim, necessárias pra "uniformização" entre as distribuições. Talvez esperassem que fosse feito depois em uníssono, mas infelizmente cada distribuição que adotou o RPM adotou políticas diferentes. Ainda, muitos recursos importantes para que essa uniformização ocorresse não estavam presentes no início (por exemplo, build requirements - talvez andreas e outros possam confirmar essa informação, pois estou falando de cabeça), o que fez com que cada distribuição arranjasse seu jeito de contornar a limitação.
Com o apt-rpm, que exige uma amarração boa entre os vários pacotes, alguns problemas foram corrigidos e uniformizados. A maioria das distribuições importantes que usa RPM tornou seu repositório de software compatível com apt (Conectiva, RedHat, Mandrake, SuSE).
Uma dica que eu posso dar pra você poder usar um RPM de uma distribuição em outra é pegar o source rpm (.src.rpm) e compilá-lo para a sua distribuição. É possível que surja a necessidade de mudar um ou outro detalhe no .spec - %makeinstall pra make install, nomes de bibliotecas e pequenas coisas assim. Mas em geral isso funciona muito bem e continua deixando a árvore de dependências de sua distribuição consistente (e.g. não vai arriscar uma atualização que você tenha que fazer).
Eu costumo fazer isso que o Patola falou para gerar rpms para o Conectiva (no meu site eu tenho um repositório não oficial dos rpms que compilo) mas, quando não consigo um .src.rpm, eu uso mesmo é o programa checkinstall:
http://asic-linux.com.mx/~izto/checkinstall/
Eu dou o ./configure; make e, em vez do make install, dou o comando checkinstall, que gera rpms, debs ou .tgz (Slack) com o conteúdo correspondente aos arquivos que seriam instalados pelo make install. Assim posso mais tarde remover o programa simplesmente removendo o pacote, além das possibilidades de consulta aos pacotes.
Recomendo a todo mundo.
Po ai! Esse lance de Checkinstall é legal. Onde eu poderia achar mais informações sobre isso???
Abraços
O checkinstall saiu na primeira edição da minha "coluna software", no tempo em que ela ainda saía na Revista do Linux. Deve ter sido lá por 1999... Veja aqui: http://www.revistadolinux.com.br/ed/017/assinantes/augusto.php3
GOSTARIA DE SABER SOBRE PROPAGANDA DA MINHA EMPRESA.
AGUARDO RETORNO
RAQUEL ÁVILA - 31-30825976
Comentários desativados: Esta discussão é antiga e foi arquivada, não é mais possível enviar comentários adicionais.