[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Creating Debian dependencies while using CPAN?



On Mon, Jul 24, 2000 at 10:52:50AM +0200, Christian Hammers wrote:
> Hello 
> 
> [automatically creating package files from CPAN modules on the fly]
> On Mon, Jul 24, 2000 at 10:40:04AM +0200, Dominique Dumont wrote:
> > > 	Package: libnet-niceprotocol-perl
> > > 	Dependencies: perl-5.005, ${dh_perldep_output}
> > > 	Description: CPAN installed module Net::NiceProtocol
> > > then it would scan this blib directory and from this create a 
> > > /var/lib/dpkg/info/libnet-niceprotocol-perl.files, an assumation
> > > on dependencies based on "use" and "require" lines and maybe some
> > > postinst/preinst scripts and run them.
> > 
> > "use" and "require" are often used for modules bundled with core
> > perl. So you would get a lot of requirements for perl modules that
> > will be be debian package.
> No proble, we would then have perl-5.005 with a line
> 	Provides: perl-data::dumper, perl-strict, perl-math::bigint
> Of course the nomenclature(sp?) of these dependencies would have to be
> negotiated with the dpkg maintainers but there would surely be a way.
> 
> The program that creates the Debian package files from the CPAN downloaded
> modules could of course know (due to a file in /etc provided by perl.deb)
> which packages are "CORE" and omit them in the dependency line which
> would save us some space as there are many modules in the CORE perl.
> 
> > Why not use the PREREQ_PM hash that is (or supposed to be) maintained
> > in the Makefile.PL by perl module authors to tell CPAN what are the
> > modules dependancies?
> *Are* they really maintained by the upstream authors or just a 
> "can be used but all are too lazy"? 
> Anyways this is a good idea and could be used at least in addition.
> 
> bye,
> 
>   -christian-
> 
> P.S.: Wichert, do you as dpkg maintainer ever thought about merging
>       CPAN capability into dpkg in some way (too avoid dozens of perl
>       packages)? Was there a discussion about this yet with any results? 

Pleaase, take note that all this could only be used for local packages...
All Debian package in main should have all their dependencies resolved, so
that CD only installation are possibles. I didn't see any need for making
such a feature directly in dpkg, except for local update/installation.

However, a recent thread in debian-perl (hey, it was only two weeks ago!)
talks about this issue and we get two differents solutions: a CPAN::Debian
that let dpkg know about the cpan modules, their files locations and what
they provides; and a deb-make target for perl modules that let a maintainer
create a standard skeleton for all modules, with a special cpan-update target
in the debian/rules file.

Both solutions enable you to integrate both CPAN and dpkg management system,
the first one being more easy and natural (especially for perl hackers) to
use, the second one creating ready to dupload debian package, easying the
task to maintain any debian perl packages.

Note: I was the one that proposed the second solutions, Michael Koehne
<kraehe@copyleft.de> pushing for the former. I think both solutions can be
implements and I should begin to work on the second part next week (that's
it, after this weekend) although I will appreciate any help and/or advice
since I'm neither a perl hacker nor a debian perl maintainer (but I'm debian
maintainer for more than three years now... so I'm not totally clueless ;).

> -- 
> Christian Hammers    WESTEND GmbH - Aachen und Dueren     Tel 0241/701333-0
> ch@westend.com     Internet & Security for Professionals    Fax 0241/911879
>            WESTEND ist CISCO Systems Partner - Premium Certified
> 

-- 
-------------------------------*  *-------------------------
Fabien Niñoles                /  /          fabien@tzone.org
Chevalier Servant de Sa Dame /  /   C15D FE9E BB35 F596 127F
Veneur Gris par la Clef     /  /    BF7D 8F1F DFC9 BCE0 9436
Chaton pour Debian         /  / http://www.tzone.org/~fabien
--------------------------*  *------------------------------



Reply to: