thaljef / Pinto

Curate your own repository of Perl modules
https://metacpan.org/module/Pinto::Manual
66 stars 49 forks source link

Missing CGI module in install stack #181

Closed Deracination closed 9 years ago

Deracination commented 9 years ago

The pinto install stack https://stratopan.com/thaljef/OpenSource/pinto-release needs CGI.

Install onto a minimal centos 6 fails unless CGI is added first via yum or cpan.

This is tested installing on vagrant box pyranja/centos-6

Installing pinto into /home/chris/opt/local/pinto
! Installing the dependencies failed: Module 'CGI' is not installed
! Bailing out the installation for UNIVERSAL-isa-1.20120726.
! Installing the dependencies failed: Module 'CGI' is not installed, Module 'UNIVERSAL::isa' is not installed
! Bailing out the installation for Test-MockObject-1.20120301.
! Installing the dependencies failed: Module 'Test::MockObject' is not installed
! Bailing out the installation for Dist-Metadata-0.925.
! Installing the dependencies failed: Module 'Dist::Metadata' is not installed
! Bailing out the installation for Pinto-0.09996.
yum install -y perl-CGI
sh install.sh

Installing pinto into /home/chris/opt/local/pinto
Successfully installed UNIVERSAL-isa-1.20120726
Successfully installed Test-MockObject-1.20120301
Successfully installed Dist-Metadata-0.925
Successfully installed Pinto-0.09996
4 distributions installed
pinto has been installed at /home/chris/opt/local/pinto.
thaljef commented 9 years ago

CGI has been a core Perl module since 5.004 (and until 5.21). I guess it is possible that CentOS has removed CGI from their Perl builds. Can you confirm that for me?

I don't mind adding CGI to the repo. I just want make sure I understand why first.

Deracination commented 9 years ago

CGI is installed as a separate yum module on CentOS 6 (perl-CGI module for Perl 5.10.1) and isn't installed by default in the minimal OS install. A minimal install excludes a number of core modules (Sys::Syslog and Archive::Tar are also missing). I can work around the issue easily, but if CGI is in the stack then it will be frictionless install for anyone just trying to pick up pinto and experiment with it, even on systems with a less-than-adequate Perl.

tartansandal commented 9 years ago

If you install the perl-core meta package it will bring your system Perl more or less in line with the distribution -- you probably want this if you are building arbitrary CPAN packages. Unfortunately they install to vendor prefixes which causes some problems with cpanm and its self-contained mode. There is a patch on the current development branch that addresses this. Not sure when this will be released though.

Hope this helps.

Deracination commented 9 years ago

Thank you - that is indeed an excellent solution for most cases and completely solves the problem on the centos6 minimal install. I only reported this issue so that CGI might be included and so anyone trialling pinto on a minimal VM will have it 'Just Work', so I hope the module might still be added to the install stack.

thaljef commented 9 years ago

A version of CGI has been added to the stack.