Debian

Here are a some notes related to uploading XBMC to Debian and having it synced to Ubuntu.

Uploads to Development Suites
The guide for uploading any package (such as XBMC) to Debian is the Debian New Maintainer's Guide. There is also some tips on best packaging practics, found in Chapter 6 of the Debian Developer's Reference (see http://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html).

Any package that is in Debian can be synced to Ubuntu. That process is described at https://wiki.ubuntu.com/SyncRequestProcess.

All packages are normally uploaded to either the "unstable" suite, or the "experimental" suite of Debian. Generally, whenever a new release of XBMC is done, the suite to upload these new XBMC packages is the "unstable" suite. Packages uploaded to unstable enter a period where they stay in unstable to get tested. Once this time where it's in unstable ends, the packages are migrated to the "testing" suite where it will be shipped in the next release of Debian. So long as no release critical bugs exist for the XBMC package in the Debian Bug Tracking System, the packages will be migrated to testing. If release critical bugs do exist, a new upload should be made that fixes these bugs.

NOTE that if any release critical bugs are found in the version of XBMC that has been migrated to testing, it runs the risk of getting removed from testing altogether. Thus, any release critical bugs should be handled promptly.

For other packages such as git snapshots, beta releases, and release candidates, the packages should be uploaded to the "experimental" suite. Packages in the "experimental" suite do not get migrated to any other suite (i.e. they are not migrated to unstable or testing). This suite is typically used for packages which are snapshots, beta releases, and release candidates.

Sync of packages from Debian to Ubuntu are automatically done at the beginning of any Ubuntu release cycle. At some point during the release cycle, the automatic sync is stopped, so a request has to be made to sync any new package from Debian to Ubuntu.

There are times where bugs need to be fixed for versions of XBMC packages that have migrated to testing. However, packages are never uploaded directly to the "testing" suite in Debian. Attempts to upload to testing are automatically rejected. Instead, packages need to be uploaded to unstable and the Urgency field in the debian/changelog file needs to be set appropriately to get the new packages into "testing" quicker.

Uploads to Release Suites
Packages can be uploaded to the "stable" suite in Debian, although these kind of uploads can only be for fixing security related bugs. The Debian Developer's Reference has a section describing how to handle security related bugs. For Ubuntu, the page describing security related uploads to Ubuntu is found at https://wiki.ubuntu.com/SecurityTeam/SponsorsQueue.

For other cases where an upload to stable is desired, the package should instead be uploaded to Debian Backports. The page describing how an upload to backports is found at http://backports-master.debian.org/Contribute/. For Ubuntu backports, the page describing uploads to backports for Ubuntu is found at https://wiki.ubuntu.com/UbuntuBackports.

Links

 * http://packages.qa.debian.org/x/xbmc.html
 * https://launchpad.net/ubuntu/+source/xbmc