I am trying to write an Juju formula for App::Alice, a web based IRC client.
According to the the installation instructions I execute the following commands to snag Alice and all of it's dependencies from CPAN:
curl -L http://xrl.us/cpanm | perl - --sudo App::cpanminus cpanm --sudo --installdeps App::Alice
I wrote the formula to do this so when it launches an EC2 instance it installs the entire thing, here's my install hook:
#!/bin/bash DEBIAN_FRONTEND=noninteractive sudo apt-get -y install build-essential libnet-ssleay-perl set -eux # -x for verbose logging to juj debug-log curl -L http://xrl.us/cpanm | perl - --sudo App::cpanminus cpanm --sudo --installdeps App::Alice
The problem is that it took about 10 minutes on an m1.small to snag and build everything from CPAN. This is too long to wait, especially if I'm going to pay for 10 minutes of computing time every time I want to run Alice! So I was thinking if I could install the CPAN modules that already exist as packages and add it to the apt-get line that this would save a bunch of time.
Right away I got an error when using Alice that it needed SSL, so I added the
libnet-ssleay-perl package to the right line.
My problem is that I don't want to run the install and manually determine which modules it needs, search for it in the archive, and then add it.
Is there a tool or method that will just enable me to figure out which modules Alice needs that are packaged so I can install those from the archive or do I need to go search for each one?