CPAN::Packager - CPAN::Packager is yet another packager

What is CPAN::Packager

CPAN::Packager is a tool to help you make packages from perl modules on CPAN. This makes it so easy to make a perl module into a Redhat/Debian package

INSTALLATION

CPAN::Packager installation is straightforward. If your CPAN shell is set up, you should just be able to do

% cpan CPAN::Packager

Download it, unpack it, then build it as per the usual:

% perl Makefile.PL
% make && make test

Then install it:

% make install

Patches

CPAN::Packager uses cpanflute2 to build rpm. but it has the bug which cpanflute2 doesnt build the module which use Build.PL. Please apply the patch below if you need to build the module which uses Build.PL

github.com/dann/p5-cpan-packager/master
  patches/cpanflute2_module_build.patch

How to use

case1: build a module

sudo cpan-packager --module Test::Exception --builder Deb --conf conf/config.yaml 

case2: build multiple modules at a time

sudo cpan-packager --modulelist modulelist.txt --builder RPM --conf conf/config.yaml 

options --module module name (required option) --builder Deb or RPM (optional. default is Deb) --conf configuration file path (required) --always-build always build cpan modules if module is aready installed (optional) --modulelist File containing a list of modules that should be built. (optional)

RPM/Deb Packages are generated at /tmp/cpanpackager/{deb or rpm}

config.yaml is located at github repo.

See http://github.com/dann/cpan-packager/tree/master

Please see the configuration schema if you want to write config your self. You can see schema like below.

perldoc CPAN::Packager::Config::Schema

Configure CPAN mirrors

Set cpan mirror uri in your config. CPAN::Packager downloads modules from cpan_mirrors

---
global:
  cpan_mirrors:
    - file:///home/dann/minicpan
    - http://ftp.funet.fi/pub/languages/perl/CPAN/

Use cpan-packager with minicpan (Optional)

You can use minicpan with CPAN::Packager. At first, you mirror CPAN modules with minicpan.

minicpan -r http://ftp.funet.fi/pub/languages/perl/CPAN/ -l ~/minicpan

Set cpan mirrors uri in your config if you want to use minicpan. after that you just use cpan-packager ;)

---
global:
  cpan_mirrors:
    - file:///home/dann/minicpan

Author

Takatoshi Kitano techmemo@gmail.com

special thanks: walf443