http://www.perlmonks.org?node_id=1081247

Thanks to minicpan, I keep a local copy of the latest versions hosted on CPAN.
Running minicpan weekly, I keep it up to date.
My .minicpanrc file:
local: /home/netbook/minicpan/miniCPAN_20140405/ remote: http://your.favorite.cpan.mirror/ also_mirror: indices/ls-lR.gz
Now, I want to carry my local minicpan keeping it on a memory stick.
Changing .minicpanrc to:
local: /media/USB16GB/miniCPAN_20140405/ remote: file://home/netbook/minicpan/miniCPAN_20140405/ also_mirror: indices/ls-lR.gz
and running minicpan again, sweeps my minicpan onto my stick.
Fine.
Now, I can install any module offline (as long as specific version dependencies are satisfied).
Just mount my stick and either, first time running cpan:
... Would you like to configure as much as possible automatically? [yes] ... sites for you? (This means connecting to the Internet) [yes] no ... Would you like to pick from the CPAN mirror list? [yes] no ... Please enter your CPAN site: [] file:///mnt/minicpan Enter another URL or ENTER to quit: [] New urllist file:///mnt/minicpan/ Autoconfiguration complete. commit: wrote '/home/userOne/.cpan/CPAN/MyConfig.pm' ...
or by modifying manually ~/.cpan/CPAN/MyConfig.pm
... 'urllist' => [q[file:///mnt/minicpan]], ...
So, it's easy installing modules on offline systems or installing apps on user (e.g. /home/user) Perls.

Have fun!

UPDATE: After discovering how to comment, my .minicpanrc looks like:
## web ---> local disk (computer A) #local: /home/netbook/minicpan/miniCPAN_20140414/ #remote: http://your.favorite.cpan.mirror/ #also_mirror: indices/ls-lR.gz ## local disk (computer A) ---> USB local: /media/USB16GB/miniCPAN_20140414/ remote: file://home/netbook/minicpan/miniCPAN_20140414/ also_mirror: indices/ls-lR.gz ## USB ---> local disk (computer B) #local: /home/dan/miniCPAN/miniCPAN_20140414/ #remote: file://media/usb/miniCPAN_20140414/ #also_mirror: indices/ls-lR.gz