Great idea. I was a bit nervous that the shell might mark
HOME as read-only, but it appears to work just fine:
cpan -J | egrep keep_source_where
'keep_source_where' => '/home/jpl/.cpan/sources',
HOME=/fs/perl cpan -J | egrep keep_source_where
'keep_source_where' => '/fs/perl/.cpan/sources',
So, in the end, what I had to do was
-
Install File::HomeDir from CPAN
(it's not part of the core distribution), and
-
Copy the MyConfig.pm from
/home/jpl/.cpan/CPAN to
/fs/perl/.cpan/CPAN
(and make sure all the references to my home directory
had been replaced with /fs/perl.)
There's a bit of a chicken-and-egg problem with getting started. If you use the CPAN shell to install
File::HomeDir,
then you may already have modified the config file under your home directory. It is probably prudent to back it up before doing anything, although the initialization process made a copy in
MyConfig.pm~ in my case, so I could restore the original after getting everything set up under
/fs/perl.