
Afin de construire une image docker pour travailler sur une application Perl devant s'exécuter sur une machine Centos 6, j'ai été confronté à l'impossibilité d'installer le package perl-DBIx-Class du fait d'une dépendance manquante avec le paquet perl-MooseX-Types-JSON
.
Certes, il eût été possible d'installer le paquet via cpan, mais une autre contrainte est que la machine Centos n'a pas accès à Internet, donc pas à CPAN. Du coup, j'aurais été obligé de télécharger la distribution à la main - tout à fait faisable - mais également toutes ses dépendances, directes et indirectes.... Et là, j'ai reculé.
Précisons que perl-DBIx-Class
nécessite d'activer EPEL, mais que notre paquet fugueur, bien évidemment, n'y figure pas.
A grands coups de recherche sur Internet, j'ai fini par trouver le paquet perl-MooseX-Types-JSON
sur http://choonrpms.mirror.choon.net.
D'où la résolution suivante:
- installer epel
- installer les paquets
perl-DBI
et perl-MooseX-Types
dont on sent bien qu'ils seront des dépendances nécessaires
- installer le paquet
perl-JSON-XS
dont on s'aperçoit après une première tentative que perl-MooseX-Types-JSON
en a besoin
- télécharger le rpm ici
- installer notre rpm
- installer finalement
perl-DBIx-Class
ce qui donne:
yum install epel-release
yum install perl-DBI perl-MooseX-Types perl-JSON-XS
wget http://choonrpms.mirror.choon.net/centos/6/choonrpms/x86_64/perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm
rpm -i perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm
yum install perl-DBIx-Class
Voilà, en espérant que ça vous évitera de perdre autant de temps que moi pour surmonter cet obstacle si tant est que vous ayez besoin de vous plier aux mêmes contraintes que moi.