Esta é uma das questões que me parece menos resolvida em Linux. Existem vários formatos desde os mais que conhecidos .rpm Redhat/Fedora, Mandrake, Suse) ou .deb (Debian, (K|X|Ed)Ubuntu) ao mais clássico .tgz (Slackware), passando pelo .tgz de código fonte do Gentoo. A principal diferença reside no facto de os pacotes por eles próprios indicarem se têm dependências (.rpm) ou não (.deb ou .tgz).

É claro que em cima de cada um destes sistemas de pacotes foram criadas ferramentas para a sua gestão. Algumas delas vieram resolver o problema da falta de tratamento das dependências, o apt-get para .deb, enquanto outras vieram tratar da automatização das tarefas de instalação e gestão de pacotes via repositórios, o yum para .rpm.

O formato com que me sinto mais à vontade é sem dúvida o .rpm, pois foi o formato com que me iniciei no mundo do Linux e com o qual tenho mais experiência. Com as recentes ferramentas criadas para a gestão dos pacotes as coisas estão mais facilitadas, como o yum, mas mesmo assim persistem alguns problemas. O yum é lento como tudo, apesar de ter melhorado bastante nesse aspecto. Os interfaces gráficos ainda são muito maus. E o problema de conflitos de pacotes similares em vários repositórios persiste e é muito difícil de resolver, e para manter repositórios conflituosos é necessário uma gestão muito cuidada.

Existe ainda o facto de um pacote .rpm quando criado para, por exemplo, o Fedora Core não poder ser instalado num Suse ou num Mandrake. Isto na minha opinião complica muito as coisas, mas a solução não se afigura nada fácil. Então instalar um pacote .deb numa distribuição .rpm nem pensar, isto se não quisermos ter problemas a longo prazo. Existem alguma ferramentas que tentam resolver este problema fazendo a conversão entre formatos, como o Alien, mas tenho algumas dúvidas em relação ao seu uso, uma vez que me parece uma conversão não unívoca e que existe informação relevante que é perdida no processo.

Mais alguns pensamentos sobre questões de packaging num post do blog do Mark Shuttleworth.

Mas é claro que toda a gente sabe que homem que é homem instala tudo a partir do código fonte e resolve as dependências todas à unha ;)