<<

Ubuntu Touch Internals

Presentation by Ted Gould ted@.com @tedjgould Big Android BBQ – October 2013 An Edition

● Based on Ubuntu Core

● Provides an interface and design for phone/tablet

● Builds out of same repositories

● Provides a development area for new technologies and ideas

● Similar to Ubuntu Edition (UNE)

2 Where are we now?

The world's third most popular

20,000,000 users and counting

35,000 Windows users download Ubuntu every day

Users in 240 countries, localised in over 80 languages

3 Look and Feel

● Content focus ● Edge swipe driven ● Built for multitasking ● Same design elements as on the Desktop

4 Hardware Today

Google Nexus Devices , 7 and 10

5 The Future

6 Architecture Overview

User Session Applications

System

Kernel

7 Kernel

Ubuntu Touch vs. Ubuntu

Ubuntu Config

8 System Level

Upstart LightDM

Network DBus System Manager

Avahi oFono Android chroot

Mir System BlueZ Compositor

9 to bridge libc's

libhybris

eglibc

10 Android as a HAL

Need both to complete driver

User Space Daemon

Kernel Shim

11 System Compositing

XMir Login Mir User Session User Session Greeter Session

Mir System Compositor

Android Drivers OSS Drivers

12 User Session

DBus Session

Indicator Services Unity 8 Session Content Hub

13 Unity 8

● Shell is QML/ for layout

● Application Management layer handles App authorization and Unity Shell management

● Mir display server links in via library Unity Application Management

Mir Display Server

14 Lens and Scopes

15 Indicators

● Provide system functionality

● Descend from top panel

● Category indicators take from applications of similar type (messaging, calendar, sound, etc.)

● Allow for instant reply to messages

● Control of media devices

● Same on desktop/phone/etc.

16 HUD

● Takes Actions from application

● Provides search and enhanced parametrized actions

● Extends feature rich applications to touch environments

17 Application Confinement

AppArmor (MAC)

Application Upstart ()

Application Lifecycle

18 Ways Out

DBus (managed by AppArmor)

Application Application Interface (managed by Mir/Unity)

19 Trust Store

Application “Root Kit” would like to use your address book to help your friends find out about amazing offers from our Mafia sponsors!

Deny Allow

20 Ubuntu SDK

21 QML

22 (Phone Gap)

23 HTML5

24 Click Packaging

● Simple packaging format

● Unpacks to a specified directory

● Contains a JSON manifest

● Configures: security policy, execution path, icon, etc.

25 Ubuntu

26 What do I really need?

● Binary loadable by Kernel

● Link to libraries, the platform API library

● Being able to render to GL (probably via toolkit)

27 Application Lifecycle

28 Ubuntu Governance

● History of open and transparent governance

● Provided by Technical Board and other elected councils

● Inviting community based on shared values

● Allows for involvement of all types

● Join us!

29 Review

30 Questions please Thank you

Ted Gould [email protected] @tedjgould www.canonical.com

31