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

cmilfo has asked for the wisdom of the Perl Monks concerning the following question:

     Oh wisest Monks, I come before you this evening seeking CPAN wisdom. I will offer a little background to my question before preceding. Recently during a local Perl Monger meeting, we discussed setting up a CPAN server to host our group modules and scripts. The idea was to gain experience creating modules and maintainable code (i.e. use MakeMaker or ModuleMaker, test suites, API design, etc.) for use in the local group before coding for and submitting to CPAN. We lovingly dubbed our idea NQCPAN (Not Quite CPAN).

     Idea in hand, I went in search of information. I searched PerlMonks, CPAN FAQ, Perl.com, Google, everywhere I could think to search. Without a clue as to where to look next, I sent an email to the CPAN folks describing the idea. The reply came quickly, referring me to CPAN::Site and Grokking the CPAN, a presentation given by Elaine Ashton at TPC 5. I read the presentation and quickly went to CPAN to get CPAN::Site. Once installed, I read every line of the CPAN::Site documentation (there is not a lot).

     Following the instructions, I set up a CPAN directory on my web server. I added an alias to apache and restarted; things were looking great. It was very exciting to see modules on the web. Next I set up my local machine to use CPAN::Site. Again, following the documentation for CPAN::Site, I modified my urllist to look to NQCPAN first. When I try to install or get modules from the NQCPAN server, I get the ever- present-when-mistyping-a-module-name error, no module found try i/module/. My first thoughts were that I set up something incorrectly. So, I recreated the site and tried again. Same problem. It then occurred to me that my CPAN index was cached and that I needed to reload it. So I tried reloading the index with reload index. The index did indeed reload, failing on my NQCPAN server as the main module list was not found, and locking in on the next server in the urllist. This was expected as normal CPAN modules should come from the real CPAN. However, the reload index did not pick up the modules from the NQCPAN server. Needless to say, I have not solved this problem. I have tried many different combinations, permissions, symbolic links, urllists, etc., all to no avail.

1. Has anyone else set up a local CPAN server (perhaps at work)?
2. If so, did you take the same approach or do something different?
3. What do the fellow Monks think of an NQCPAN for local groups to share code?

As always, Thank you very much for everything,
Casey

Replies are listed 'Best First'.
Re: Not Quite CPAN
by Mr. Muskrat (Canon) on Aug 20, 2002 at 13:26 UTC

    You didn't specify how you are attempting to get the list of modules from your NQCPAN server. So I may be way off base here but the CPAN::Site docs say:

    Then use -MCPAN::Site instead of -MCPAN

    perl -MCPAN::Site -e shell

      Sorry about that. Yes, I am using -MCPAN::Site -eshell. Using CPAN::Site is supposed to be seamless to using normal CPAN.

      When getting modules, CPAN::Site *should* look at the 01mailrc.txt.gz and 02packages.details.txt.gz in the site/ folder on the NQCPAN box. I did notice, however, when building the directory structure and running mkpackages that the 02packages.details.txt.gz is not built correctly (like that of 02packages.details.txt.gz for the normal CPAN). One of the things I tried in my many failures was to produce a 02packages.details.txt.gz file formatted like that of the normal CPAN, except listing all our packages. No bones.

      c
Re: Not Quite CPAN
by dmmiller2k (Chaplain) on Aug 21, 2002 at 02:22 UTC
    "3. What do the fellow Monks think of an NQCPAN for local groups to share code?"

    Good idea for code in development.

    dmm