versionamento de pacotes entre distribuições [fechado]

1

O objetivo é identificar uma versão do pacote em distribuições baseadas no RPM: Fedora, CentOS, RedHat etc. Posso confiar na versão upstream para ser a mesma em todas as distribuições? Se sim, como posso recuperar (RPM ou DEB) o número da versão upstream da linha de comando?

Não é possível postar isso como um aswer - >

Essas dependências listadas em rpm -qp -requires .rpm são pacotes virtuais se as dependências automáticas forem especificadas no arquivo .spec. Esses pacotes virtuais NÃO são biblioteca, mas sim apenas nomes de pacotes virtuais (mesmo que pareçam soname).

por exemplo. no Fedora 27, isso funciona

$ rpm -q --whatprovides "libQt5Core.so.5()(64bit)"        
qt5-qtbase-5.9.2-5.fc27.x86_64   

mas isso não acontece

$ rpm -q --whatprovides libQt5Core.so.5
no package provides libQt5Core.so.5
$ rpm -q --whatprovides libQt5Core
no package provides libQt5Core
$ rpm -q --whatprovides Qt5Core
no package provides Qt5Core

Se o seu próprio .rpm agrupar as bibliotecas (ou seja, fornecer esses pacotes virtuais), o RPM não reclamará se esses pacotes virtuais não estiverem instalados no sistema, já que eles são fornecidos com o pacote.

    
por PnotNP 12.03.2018 / 05:43

1 resposta

1

Você não pode depender de (todas) distribuições Linux usando a mesma versão upstream de um pacote específico, a qualquer momento, já que cada distribuição possui seu próprio ciclo de desenvolvimento.

Embora você veja muitas semelhanças nos nomes de pacotes nas distribuições, não há garantia. Como regra geral, os nomes dos pacotes serão basicamente os mesmos em toda a distribuição e em qualquer distribuição derivada. Pense no Debian e no Ubuntu, por exemplo, ou Redhat e CentOS.

    
por 12.03.2018 / 08:42