
Seguindo conselhos para meus outrosperguntaEu configurei meu repositório RPM local na Red Hat 8
máquina, coloquei meus pacotes privados lá e agora posso instalar, atualizar etc.
Porém, há um problema: um pacote que adicionei em meu repositório privado é na verdade uma versão modificada do pacote disponível nos repositórios oficiais do RedHat e tem o mesmo nome. Então yum search
ou yum install
retiraria o pacote do espelho oficial, não do meu. Tentei resolver isso yum --repo=my_private_repo ...
, mas também tentaria extrair todas as dependências demeu_repo_privadoem vez dos oficiais.
Qual poderia ser a maneira certa de resolver isso? Talvez a melhor opção seria renomear o pacote (aquele que modifiquei e adicionei no meu repositório), para que não entre em conflito com o oficial?
Agradeceríamos qualquer conselho!
Responder1
Substituir pacotes de EL baseos ou repositórios appstream é complicado. Problemas de dependência de pesadelo podem acontecer quando você substitui o que a distro esperava por outra coisa. Esta é uma das razões pelas quais a comunidade EL não gosta de certosrepositórios de terceiros.
Encontre um repositório que faça coisas sensatas e examine o que eles fazem com seus pacotes.SIUé um exemplo. Tudo isso precisa ser verdade para ser seguro:
A maioria dos pacotes IUS são pacotes de substituição seguros. Este é um termo que usamos para descrever pacotes com as seguintes propriedades.
- Substitui a funcionalidade de um pacote de estoque.
- Usa um nome diferente do pacote de estoque para evitar atualizações não intencionais.
- Forneça o nome do pacote de estoque para satisfazer as dependências de outros pacotes.
- Conflito com o pacote de ações.
- Não deve tornar obsoletos nenhum pacote de estoque.
Por exemplo, em vez de apenas "haproxy", você pode instalar"haproxy22". Que é um nome que apenas o IUS fornece, mas substitui o appstream:
Name: haproxy22
Provides: haproxy = %{version}-%{release}
Provides: haproxy%{?_isa} = %{version}-%{release}
Conflicts: haproxy < %{version}-%{release}
Observe vocêfazerdeseja rpm Conflito com o pacote de estoque, então dnf não irá considerá-lo.
Este esquema requer um número de lançamento de versão superior ao estoque. Considere aumentar muito o número de lançamento.
Veja tambémDiretrizes de empacotamento do Fedorapara recursos.