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

Re: Distribution installer that defaults to Debian? Code at github!!



On Thu, Feb 17, 2011 at 2:23 PM, Joel Roth <joelz@pobox.com> wrote:
>        https://github.com/bolangi/cpanminus-debian

I get it now.  I think you'll eventually want to rename it away but
that's can be done later.

I just want to take a minute to sketch what I think the general steps
need to be:

* module name -> INDEX -> package (tarball, apt, etc)
* package -> DEPENDENCY ANALYSIS -> dependency modules (and then recurse)
* package -> INSTALLER -> done!

Different INDEX components could exist for different sources and a
program could try several in order.

DEPENDENCY ANALYSIS is very different for a "binary" package versus a
CPAN source package, with the latter case complicated by the need to
untar the package and run Makefile.PL and Build.PL and the variety of
pre-conditions for configuring, testing, etc.  I think cpanminus'
approach is "you get everything installed" whereas CPAN tries to give
you the option of installing configure/build/test dependencies
temporarily only for the duration of an install session.  If you avoid
that and stick with the approach that all dependencies need to be
installed (though checking for circularity), then life is much, much
easier.

And then the INSTALLER is easy for binary packages and only slightly
more complicated for a CPAN distribution package in that you have to
build and should test as well before installing, and for Debian, you
have to decide where you want users to install modules (e.g. whether
they need to run under sudo).

I think if you focus on having really distinct components like that,
then it's easy to stick the wrapper around them that toggles between
options.

-- David


Reply to: