• Launchpad Entry: https://blueprints.launchpad.net/linaro-graphics-wg/+spec/multimedia-linaro-seeds-1105-for-graphics

  • Created: 02/11/10

  • Contributors:

  • Head: linaro-graphical-engineering and linaro-graphical-engineering-demo

  • Seed: lp:~tom-gall/linaro-seeds/linaro.natty

  • Image Config: put bzr branch here

  • Summary: There is a need for installable images by the Linaro Graphics Work Group. These images should aid in development work as well as with demos.

  • Owner: Tom Gall

  • Downloads:

    Type

    Download URL

    Latest Daily

    pur URL here

    Natty Alpha 1

    put URL here

    Natty Alpha 2

    put URL here

    Natty Alpha 3

    put URL here

    Natty Beta

    put URL here

    Release

    put release URL here

Rationale

Save time and effort for the Graphic WG by suppling a ready installable image for development tasks and a ready installable image for the purposes of demos.

Use Case

  • Jane has some Graphical development tasks. By downloading the linaro-graphical-engineering image from the daily snapshot she receives the latest includes, development packages that her fellow team members are working on, further she is able to skip past all of the manual steps of installing compilers, headers, *-dev packages, useful development tools and so on allowing her to focus on her development tasks. Further she is able to apt-get update to the latest versions of these packages pulling from the team's PPA as packages are updated.
  • Amit wants to be able to run a series of demos that shows the latest graphical enhancements to reasonable demonstrate linaro on supported hardware. Amit downloads the linaro-graphical-engineering-demo and related hardware pack for his board. He boots the system up and is presented with a set of software that is preinstalled for him to run and show off various capabilities of his hardware. The exact demos as well as capabilities is dependent on the output of the named specs included in the design section.

Scope

This specification covers the details for the construction of seeds which will produce images for install with linaro-media-create. The images in this blueprint will be community supported.

Design

There will be two seeds created. They will be named linaro-graphical-engineering and linaro-graphical-engineering-demo. Both seeds will be considered community supported seeds. The seeds will be available via the daily snapshots.

Supported hardware will be defined by two factors. Firstly the officially supported list as identified by the linaro project for release during the natty cycle. Second it will be dependent on a list of chipsets as identified by the Graphics WG. As can be expected, enhancements may be specific to individual chipsets and will be identified as such in specifications outside of this one, however the existence of the enhancement will be documented as part of the release notes will the seeds.

linaro-graphical-engineering

For the seed named linaro-graphical-engineering, it will depend on the currently named linaro-headless image, the linaro-x11-base, and the yet to be created linaro development image. Further it will include a collection of packages for :

  • running graphical packages currently under active development (via PPA) and aiding in their development
  • graphical performance tools,
  • a wider collection of graphical infrastructure packages such as more than one window manager and related packages to enable switching back and forth as desired
  • some number of test applications for graphical development efforts
  • support for autonomous testing and reporting for tools as identified by plars

linaro-graphical-engineering-demo

For the seed named linaro-graphical-engineering-demo, it will include the currently named linaro-headless image, and linaro-x11-base. It will include a collection of package for:

  • running graphical packages currently under active development (via PPA)
  • a wider collection of graphical infrastructure packages such that more than one window manager and related packages will be present to enable switching back and forth as desired
  • able to boot and run a collection of demos to illustrate on going graphical efforts

Specification Dependencies

Package Lists

The following is a package list supplied by Jesse Barker to identify development packages that need to be included as part of the linaro-graphical-engineering* seeds. The runtime version of these packages will be included.

freeglut3-dev                        2.6.0-0ubuntu2                                    OpenGL Utility Toolkit development files
libdrm-dev                           2.4.21-1ubuntu2.1                                 Userspace interface to kernel DRM services -- development files
libgl1-mesa-dev                      7.9~git20100924-0ubuntu2                          A free implementation of the OpenGL API -- GLX development files
libglew1.5-dev                       1.5.2-0ubuntu1                                    The OpenGL Extension Wrangler - development environment
libglu1-mesa-dev                     7.9~git20100924-0ubuntu2                          The OpenGL utility library -- development files
libice-dev                           2:1.0.6-1                                         X11 Inter-Client Exchange library (development headers)
libsm-dev                            2:1.1.1-1                                         X11 Session Management library (development headers)
libx11-dev                           2:1.3.3-3ubuntu1                                  X11 client-side library (development headers)
libxau-dev                           1:1.0.6-1                                         X11 authorisation library (development headers)
libxcb1-dev                          1.6-1                                             X C Binding, development files
libxdmcp-dev                         1:1.0.3-2                                         X11 authorisation library (development headers)
libxext-dev                          2:1.1.2-1                                         X11 miscellaneous extensions library (development headers)
libxt-dev                            1:1.0.7-1                                         X11 toolkit intrinsics library (development headers)
mesa-common-dev                      7.9~git20100924-0ubuntu2                          Developer documentation for Mesa
x11proto-core-dev                    7.0.17-1                                          X11 core wire protocol and auxiliary headers
x11proto-input-dev                   2.0-2                                             X11 Input extension wire protocol
x11proto-kb-dev                      1.0.4-1                                           X11 XKB extension wire protocol
x11proto-xext-dev                    7.1.1-2                                           X11 various extension wire protocol
xtrans-dev                           1.2.5-1                                           X transport library (development files)

Meego Touch packages

Qt
==================
qt-4.7.0
qt-mobility-1.0.2

MeeGo OS Base (Optional)
==================
uxlaunch-0.56-1.15

MeeGo Touch Framework
================== 
libmeegotouch-0.20.25-7.2
meegotouch-applauncherd-0.12.1-1.17
meegotouch-applifed-0.17.0-1.16
meegotouch-compositor-0.5.7-1.2
meegotouch-controlpanel-0.8.12-5.1
meegotouch-feedback-0.10.4-2.11
meegotouch-feedbackreactionmaps-0.14.0.5-1.8
meegotouch-home-0.21.14-3.1
meegotouch-inputmethodengine-0.1.13-2.25
meegotouch-inputmethodframework-0.19.8-3.25
meegotouch-inputmethod-keyboard-0.4.8-2.13
meegotouch-systemui-0.16.6-3.1
meegotouch-theme-0.20.30-3.1

MeeGo Handset UX (Optional)
==================
meegotouch-theme-meego-0.1.3-3.1
meegotouchcp-connman-0.0.13-3.5
meegotouchcp-bluetooth-0.0.9-1.19
meegotouchcp-chat-0.1.2-1.21
meegotouchcp-telephony-0.0.5-1.17
meegotouchcp-connman-libconnman-qt-0.0.13-3.5
meego-handset-calendar-0.2-2.1
meego-handset-chat-0.2.3-1.19
meego-handset-music-0.0.16-1.6
meego-handset-photos-0.0.24-2.1
meego-handset-video-0.2.3-3.2

Window Managers

  • metacity
  • xfce - not needed
  • kde
  • enlightenment
  • meegotouch
  • unity isn't technically posible at this time
  • TBD as requested by the Graphics WG

Related infrastructure Packages

  • xinit
  • nodm as mechanism to autostart environment

Development & Perf tools

  • glmemperf

Test frameworks

  • abrek (probably part of the linaro-developer image)

Demos / Applications

  • es2gears
  • (need to talk to alf about this)
  • (demo) update ogre to latest upstream which has GLES2 support and include a game that uses this engine
  • (as a community piece of work) yofrankie ported to GLES2
  • (idea from tgall_foo) port some of the x screen savers to GLES2
  • TBD as requested by the Graphics WG

Implementation

Packages not contained in archive

  • abrek
  • uxlaunch-0.56-1.15
  • libmeegotouch-0.20.25-7.2
  • meegotouch-applauncherd-0.12.1-1.17
  • meegotouch-applifed-0.17.0-1.16
  • meegotouch-compositor-0.5.7-1.2
  • meegotouch-controlpanel-0.8.12-5.1
  • meegotouch-feedback-0.10.4-2.11
  • meegotouch-feedbackreactionmaps-0.14.0.5-1.8
  • meegotouch-home-0.21.14-3.1
  • meegotouch-inputmethodengine-0.1.13-2.25
  • meegotouch-inputmethodframework-0.19.8-3.25
  • meegotouch-inputmethod-keyboard-0.4.8-2.13
  • meegotouch-systemui-0.16.6-3.1
  • meegotouch-theme-0.20.30-3.1
  • meegotouch-theme-meego-0.1.3-3.1 (optional)
  • meegotouchcp-connman-0.0.13-3.5 (optional)
  • meegotouchcp-bluetooth-0.0.9-1.19 (optional)
  • meegotouchcp-chat-0.1.2-1.21 (optional)
  • meegotouchcp-telephony-0.0.5-1.17 (optional)
  • meegotouchcp-connman-libconnman-qt-0.0.13-3.5 (optional)
  • meego-handset-calendar-0.2-2.1 (optional)
  • meego-handset-chat-0.2.3-1.19 (optional)
  • meego-handset-music-0.0.16-1.6 (optional)
  • meego-handset-photos-0.0.24-2.1 (optional)
  • meego-handset-video-0.2.3-3.2 (optional)
  • ogre3d with gles2 rendering engine built for arm

Test Plan and Test Status

Test

Bug#

Unit Test

Alpha3

Beta

Final

ifconfig network up, route

simple ping test

sshd out

X starts

auto login as user linaro

logout relogin as user linaro

USB nominally works

SD card / other media as appropriate

serial cons

reboot

gdb

firefox

chrome

Outstanding Issues

Release Notes

  • Supported Video chipsets: PowerVR SGX540, SGX530, (Panda, Beagle, Beagle XM)

Future work

None identified beyond the Natty cycle.

Verbatim Notes from UDS Session

  • it might be useful to have a unity seed depending on the switch to compiz, OpenGLES
  • developer tools should be included in a seed with all dev packages, compilers, build essentials, automake, enough to build gles, graphical applications
    • ideally there will be a developer tool base seed that could be included
    • one concern about the need to be forward looking and keeping in sync with packages under development
    • one suggestion was that the seed(s) might be able to pull from an identified PPA(s) so daily seeds might be able to track closer to development for various toolkits
    • alf suggestioned the following seed layout x11-base + dev-base -> gfx-dev + gfx-packags

  • There should be two flavours, dev and test/demo (meant to boot, run simple demo)
  • There's a set of tools for examining performance of the gles stack allowing one to differentiate between GLES and toolkit performance,
  • spandex - python based framework for gles benchmarks by nokia
  • package selection
    • should include enough to build gles, applications and run them dev versions of mesa, x, freeglut, extention wrangler, dri experimental (for gallium)
    • meego-touch, cairo (testing backend will probably have to be downloaded because of size), cairo-perf, gtk-perf, mesa-demos (will be packaged as part of this cycle)
    • would like something lightweight and small - watch the unity space as it evolves
    • could have multiple window managers etc installed but allow for easy switching for the purposes of development
  • size constraints only a consideration for the purposes of a head (such as alip) which has a goal to fit into 64M flash
  • jammy noted that there are still soc specific headers and images in headless, need to be pulled out and put into hwpack
  • automated test images should support automated test running and result reporting in general

WorkingGroups/Middleware/Graphics/Specs/1105/LinaroSeedsForGraphicsWG (last modified 2010-12-06 16:50:20)