I don't like to discourage people from pursuing their ideas just because
I don't "get" them. I've been wrong often enough. So in the early days
of the DCC I preferred to let the proponents do their thing and then see
how it all worked out in the end. Now we are pretty close to the end
So I'll answer this in more detail now. I do hope this doesn't turn into
a flamefest. This is simply my view on what will work, and what won't.
1. The Name. From the very outset I thought the "Debian Common Core
Alliance" name was going to be a problem, and it has been. The DCC folks
don't have the right to use the Debian name, and have been told that
very publicly. Their was an attempt to pretend that "DCC stands for DCC
Common Core" but that's pretty much nonsense, even DCC members continue
to refer to it as "Debian Common Core", a name that it cannot legally use.
2. The Commonness. The DCC distro doesn't use the Debian kernel, and it
modifies key pieces of the infrastructure like the linking system and
core system libraries. So it's not really Debian at heart. There is now
discussion of modifying many, many more packages, for example to use the
Ubuntu X.org packages rather than the Sarge XFree86 packages.
3. The Style. The DCC distro is really aimed at shoehorning an
LSB-compatible environment on top of Sarge. I think if LSB was a goal
for Sarge then that could have been achieved directly in Sarge, not in
this hybrid fashion. If we were to do LSB for Ubuntu, it would be done
directly rather than as a compatibility layer.
4. The Premise. The vision behind DCC, which is indeed compelling, is
that it would provide a common platform for certification, and that the
distros that make up the DCC would all ship exactly that same core. But
it strikes me that this approach has never worked in the past. In fact,
every distro ALWAYS modifies elements of the core, and with good reason.
And while we would love that not to be the case, the truth is that the
reasons to specialise outweigh the benefits of homogeneity. Much as it
may be compelling, the common core idea is ultimately flawed, because
it's not just the bits at the core that matter. An ISV that certifies an
OS is not just certifying the pieces on which it's app depends. It's
also certifying the *environment* which it will support, which includes
installer, documentation, even packaging. Screenshots, for example,
won't be useful unless they reflect all of the certified OS's, and
that's not possible in the DCC model. There have been several examples
of places where this idea has failed. United Linux is one.
Now, that said, it's great that Debian-derived commercial distros have a
forum and a mailing list on which to discuss problems they run into, and
I think the DCC project has served as a good touch point for bringing
some of these hidden issues to the fore. So I'm in no way opposed to the
DCC or its members, and in fact there are some neat places where we are
collaborating with the DCC on source code, which is where I think the
collaboration works best. The DCC kernel and Ubuntu kernel will be very
similar if not identical in future DCC releases, and I expect that
collaboration will spread to other parts of the system such as X, ACPI etc.
The essential driver of free software is collaboration to achieve common
goals. And that works best at the source code level. Inasmuch as the DCC
has promoted better collaboration between its members, it's a success.