home | help
pip(3)		       User Contributed Perl Documentation		  pip(3)

NAME
     pip - The Perl Installation Program, for scripted and third-party distribu-
     tion installation.

SYNOPSIS
       pip script.p5i
       pip script.p5z
       pip Distribution-1.23.tgz
       pip Distribution-1.23.tar.gz
       pip Distribution-1.23-MSWin32-5.8.0.par
       pip http://server/Distribution-1.23.tar.gz
       pip http://github.com/gitpan/Distribution/tarball/1.23

DESCRIPTION
     The pip ("Perl Installation Program") console application is used to in-
     stall Perl distributions in a wide variety of formats, both from CPAN and
     from external third-party locations, while supporting module dependencies
     that go across the boundary from third-party to CPAN.

     Using pip you can install CPAN modules, arbitrary tarballs from both the
     local file-system or across the internet from arbitrary URIs.

     You can use pip to ensure that specific versions of CPAN modules are in-
     stalled instead of the most current version.

     And beyond just single installations, you script script a series of these
     installations by creating a "P5I" (Perl 5 Installation) file.

     A Perl 5 Installation (P5I) file is a small script-like file that describes
     a set of distributions to install, and integrates the installation of these
     distributions with the CPAN installer.

     The primary use of P5I files are for installing proprietary or non-CPAN
     software that may still require the installation of a number of CPAN depen-
     dencies in order to function.

     P5I files are also extensible, with the first line of the file specifying
     the name of the Perl class that implements the plan.

     For the moment, the class described at the top of the P5I file must be in-
     stalled.

     The simple Module::Plan::Lite plan class is bundled with the main distribu-
     tion, and additional types can be installed if needed.

   Future Additions
     Also on the development schedule for pip is the creation and installation
     of distributions via "P5Z" files, which are tarballs containing a P5I file,
     as well as all the distribution tarballs referenced by the P5I file.

     It is also anticipated that pip will gain support for PAR binary packages
     and potentially also for ActivePerl PPM files.

USAGE
     The primary use of pip is to install from a P5I script, with the canonical
     use case as follows:

       pip directory/myplan.p5i

     This command will load the plan file directory/myplan.p5i, create the plan,
     and then execute it.

     If only a directory name is given, pip will look for a default.p5i plan in
     the directory. Thus, all of the following are equivalent

       pip directory
       pip directory/
       pip directory/default.p5i

     If no target is provided at all, then the current directory will be used.
     Thus, the following are equivalent

       pip
       pip .
       pip default.p5i
       pip ./default.p5i

   Syntax of a plan file
     Initially, the only plan is available is the Module::Plan::Lite (MPL) plan.

     A typical MPL plan will look like the following

       # myplan.p5i
       Module::Plan::Lite

       Process-0.17.tar.gz
       YAML-Tiny-0.10.tar.gz

   Direct installation of a single tarball
     With the functionality available in pip, you can find that sometimes you
     don't even want to make a file at all, you just want to install a single
     tarball.

     The "-i" option lets you pass the name of a single file and it will treat
     it as an installer for that single file. Further, if the extension of the
     tarball is .tar.gz, the -i option is implied.

     For example, the following are equivalent.

       # Installing with the -i|--install option
       > pip Process-0.17.tar.gz
       > pip -i Process-0.17.tar.gz
       > pip --install Process-0.17.tar.gz

       # Installing from the file as normal
       > pip ./default.p5i

       # myplan.p5i
       Module::Plan::Lite

       Process-0.17.tar.gz

     The "-i" option can be used with any single value supported by Mod-
     ule::Plan::Lite (see above).

     This means you can also use pip to install a distribution from any arbi-
     trary URI, including installing direct from a subversion repository.

       > pip http://svn.ali.as/cpan/release/Process-0.17.tar.gz

SUPPORT
     This module is stored in an Open Repository at the following address.

     <http://svn.ali.as/cpan/trunk/pip>

     Write access to the repository is made available automatically to any pub-
     lished CPAN author, and to most other volunteers on request.

     If you are able to submit your bug report in the form of new (failing) unit
     tests, or can apply your fix directly instead of submitting a patch, you
     are strongly encouraged to do so. The author currently maintains over 100
     modules and it may take some time to deal with non-Critical bug reports or
     patches.

     This will guarentee that your issue will be addressed in the next release
     of the module.

     If you cannot provide a direct test or fix, or don't have time to do so,
     then regular bug reports are still accepted and appreciated via the CPAN
     bug tracker.

     <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=pip>

     For other issues, for commercial enhancement and support, or to have your
     write access enabled for the repository, contact the author at the email
     address above.

AUTHORS
     Adam Kennedy <adamk@cpan.org>

SEE ALSO
     Module::Plan::Base, Module::Plan::Lite, Module::Plan

COPYRIGHT
     Copyright 2006 - 2010 Adam Kennedy.

     This program is free software; you can redistribute it and/or modify it un-
     der the same terms as Perl itself.

     The full text of the license can be found in the LICENSE file included with
     this module.

perl v5.42.2			   2010-11-29				  pip(3)

home | help