Sign in to PrePAN

CPAN::OfflineInstall Fetch a bunch of CPAN modules to be installed on a machine that can't reach the Internet

In Review


$ cpan-offline DBIx::Class
Downloaded DBIx-Class-offline.tar.gz

# On another system...

$ cpan-offline install DBIx-Class-offline.tar.gz
Installing DBIx::Class...

# Or, if you don't have cpan-offline:
$ tar zxf DBIx-Class-offline.tar.gz
$ cd DBIx-Class-offline
$ perl


CPAN::OfflineInstall creates bundles of CPAN modules (and all their prerequisites) that can be copied to another system to be installed.

This makes it even less likely that someone refuses to use CPAN!


Hi! Correct me if I'm wrong, but I think you are looking for minicpan?
This sounds a bit like "carton bundle". What are the main differences?
minicpan creates a CPAN mirror. I want a tarball I can distribute to clients. minicpan would require a client to set up their own CPAN.

`carton bundle` looks very much like what this would do. I might see if I can extend carton to get a complete copy (the bundle archive must depend only on core Perl, I cannot guarantee that carton is installed on the target machine). Upon further inspection, It looks like this may not work to use Carton because Carton itself has a bunch of dependencies.

This is explicitly for distributing code to people who refuse to use CPAN, with the added constraint of "box may not be connected to the Internet". I know it's a contrived situation, but people in #perl on freenode keep coming up with reasons to not use CPAN modules in their code and I want to give them one more solution to their problem (so they can stop saying "Perl should have a richer standard library like Python and Ruby").
This sounds really nice. Mind to include a download link for testing?
I don't have one yet, unfortunately, but I'll make this a priority now. I completely forgot about this thing, honestly, but now that I think about it again, this may be even more useful than I first imagined...

Please sign up to post a review.