Proposal

Collaboration with Debian

Summary

This proposal tries to describe a way Ubuntu and Debian could collaborate in a more efficient way. This would make it more interesting for both parties to collaborate.

Rationale

There is a lot of disagreement between Debian and Ubuntu regarding the way Ubuntu "gives back" to Debian.

  • Debian developers would like Ubuntu developers to file bug reports on the Debian BTS about issues they fix in Ubuntu.
  • Ubuntu developers, especially MOTUs, are already very busy and understaffed, and can't really handle additional work.
  • Debian developers feel that Ubuntu "steals" the Debian packages by taking them and only rarely giving back.
  • Ubuntu developers feel that the bugs they submitted on the BTS are often left unanswered and ignored, or not dealt with promptly enough.

The issue of collaboration with other distributions was already raised in other proposals, namely DebianPatchFeeding and UniverseAndDebian. But those specifications were left in an early drafting state.

Scope

This proposal deals with packages which are (or might be in the future) slightly modified in Ubuntu, not those which are closer to a fork in Ubuntu. The packages which are only slightly modified most likely reside in the universe and multiverse components of Ubuntu (see UbuntuDemystification for details), but some of the packages in main can qualify too.

Some packages are largely modified in Ubuntu (think of GNOME, for example) and can't be easily fed back. The feedback process must then be handled directly by the Ubuntu developer who made the changes. Such changes mostly are in main packages, and main Ubuntu developers have been quite good at feeding patches back to Debian. Such packages are out of the scope of this proposal.

Design

The goal of this proposal is to make collaboration a win-win process for both Debian and Ubuntu. To achieve this, we ask the Debian maintainers to choose between two modes for their packages.

We also introduce a team called DCT (Debian Collaboration Team) here. Members of this team are Ubuntu Developers (or would-be developers) interested in collaborating with Debian.

Mode 1 : Passive giving back

This is what is currently in place. Debian maintainers have access to patches for their packages as soon as the modified packages get into Ubuntu; this is also available via the Debian Package Tracking System.

Ubuntu developers file bugs on the Debian BTS on a volunteer basis (when they have time, when they feel like it, and not for every issue).

Mode 2 : Feedback handled by the Debian Collaboration Team (DCT)

Debian maintainers willing to have a more fruitful collaboration with Ubuntu contact the DCT to switch to this collaboration mode for all or some of their packages. This mode includes duties for both parties.

Rights and Duties for the DCT

  • The DCT reports all valuable changes (for Debian) in the Ubuntu package to the Debian BTS, in a reasonable time (depending on the team workload and manpower).
  • The DCT has the right to refuse to monitor a package if it considers the package has been forked in Ubuntu (changes wouldn't be of interest anymore to the Debian maintainer).

Rights and Duties for the Debian maintainer

  • The Debian maintainer reacts promptly to all input by the DCT. This mean acknowledging bug reports and commenting them in days, not weeks.
  • The Debian maintainer has to upload a new package with the changes as soon as possible to keep the divergence between Debian and Ubuntu as low as possible. This means weeks, not months.
  • The Debian maintainer can refuse patches from Ubuntu. However, of course, he must make the reasons clear in the bug log.

Rights and Duties for the DCT and for Debian maintainers are of course subject to the usual rules:

  • We all are volunteers, and have lives. This sometimes creates additional delays.
  • Delays indicated above are subject to conditions (waiting for a testing transition or freeze in Debian, holidays, UpstreamVersionFreeze or FeatureFreeze in Ubuntu ...).

Mode 3: Create RFP in Debian

  • There are many packages in Ubuntu that aren't in Debian (a rough count gives me 2341), and we would like to find a non-obtrusive and easy way to feed them to Debian. We are currently working on a script that creates diffs between existing packages in Ubuntu's main+universe and Debian's main.

  • Special care should be taken to not include packages already excluded for some reason, which are specified in: http://ftp-master.debian.org/removals.txt

  • Do not send RFP for packages already been marked for inclusion: http://ftp-master.debian.org/new.html

  • Do not send RFP for packages currently been packaged: http://www.debian.org/devel/wnpp/being_packaged

How would the DCT work ?

  • By monitoring new versions of the Ubuntu packages being uploaded to Ubuntu and reviewing the changes in them.
  • By being pinged by other Ubuntu developers about specific issues. (by IRC or mail, making it as easy as possible for the Ubuntu developer. Note that pinging DCT is not mandatory for Ubuntu developers.)

Outstanding issues

Hardware/Software

"I'm a Debian maintainer, and don't want to be imposed duties by Ubuntu"

That's fine. Feel free to just ignore Ubuntu totally, or work with mode 1 : check the Ubuntu patches for your package from time to time, if you feel like it.

"Ubuntu cannot be considered ''special''. It's just another Debian derivative distribution."

If it wasn't special, it wouldn't be raised that often on debian-devel@. For many reasons (see also UbuntuDemystification), Ubuntu might be worth looking at for Debian maintainers.


CategorySpec

DCT/Proposal (last edited 2008-08-06 16:31:13 by localhost)