We want a clear process for and good documentation for contributors who want to act as a tie between Ubuntu and one or more upstream projects and take responsibility for those packages in Ubuntu.


Ubuntu has millions of users and thousands of upstreams. It's important to us that contributors who are passionate about certain packages act as a tie between Ubuntu and those upstream projects: bug triage, forwarding bugs, integrating patches, coordinating with upstream are just some of the tasks that are crucial to Ubuntu's success and quality.

We need to help those contributors come up to speed quickly and create best practices for creating those relationships.

User stories

Elizabeth is passionate about gedit. She reads the wiki document and quickly learns how to take good care of the package and get in touch with upstream. gedit at the end of the cycle is in fantastic shape and upstream knows who to talk to. A cycle later, Elizabeth gets upload rights for gedit.


We can re-use existing documentation.


To effectively act as a tie between an Upstream project and Ubuntu, you need to:

  • make use of Launchpad Bugs effectively
    • find out how we use bugs and tags,
    • how bugs are forwarded upstream,
    • where we keep more specific debugging information,
    • how debug stack traces are created.
  • know what's possible at which stage of the development cycle
    • when an SRU is acceptable, when a Backport is,
    • what to use a PPA for,
    • what syncs are, how we interact with Debian.
  • know how Ubuntu development works
    • how to get changes reviewed and uploaded when you're not an uploader yet
    • how to package a new upstream version
    • how to get a patch included
    • how to apply for upload rights
  • know about general best-practises about communication with upstream

Therefore during the Lucid cycle, we will

  • refine our documentation and create a view on existing Ubuntu development documentation that is specifically tailored to upstreams
    • create a best-practise section to discuss maintenance of packages
    • create an overview over our release cycle and how it's relevant to package maintenance
  • start an initiative inviting people to help out
    • reach out and create interest in adopting an upstream
    • ask existing "ties" between upstreams and Ubuntu for feedback
    • blog interviews with those ties
    • run IRC Tuition sessions about the topic
    • talk to Upstreams who demonstrated interest in maintaining packages in Ubuntu before

BoF agenda and discussion

General points
 - Document contacts
 - instructions on how to create a "maintenance team"
 - make sure documentation is good enough for upstreams and new contributors
 - "upstream contacts" meeting, once a month

 - Daily builds
 - mirrored branches

Ubuntu specific docs:
 - PPA Howto
 - Apply for Upload rights
 - Bug Contact
 - Packaging Guide
 - how to write an apport hook
 - SRU/backports/etc. cheatsheet
 - Release schedule for human beings
 - Sync Requests
 - Help, my upstream has a security bug

 - Keep track of important developments upstream (backport patches, etc.)
 - Keep track of what's happening in Debian and other distros
 - Inform upstream of major changes in Ubuntu
 - Forward patches upstream
 - Document debugging information (
 - Forward bugs upstream
   - make sure bugs get upstream
   - buffer upstream from deluge of Ubuntu bugs
   - encourage installation of the LP plugin on the upstream's trac/bugzilla
    - provide help installing and maintaing the plugin
 - Keep LP branch import up-to-date?
 - Keep upstream informed about release schedule
   - Ubuntu for upstream devs cheat sheet

 - clean up (Jorge, Daniel)
 - work on sru/sync/cycle/etc cheatsheet (Jorge, Daniel)
 - LP guys to figure out what upstreams want on their upstream project page (jml)
 - call for volunteers aka launch the whole thing
 - training sessions
 - recruit from upstream (hggdh, andrewsomething, james_w)
 - check again in a month, how far we got
 - send reminder (Jorge)


Specs/AdoptAnUpstream (last edited 2009-12-03 10:20:40 by i59F77634)