LEP/DerivativeDistributions

Not logged in - Log In / Register

Revision 38 as of 2010-11-16 17:17:15

Clear message

Derivative Distributions

As an OEM provider
I want to make a customized version of Ubuntu
so that I can ship the OS best suited to my hardware

As a Linaro partner
I want to create a new distribution/archive in the hosting software in 3 or 4 clicks
so that this does not require deploying a new instance for each distribution.

As a Linaro partner
I want this new distribution visible only to a certain set of people, and only a subset of that group can upload
so that it's easy to see who is in each of those groups on a single page, at most 1 click from the overview page of the distribution. It is also simple to modify each of the groups, with at most 3 clicks required to add or remove someone from one of the groups.

As Meg who works for a partner enabling pre-release hardware
I want to upload modified packages to an archive for a hardware project
so that others who are working on the project can then build on top of this work.

As Lou, the lead developer on the project
I want to go to a web page and see the current state of the archive
so that I am able to remove some obsolete packages. This can be done from a single page, and is at most three clicks to remove a package. Bulk operation should be possible.

Rationale

We are doing this so it's easier for Linaro partners and Canonical's OEM team to build custom distributions.

This brings Launchpad's famous usability and feature set to more people who want to use it but currently have to use 3rd party products to do this.

Stakeholders

Constraints

Nice to have

Workflows

Success

How will we know when we are done?

Bugs are at: Bugs for this LEP

From https://wiki.ubuntu.com/Specs/M/ARMArchiveBranching: There will be a number of milestone test cases that we have:

How will we measure how well we have done?

Mockups

Creating a new derived distroseries

new-derivied-distroseries-mockup.png

Questions

  • Should we use checkboxes? I personally think that we should consider checkboxes for the architectures... even if there are say 15 different architectures, they can be adequately grouped using fieldsets (eg. one for all arm arches) where appropriate. This would enable people to know what they are selecting from at a glance. My main concerns with a js picker (like the tags one) is that (I imagine) users need to know some letters of the arch to search for. -- michael.nelson 2010-08-17 07:08:27

New portlet for the distroseries page

derived-distros-portlet.png

Questions for the derived distroseries portlet

  • Be the first to add one.

Showing packages differences

Derived series differences

derived-series-diffs_uiround2.png

Questions for Derived series differences

Derived series missing packages

derived-series-missing-packages_2.png

Questions for Derived series missing packages

Derived series unique packages

derived-series-unique-packages_2.png

Questions for Derived series unique packages

User testing

Round 1

Took place as remote audio calls on July 28th and August 2nd 2010, with:

  • James Westby
  • Mathias Gug
  • Didier Roche.

Transcripts and audio
Recommendations

Thoughts?

  • Check over the Ubuntu owner / bug supervisor etc model and see if it's relevant to non-standard projects
  • Look up past literature on this subject
  • What Ubuntu-specific scripts are we running against Launchpad?
    • XXX - how would you find out?
  • Derivative distributions should be first class distributions.
  • Configurable, entirely flexible, powerful policies about behaviors are key.

I see three main "features" here:

  1. Creating distributions that can be uploaded to that will then build & publish packages.

  2. Synchronizing distributions and the associated UI & new controls.

  3. Creating derived distribution series.

There's also a bunch of associated stuff that must be considered:

  • merging between branches that are associated via a derived distribution link
  • searching for bugs etc. upstream, downstream and in "sibling" distributions

Old mockups

Creating a new derived distroseries: new-derivied-distroseries-mockup.png

New portlet for the distroseries page: derived-portlet-mockup.png

Showing packages differences: derived-series-diffs.png derived-series-missing-packages.png derived-series-unique-packages.png