Your SlideShare is downloading. ×
0
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
CPAN Packager
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

CPAN Packager

1,544

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,544
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. YAPC::Asia 2009 2009/09/10 CPAN::Packager ~Help to make packages from CPAN module~ dann CPAN::Packager github.com/dann dann
  • 2. About me • Dann • Creator of CPAN::Packager • HTTP::Engine(Middleware), Mouse etc • http://github.com/dann CPAN::Packager github.com/dann dann
  • 3. What is CPAN::Packager? A tool to help you make Redhat or Debian packages from perl modules on CPAN CPAN::Packager github.com/dann dann
  • 4. Motivation • It’s very time wasting to install Catalyst, Plagger... a LOT of dependencies • different module versions on each server.... • Can’t make packages because XXX module has a LOT of DEPENDENCIES... Make RPM/Deb packages and manage them with packaging system CPAN::Packager github.com/dann dann
  • 5. The problem • cpanflute2, dh-make-perl • Don’t resolve module’s dependencies • CPANPLUS::Dist::{Deb, RPM} • resolve module dependency at first level only • can’t fix incorrect module’s dependencies manually CPAN::Packager github.com/dann dann
  • 6. Packaging System requirements • Resolve module’s dependencies • Can fix incorrect module dependencies manually • fix module’s incorrect dependencies with a configuration • Can skip moduledependenciesmodule has some incorrect build if the CPAN::Packager github.com/dann dann
  • 7. Feature and How to use CPAN::Packager github.com/dann dann
  • 8. Key Features of CPAN::Packager • Resolve module dependencies automatically • Can fix module dependencies manually • Can skip incorecct module manually CPAN::Packager can automatically resolve dependencies and manually fixes module’s incorrect dependencies with a configuration CPAN::Packager github.com/dann dann
  • 9. How to use CPAN::Packager How to build a module on CPAN sudo cpan-packager --module Moose --builder RPM -- conf conf/config.yaml Which type of package configuration for manually module’s do you develop? incorrectness. How to develop multiple modules on CPAN sudo cpan-packager --modulelist modules.list --builder RPM --conf conf/config.yaml module lists CPAN::Packager github.com/dann dann
  • 10. How to write the configuration --- global: fix_module_name: Common settings - from: Template::Toolkit for all modules to: Template fix_package_depends: [] no_depends: skip_name_resolve_modules: [] modules: - module: Test::Exception Eash module’s setting to fix incorrectness of depends: the module - module: Test::Simple no_depends: - module: Test::Builder::Tester - module: HTTP::Request::AsCGI skip_build: 1 CPAN::Packager github.com/dann dann
  • 11. Demo build a HTTP::Engine RPM package CPAN::Packager github.com/dann dann
  • 12. • CPAN::Packager help you to make RPM/Deb package • Automatically resolve module dependencies • Can fix modules dependencies with a configuration • Repository • http://github.com/dann/p5-cpan-packager/tree/ master Angelos github.com/dann dann

×