Created
November 17, 2011 03:14
-
-
Save reyjrar/1372269 to your computer and use it in GitHub Desktop.
Local CPAN Mirror Setup, Simply
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#======================================= | |
# Part 1 is Setting up the Mirror Server | |
# Install CPAN::Mini | |
$ curl -L http://cpanmin.us | perl - --sudo CPAN::Mini | |
# Select a CPAN Mirror URL from http://mirrors.cpan.org/ | |
# - We'll use http://cpan.pair.com | |
# Pick a directory to mirror to, I'll use /var/www/cpan | |
# Run minicpan, for more details see: https://metacpan.org/module/minicpan | |
$ minicpan -l /var/www/cpan -r http://cpan.pair.com | |
#======================================================= | |
# Part 2 is creating a CPAN/Config.pm to use your mirror | |
# | |
# We'll assume we mirrored off of dev.example.com with | |
# a simple subdirectory called cpan. Our URL is: | |
# http://dev.example.com/cpan | |
# Now, on a CLIENT machine: | |
$ sudo cpan | |
cpan> o conf urllist "http://dev.example.com/cpan" | |
cpan> o conf prerequisites_policy "follow" | |
cpan> o conf commit | |
cpan> exit | |
# Now that client can install modules from your local mirror | |
# - Example, installing Mouse: | |
$ cpan Mouse | |
#========================== | |
# Part 3 Super Bonus Round | |
# | |
# Oh, you are a clever bastard aren't you. You want to carry the CPAN in your pocket! | |
# Well played, good sir. | |
# | |
# Insert a Flash Drive with 4GB or Greater Capacity! | |
$ minicpan -l /Volumes/SuperDuperFlashyDrive/cpan -r http://cpan.pair.com | |
# Carry your fancy Thumb Drive to your offline computer. | |
# Plug it in. | |
# It mounts to /media/SuperDuperFlashyDrive | |
# Get CRAZY! | |
$ cpan | |
cpan> o conf urllist "file:///media/SuperDuperFlashyDrive/cpan" | |
cpan> o conf commit | |
cpan> install Mouse | |
# There you have it.. cpanminus, minicpan, and a portable CPAN! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment