[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Another question re: 2.0
- Subject: Re: Another question re: 2.0
- From: "Adam Thompson" <..hidden..>
- Date: Wed, 17 Mar 2010 17:27:36 -0500
> I don't see the tarballs as going away either.
Well, no. But CPAN is also a distribution mechanism for tarballs; from
what I've seen (granted, I've never written a CPAN module) it looks like
you can either target CPAN primarily and spin off tarballs from that, or
structure your project so it's easy to wrap using the CPAN tools but treat
tarballs as primary. Either-or, it seems to be developer's choice...
especially since internally, all CPAN does is download a tarball that
conforms to certain conventions and do things to the contents that are
defined by certain conventions. Of course, you could say much the same
thing about RPMs and DEBs, which are both tarball-in-tarball formats.
> There are many cases where installing a tarball is a good way to go (we
> have them signed, for example, and I[] don't see a CPAN solution for
> that).
I don't know how it's done, but CPAN does support that. At least, it
supports basic integrity checking - as evidenced by the fact that CPAN
complains mightily if it doesn't have access to the various Hash::
modules. I believe "signing" (by hashes, not by X.509 certs or anything
like that) is accomplished out-of-band.
> There are a lot of software projects I usually install from tarball
> (PostgreSQL is one) and compile from scratch. Installing from a
> tarball usually gives you a much finer level of control over the
> installation.
As a Gentoo user, I obviously don't have a religious problem with
compiling software ;-)
But using prepackaged software (whether by CPAN, RPM, Ports tree,
whatever) frees me from dealing with the minutiae of tracking what I
deployed on which system with what options, and particularly from going
'round and rebuilding multiple systems. As long as I've only had to do a
custom deployment of any given software (SAMBA comes to mind...) for one
customer, or maybe two, I can handle it but if I have to do anything more
strenuous than "yup update; yum upgrade" or its equivalent, it's all too
easy to make mistakes and accidentally leave some important option out for
customer X, particularly when customers A-Y and Z don't want that option
but X does.
Been there, done that, shut down an entire city's infrastructure for a day
by accident...
> So I don't see this as "either/or" but rather as a way of reaching
> more users.
Regardless of how you get there, mass distribution imposes certain
features on software. Regardless of whether you planned to go there or
not, you wind up tailoring your development approach to make it easy to
deploy across the smallish number of very-common distribution channels
(e.g. Fedora & Ubuntu repositories, among others) merely to avoid drowning
in details.
In the end, reaching more users benefits (almost) everyone no matter how
it happens.
-Adam Thompson
..hidden..
(204) 291-7950