Como obter a versão original da biblioteca / pacote da versão do pacote rpm?

1

Eu uso o Centos 7 e preciso saber qual é a minha versão do Xdmx. rpm -qa e yum list installed retornam a versão do pacote rpm que, na minha opinião, é diferente da versão original do Xdmx.

$yum list installed | grep Xdmx
xorg-x11-server-Xdmx.x86_64            1.15.0-7.el7                    @base 


$rpm -qa | grep Xdmx
xorg-x11-server-Xdmx-1.15.0-7.el7.x86_64

1.15.0-7.el7 é uma versão do pacote rpm. Como posso obter a versão do Xdmx? Eu li o manual do comando Xdmx e não consigo encontrar uma maneira de verificar o Xdmx version.

Não tenho certeza se entendi corretamente a criação do pacote rpm, então gostaria de esclarecê-lo. Xdmx é apenas um exemplo e eu gostaria de agora regra geral. Xorg é um autor do Xdmx. Quando os programadores do Xorg escrevem alguma biblioteca, eles não se importam com a distribuição do linux que funcionará. O código da biblioteca é universal e pode ser compilado e lançado em qualquer distribuição do Linux se houver dependências necessárias. Mas a maioria dos usuários não quer perder tempo e não quer instalar a biblioteca do código-fonte, eles preferem pacotes compilados. O pacote RPM contém informações sobre dependências, o que permite baixar e instalar automaticamente as dependências necessárias para a distribuição do Linux. Eu não sei se existem algumas outras diferenças em pacotes rpm destinados a diferentes distribuições linux. Vamos supor que o Fedora e o Centos tenham lançado pacotes rpm para o Xdmx 1.0. Existe alguma diferença entre o pacote Fedora e Centos Xdmx rpm, exceto as diferenças nas dependências? Talvez o processo de compilação para o Fedora dê outro resultado que a compilação para o Centos? Talvez os provedores de distribuição Linux forneçam algumas mudanças personalizadas na biblioteca Xdmx? Se as dependências funcionam corretamente no Centos e no Fedora, é possível que o Xdmx 1.0 funcione corretamente no fedora e não funcione corretamente no Centos?

    
por Mariusz 16.10.2014 / 10:09

1 resposta

1

O conteúdo exato de um pacote rpm depende inteiramente dos mantenedores.

Um rpm pode conter patches, arquivos de configuração e documentos que a fonte original não possui.

Para ter uma idéia exata do que está em um RPM, você deve procurar o SRPM (source rpm) correspondente ao pacote e descompactá-lo com rpm2cpio <rpmname.rpm> | cpio -idmv

O arquivo .spec contém as instruções exatas para criar o pacote, referências ao código-fonte original e a todos os arquivos envolvidos.

Para entender melhor isso, eu aconselho www.rpm.org/max-rpm/

É um guia totalmente detalhado para construção de rpm, e é minha referência de escolha para criar rpms.

Para responder a outras perguntas: é muito provável que um Fedora RPM não funcione no CentOS; principalmente porque o Centos usa o initd e o Fedora systemd (não se aplica à maioria das bibliotecas).

Você deve manter o rpms dos repositórios (o epel e o rpmforge darão a maior parte do que você pode precisar) e as instalações do código-fonte; Escolha e mistura de rpms baixados através de http são uma má ideia, uma política ruim para ter e uma grande fonte de problemas.

    
por 16.10.2014 / 10:40