Especificar dependências para algo como Perl pode ser muito complexo. Por exemplo, quando o seu package-y
diz que requer perl
, significa Perl 5.x ou Perl 6.x? Precisa de uma versão secundária específica do Perl 5.x? Ou seria um antigo Perl 4.x suficiente para isso?
Aqui está a parte do Guia de Embalagem do Fedora que diz respeito ao Perl. Como você pode ver, é bastante complicado. Parece que o seu package-y
não está seguindo essas diretrizes. É destinado especificamente ao Fedora, ou é empacotado para alguma outra distribuição aleatória?
A melhor maneira de corrigi-lo sem reempacotar package-y
seria descobrir quais requisitos específicos seu package-y
tem para Perl, em seguida, criar um pacote fictício com um nome como dependencies-for-package-y.rpm
com Provides: perl
(para permitir que o pacote fictício satisfaça os requisitos de package-y
) e pelo menos Requires: perl(:VERSION) >= <minimum required Perl version for package-y>
(para fornecer as informações dos requisitos reais de package-y
para o gerenciador de pacotes).
Se o package-y
incluir módulos Perl pré-compilados, ou links para libperl.so
, o pacote fictício também deve ter a palavra-chave Requires: perl(:MODULE_COMPAT_<version number>)
apropriada. Dessa forma, se o seu Perl atual for atualizado de maneira a quebrar a compatibilidade do módulo, por exemplo, devido a um problema de segurança, seu gerenciador de pacotes informará que você também deve atualizar package-y
, removê-lo ou adiar a atualização do seu Perl, pois a atualização quebraria package-y
.
Seu atual /usr/bin/perl
é realmente fornecido por um pacote chamado perl-interpreter
. Você pode ver o Requer e fornece palavras-chave que o pacote tem em rpmfind.net.