Skip to content

[doc] perlmodinstall needs to be updated #23516

@robrwo

Description

@robrwo

The perlmodinstall documentation needs to be updated. It dates from 1998. https://www.cpan.org/modules/INSTALL.html is better.

What this document should discuss:

  • It should mention that the cpan tool is part of core, with text along the lines of

     The latest version of this module (along with any dependencies) can be
    installed from CPAN <https://www.cpan.org> with the cpan tool that is
    included with Perl:
    
        cpan DZT::Sample
    

    It can also note that the tool has an interactive shell, and that there are alternative tools like App::cpanminus or App::cpm, or even CPANPLUS possibly with brief examples, e.g. that you can run

    cpanm Some-Dist-Tarball-1.234.tar.gz

    or

    cpanm https://cpan.metacpan.org/authors/id/F/FO/FOOBARBAZBO/Some-Dist-Tarball-1.234.tar.gz

  • Discuss how to install from an extracted archive.

    Briefly discuss how to extract an archive. I think too much of the current document explains how to extract an archive, but if that still seems necessary maybe reorganise it in such a way as to be easily skipped.

    You can also extract the distribution archive ("tarball") and install this module
    (along with any dependencies):
    
        cpan .
    

    It should mention how to install modules manually using build scripts Makefile.PL or Build.PL

  • It should note that the development directories for many modules that are built with Dist::Zilla do not normally have the build scripts, but can be built and installed in anger with something like

    dzil build
    dzil test
    dzil install --install-command="cpan ."
    
  • It should discuss other tools

    It should briefly discuss local::lib

    It should briefly discuss perlbrew

    It should briefly discuss Carton and similar tools.

  • It should discuss how to find support for a module, especially installation issues, e.g. looking at the README or an INSTALL document.

    1. Support channels (IRC, mailing lists, etc.)
    2. Bug trackers like RT or GitHub/GitLab/Codeberg
    3. E-mailing the author
  • There should be a note about how some modules may require external libraries to be installed

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions