Merge lp://staging/~achiang/ubuntu-seeds/ubuntu-touch.utopic into lp://staging/~ubuntu-core-dev/ubuntu-seeds/ubuntu-touch.utopic
Status: | Merged |
---|---|
Merged at revision: | 219 |
Proposed branch: | lp://staging/~achiang/ubuntu-seeds/ubuntu-touch.utopic |
Merge into: | lp://staging/~ubuntu-core-dev/ubuntu-seeds/ubuntu-touch.utopic |
Diff against target: |
536 lines (+179/-233) 5 files modified
STRUCTURE (+4/-2) desktop (+2/-90) touch (+2/-141) touch-android (+44/-0) touch-core (+127/-0) |
To merge this branch: | bzr merge lp://staging/~achiang/ubuntu-seeds/ubuntu-touch.utopic |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Ubuntu Core Development Team | Pending | ||
Review via email: mp+224738@code.staging.launchpad.net |
Description of the change
Factor out core and android packages
Take first step in trying to define a common core across future Ubuntu
devices by defining two new seeds and metapackages:
- ubuntu-touch-core
- ubuntu-
And make existing ubuntu-desktop-next and ubuntu-touch depend on them
as needed.
We need separate 'core' and 'android' seeds because 'touch' can run on
both armhf and x86, and therefore cannot make any architecture assumptions.
At the same time, we do not want to pull android/hybris related packages
into 'desktop-next'. Hence, the above split.
###
Note: I'm hoping to get a careful review of the STRUCTURE file to ensure I defined the two new seeds correctly. I am never entirely sure how the inheritance of the STRUCTURE file works. Since touch inherits from 'core' and 'android', and that desktop inherits from 'core', I would have expected the change in the metapackage to be smaller.
I also did not expect that I would have to manually add ubuntu-touch-core and ubuntu-
But I think germinate tries to be smart about overlapping packages or something, and that is why the debdiff is huge:
http://
In any case, feedback is appreciated.
Thanks.
[I can't speak for the package-level details; this review is just
regarding the general seed structure.]
On Fri, Jun 27, 2014 at 01:01:21AM -0000, Alex Chiang wrote: touch-android as explicit Depends in
> I also did not expect that I would have to manually add
> ubuntu-touch-core and ubuntu-
> debian/control...
Historically, we intentionally haven't made the metapackages depend on
each other, because it makes it excessively painful when you want to
vary from (say) ubuntu-standard but you're quite happy with the contents
of ubuntu-desktop. We usually deal with ensuring that we have all the
right metapackages in livecd-rootfs or similar instead.
However, in the particular case of touch, it's probably OK to do this
using explicit Depends.
> But I think germinate tries to be smart about overlapping packages or something, and that is why the debdiff is huge: pastebin. ubuntu. com/7708769/
>
> http://
This all seems as expected. If you have packages in an inner seed (or expansion) , then they don't also need to show up in the
its dependency-
expansion of an outer seed. That's the whole point of seed inheritance.
> In any case, feedback is appreciated.
Please let's not have a seed called "core", anywhere. Vast confusion
with the existing core package set will result. Call it "touch-core",
perhaps. Ditto android -> touch-android. You're explicitly specifying
the task and metapackage names, so changing the seed names will be
harmless.
> -touch: minimal sdk-libs
> -desktop: minimal sdk-libs
> +android: minimal sdk-libs
> +core: minimal sdk-libs
> +touch: minimal sdk-libs android core
> +desktop: minimal sdk-libs core
There is no need to repeat the transitive inheritance, so this is
sufficient:
touch: touch-android touch-core
desktop: touch-core
Is it possible that touch-android should inherit from touch-core? If
you're never going to use touch-android without touch-core, then that
would save a lot of duplication of entries in Task fields.
> +Task-Per- Derivative: 1 Description: This task provides the Android-to-Ubuntu bridge touch-android touch-android touch-android
> +Task-Section: user
> +Task-Description: Ubuntu touch android
> +Task-Extended-
> +Task-Key: ubuntu-
> +Task-Name: ubuntu-
> +Task-Metapackage: ubuntu-
I'm not entirely sure why we bother to create a task for the current
touch seed at all; as far as I can see it isn't used, so it's just bloat
in the Packages file for no reason. However, maybe I've missed
something, so it's probably OK to add tasks for these. I might go round
and clean this up later.