I am a big fan of CPANPLUS and minicpan. I like the plugin structure and
power of CPANPLUS. ([Warning: shameless plug follows] I have written a simple
plugin
that allows you to see/install the prereqs for an module with commands like
cpanp /prereqs show
or cpanp /prereqs install
.) And
minicpan is great for getting work done on an airplane or when I am away from
the net.
One thing I have struggle with in the past is getting cpanp to use either my local minicpan mirror or another mirror other than my default. Editing the config file is not that hard, but it is far to permanent for what I am trying to do. So I wrote two simple scripts (basically tweaked versions of /usr/bin/cpanp) that change the mirror to my local minicpan or a mirror passed on the command line: cpanp-local and cpanp-mirror. Both could be significantly improved, documented and they should probably be combined, but they get the job done.