NAME

App::CPAN2Pkg - generating native linux packages from cpan

SYNOPSIS

$ cpan2pkg
$ cpan2pkg Module::Foo Module::Bar ...

DESCRIPTION

Don't use this module directly, refer to the cpan2pkg script instead.

App::CPAN2Pkg is the controller for the cpan2pkg application. It implements a POE session, responsible to schedule and advance module packagement.

It is spawned by the poe session responsible for the user interface.

PUBLIC PACKAGE METHODS

my $id = App::CPAN2Pkg->spawn( \%params )

This method will create a POE session responsible for coordinating the package(s) creation.

It will return the POE id of the session newly created.

You can tune the session by passing some arguments as a hash reference, where the hash keys are:

  • modules => \@list_of_modules

    A list of modules to start packaging.

PUBLIC EVENTS ACCEPTED

The following events are the module's API.

install_status( $module, $is_installed )

Sent when $module knows whether it is installed locally ($is_installed set to true) or not.

module_spawned( $module )

Sent when $module has been spawned successfully.

package( $module )

Request the application to package (if needed) the perl $module. Note that the module can be either the top-most module of a distribution or deep inside said distribution.

prereqs( $module, @prereqs )

Inform main application that $module needs some @prereqs (possibly empty).

upstream_install( $module, $success )

Sent after trying to install $module from upstream dist. Result is passed along with $success.

upstream_status( $module, $is_available )

Sent when $module knows whether it is available upstream ($is_available set to true) or not.

BUGS

Please report any bugs or feature requests to app-cpan2pkg at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=App-CPAN2Pkg. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SEE ALSO

Our git repository is located at git://repo.or.cz/app-cpan2pkg.git, and can be browsed at http://repo.or.cz/w/app-cpan2pkg.git.

You can also look for information on this module at:

AUTHOR

Jerome Quelin, <jquelin@cpan.org>

COPYRIGHT & LICENSE

Copyright (c) 2009 Jerome Quelin, all rights reserved.

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