GNOME Development on Tizen
Hur, Joone
May 24, 2013
Intel Open Source Technology Center
Are you a GNOME hacker?WebKitGtk+ Hackfest 2012
Are you a GNOME user?
We are GNOME
http://www.flickr.com/photos/kitty-kat/6049220331By KittyKat3756
Desktop Summit 2010
We love GNOME
We are building a true open source desktop environment!
GNOME 3.8http://www.gnome.org/news/2013/03/gnome-3-8-released/
Fedora
Ubuntu GNOME
OpenSUSE
Platform independent
Linux, Windows, and OSX
Language independent
C, C++, Python, C#, JS
GIMPhttp://www.gimp.org/screenshots/
GNOME Mobile?
It was announced at the Embedded Linux Conference in Santa Clara, California on April 19, 2007
Yes, we had GNOME Mobile
First release of GNOME MobileGNOME 2.24 is the first release of the GNOME Mobile development platform.
Linux-based mobile device platforms
Maemo, ACCESS Linux Platform,
LiMo reference platform, Ubuntu Mobile,
Moblin, Poky.
https://help.gnome.org/misc/release-notes/2.24/
https://help.gnome.org/misc/release-notes/2.24/
GNOME Mobile
MaemoGtk+, X-Window, DebianGStreamer
https://en.wikipedia.org/wiki/File:Maemo5-screenshot.png
https://help.gnome.org/misc/release-notes/2.24/
N770N800, N810, N900, N9
http://en.wikipedia.org/wiki/File:N900_xterm.JPG
MoblinClutter, Gtk+, RPMDesigned for Netbook
http://en.wikipedia.org/wiki/File:Moblin_Linux_2.1.png
LiMoGtk+, DebianX-Window
2009zl
MeeGo (Maemo + Moblin)QtRPMhttp://www.noknok.tv/2010/07/01/nokia-n9-meego-os-smartphone-to-look-like-this/
At the Mobile World Congress in February 2010, it was announced that the Moblin project would be merging with Maemo to create the MeeGo mobile software platform.
Nokia left behind us
No one talked about Mobile in GNOMEhttps://mail.gnome.org/archives/mobile-devel-list/
Unfortunately, there is no Success story with GNOME in Mobile.What's wrong with GNOME? Is GNOME is slow in mobile device?Were there any missing features for mobile?
Android vs. iOShttp://techland.time.com/2013/04/16/ios-vs-android/
Anyway, the mobile market is divided into Android and iOS. WebOS, Windows Mobile was disappeared. Windows phone & Blackberry are struggling to survive.
3rd Mobile PlatformTizen
Firefox OS
Ubuntu Touch
http://asia.cnet.com/the-emerging-smartphone-os-battle-firefox-vs-tizen-vs-ubuntu-62220705.htm
Why GNOME folks need to take a look at Tizen?
They say HTML5!!
But, we have a lot of GNOME applications
Running my favorite GNOME applications on Mobile?
On Android?
Only Linux KernelNo X-Window, No Cairo & Pango, ...
Looking into Tizen
Tizen Architecture
http://www.slideshare.net/badaindonesia/tizen-overview-and-architecture-seokjae-jeong-samsung-korea-linux-forum-2012
When we take a look at Tizen Architecture, you can find many GNOME & FreeDesktop components such as D-Bus,m glibc, Cairo, X11, Fontconfig, Freetype2, GStreamer, Geoclue, libSoup, Bluez, and SQLite
Tizen vs. Maemo
Glib, Cairo, Pango, Gstreamer, BlueZ, D-Bus, X-Window
OSP,EFL, RPM
HildonGtk+, Atk, Gdk-pixbuf, Debian
There a lot of common components between Tizen and Maemo.
X-Window, GStreamer, Glib, GObject, libSoup, BlueZ,
Tizen is a GNOME?
What is GNOME development?
GNOME developmentDevelop an application based on glib/gobject
The glib main loop is running inside Tizen apps.
Tizen?Tizen = MeeGo + LiMo
Standard based, Cross, Open Source platform
Resides in the Linux Foundation
Tizen 2.1
HTML5 and OSP(native) applications
Tizen Members
https://www.tizenassociation.org/members/
Intel and Samsung are leading the project.
Intel is no 1 Linux kernel contributor. Samsung is no 7 Linux kernel contributor. Two companies are very active to open source development
Therefore, Its okay to believe both companies. We continue to open Tizen more under Linxu foundation
Tizen Profiles
https://source.tizen.org/compliance
A New Hope for GNOME Mobile
Running GNOME on Tizen
Tizen DevelopmentWeb Application development
Native Application development
Platform development
Create a Web application project
Create a Tizen native project
Tizen Platform Developmentgit, obs, gbs, gerrit, chroot, rpm, Tizen SDK
Installing Tizen SDK https://developer.tizen.org/downloads/tizen-sdk
Create an account in Tizen Go to http://tizen.org
http://seoz.egloos.com/3895488
Using Gerrit to access source code
Gerrit is a Web-based code review system
https://review.tizen.org/gerrit/
Create an SSH key with the Linux shell by specifying your full name and email address
Add the SSH Key to Gerrit
http://seoz.egloos.com/3895489Create an SSH key with the Linux shell by specifying your full name and email address
The SSH key is created in the ~/.ssh/id_rsa.pub file.
http://seoz.egloos.com/3895489
Paste the SSH public key into "Add SSH Public Key" text box.
Configure GITGit is a revision control and source code management tool
$ apt-get install git
Configure GIT
$ git config --global user.name "your name"
$ git config --global user.email "your email"
Git is a revision control and source code management tool that enables you to download and manage Tizen platform development source codes. You can also submit your modified source codes to Git.To enable the Tizen platform development, you must install Git:$ apt-get install git
Download Gtk+ and dependent libraries source codeTizen 2.0 includes
glib 2.32.3
pango 1.26.0
cairo 1.12
Need atk, gdk-pixbuf, hicolor-icon-theme to compile Gtk+ 3.1.8
atk 1.30
gdk-pixbuf-2.0 2.22.0
hicolor-icon-theme-0.12
http://ftp.gnome.org/pub/gnome/sources/
Building with gbsGit Build System (GBS) is a custom command line tool used to support Tizen package development
$ mkdir atk && cd atk && git init$ gbs import ../atk-1.30.0.tar.gz$ git checkout upstreamhttps://source.tizen.org/documentation/reference/git-build-system/upstream-package
Write a RPM spec file$ pwd~/git/atk/ $ mkdir packaging$ cd packaging$ vi atk.spec http://en.opensuse.org/openSUSE:Specfile_guidelines
Name: atk Summary: Accessibility ToolkitVersion: 1.30.0License: LGPL...URL: http://www.gtk.orgPatch0: replace_G_CONST_RETURN_with_const.patch Requires: glib2 >= 2.0.0BuildRequires: pkgconfig(glib-2.0)
%package devel..%build..%install...%files...
Building using gbs$ gbs build -A i586
$ cd ~/GBS-ROOT/local/scratch.i586.0/home/abuild/rpmbuild/RPMS/i586/
atk-1.30.0-1.i586.rpm
atk-1.30.0-5.1.armv7l.rpm
atk-debuginfo-1.30.0-1.i586.rpm
atk-debugsource-1.30.0-1.i586.rpm
atk-devel-1.30.0-1.i586.rpm
atk-devel-1.30.0-5.1.armv7l.rpm
gdk-pixbuf2-2.22.0-1.i586.rpm
gdk-pixbuf2-2.22.0-4.1.armv7l.rpm
gdk-pixbuf2-debuginfo-2.22.0-1.i586.rpm
gdk-pixbuf2-debugsource-2.22.0-1.i586.rpm
gdk-pixbuf2-devel-2.22.0-1.i586.rpm
gdk-pixbuf2-devel-2.22.0-4.1.armv7l.rpm
gtk3-3.1.8-16.2.armv7l.rpm
gtk3-3.1.8-1.i586.rpm
gtk3-debuginfo-3.1.8-1.i586.rpm
gtk3-debugsource-3.1.8-1.i586.rpm
gtk3-devel-3.1.8-16.2.armv7l.rpm
gtk3-devel-3.1.8-1.i586.rpm
gtk3-devel-docs-3.1.8-1.i586.rpm
gtk3-immodules-3.1.8-1.i586.rpm
gtk3-immodule-xim-3.1.8-1.i586.rpm
hicolor-icon-theme-0.12-11.1.noarch.rpm
Installing rpm packages$ sdb push ~/tizen/package/*.rpm /home
Open a shell$ cd /home $ rpm -ivh --force *.rpm
Run gtk-demo!
Your first Gtk+ application for Tizen
Image Viewer
https://developer.gnome.org/gnome-devel-demos/stable/image-viewer.c.html
Create a project with Anjuta
joone@joone-webkit:~/image-viewer$ ls -ltotal 64-rw-rw-r-- 1 joone joone 0 May 19 00:41 AUTHORS-rwxrwxr-x 1 joone joone 4435 May 19 00:41 autogen.sh-rw-rw-r-- 1 joone joone 2 May 19 00:41 ChangeLog-rw-rw-r-- 1 joone joone 334 May 19 00:41 configure.ac-rw-rw-r-- 1 joone joone 35148 May 19 00:41 COPYING-rw-rw-r-- 1 joone joone 1689 May 19 00:41 image_viewer.anjuta-rw-rw-r-- 1 joone joone 350 May 19 00:41 Makefile.am-rw-rw-r-- 1 joone joone 0 May 19 00:41 NEWS-rw-rw-r-- 1 joone joone 0 May 19 00:41 READMEdrwxr-xr-x 2 joone joone 4096 May 19 00:41 src
Making a spec file
Building with gbs$gbs build -A i586 keep-packs --include-all
Running Image Viewer on the emulator
Download today!
http://download.tizen.org/live/home:/joone:/Tizen:/2.0:/GNOME/standard/i586/
Future PlanSupport for GObject introspection
More language bindings!
Support for Mobile Theme
Add GNOME development to Tizen SDK
Q & A
Click to edit the title text formatClick to edit Master title style
5/28/13
Click to edit the title text formatClick to edit Master title style
Click to edit the outline text formatSecond Outline LevelThird Outline LevelFourth Outline LevelFifth Outline LevelSixth Outline Level
Seventh Outline LevelClick to edit Master text styles
Second level
Third level
Fourth level
Fifth level
Sixth level
Seventh level
Eighth level
Ninth level
Top Related