<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.meego.com/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.meego.com/index.php?title=Special:Contributions/Gvancuts&amp;feed=atom&amp;limit=50&amp;target=Gvancuts&amp;year=&amp;month=</id>
		<title>MeeGo wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.meego.com/index.php?title=Special:Contributions/Gvancuts&amp;feed=atom&amp;limit=50&amp;target=Gvancuts&amp;year=&amp;month="/>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Special:Contributions/Gvancuts"/>
		<updated>2013-05-19T09:49:52Z</updated>
		<subtitle>From MeeGo wiki</subtitle>
		<generator>MediaWiki 1.16.2</generator>

	<entry>
		<id>http://wiki.meego.com/Tizen_IVI</id>
		<title>Tizen IVI</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Tizen_IVI"/>
				<updated>2012-05-24T12:55:51Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Start OBS Light GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Creation of a Tizen IVI with OBS Light ==&lt;br /&gt;
Note this page needs to be moved to Tizen Wiki and image snapshot addition.&lt;br /&gt;
=== Install OBS Light ===&lt;br /&gt;
Select you installation depending of your PC OS.&lt;br /&gt;
[[OBS Light Installation]]&lt;br /&gt;
=== Download a valid Kick Start file ===&lt;br /&gt;
Check which release you want to build an image with.&lt;br /&gt;
Note that new build repo are available every day but they may not be operational.&lt;br /&gt;
See : http://download.tizen.org/snapshots/&lt;br /&gt;
&lt;br /&gt;
Recover a .ks file. The following can be used as example:&lt;br /&gt;
http://download.tizen.org/snapshots/tizen_20120523.4/images/ivi-min-auto/ivi-min-auto-tizen_20120523.4.ks&lt;br /&gt;
&lt;br /&gt;
''Note:'' the more generic kickstart files found in builddata/image-configs (e.g. http://download.tizen.org/snapshots/tizen_20120523.4/builddata/image-configs/ivi-min-auto.ks) include a @BUILD_ID@ in the baseurl. Such tag is automatically replaced by a string passed to mic with the option --release=&amp;lt;build_id&amp;gt;. In the example above, the option would have been --release=tizen_20120523.4. If one wants to work with the very latest then use --release=latest.&lt;br /&gt;
&lt;br /&gt;
=== Start OBS Light GUI ===&lt;br /&gt;
We will not configure any OBS as we are only interested in image creation.&lt;br /&gt;
&lt;br /&gt;
[[File:OBSLightMIC.png]]&lt;br /&gt;
&lt;br /&gt;
* To activate the mode MIC, Click on the second Tab on Top left of the screen&lt;br /&gt;
* Create a new project with the button 'New' on the bottom left of the screen&lt;br /&gt;
* Import the .ks file using the button 'Import Kickstart file'&lt;br /&gt;
* Select your image type (default is fs for file system)&lt;br /&gt;
* You can check the various option by clicking on the various tab.&lt;br /&gt;
* Click 'Create Image'&lt;br /&gt;
* Click 'Show Log' -&amp;gt; Wait about 10mn - once that the cache is created it's quicker&lt;br /&gt;
&lt;br /&gt;
If your .ks file is valid you will have an image located in your project directory.&lt;br /&gt;
OBS Light integrates an option to export of that image via TFTP/NFS for quick test.&lt;br /&gt;
&lt;br /&gt;
''Note:'' The Tizen IVI kernels have the NFS option turned off by default so you will need to reconfigure your kernel before you can use that option.&lt;br /&gt;
&lt;br /&gt;
Change your config and play with the .ks option as much as desired.&lt;br /&gt;
&lt;br /&gt;
Enjoy.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Tizen_IVI</id>
		<title>Tizen IVI</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Tizen_IVI"/>
				<updated>2012-05-24T12:55:08Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Start OBS Light GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Creation of a Tizen IVI with OBS Light ==&lt;br /&gt;
Note this page needs to be moved to Tizen Wiki and image snapshot addition.&lt;br /&gt;
=== Install OBS Light ===&lt;br /&gt;
Select you installation depending of your PC OS.&lt;br /&gt;
[[OBS Light Installation]]&lt;br /&gt;
=== Download a valid Kick Start file ===&lt;br /&gt;
Check which release you want to build an image with.&lt;br /&gt;
Note that new build repo are available every day but they may not be operational.&lt;br /&gt;
See : http://download.tizen.org/snapshots/&lt;br /&gt;
&lt;br /&gt;
Recover a .ks file. The following can be used as example:&lt;br /&gt;
http://download.tizen.org/snapshots/tizen_20120523.4/images/ivi-min-auto/ivi-min-auto-tizen_20120523.4.ks&lt;br /&gt;
&lt;br /&gt;
''Note:'' the more generic kickstart files found in builddata/image-configs (e.g. http://download.tizen.org/snapshots/tizen_20120523.4/builddata/image-configs/ivi-min-auto.ks) include a @BUILD_ID@ in the baseurl. Such tag is automatically replaced by a string passed to mic with the option --release=&amp;lt;build_id&amp;gt;. In the example above, the option would have been --release=tizen_20120523.4. If one wants to work with the very latest then use --release=latest.&lt;br /&gt;
&lt;br /&gt;
=== Start OBS Light GUI ===&lt;br /&gt;
We will not configure any OBS as we are only interested in image creation.&lt;br /&gt;
&lt;br /&gt;
[[File:OBSLightMIC.png]]&lt;br /&gt;
&lt;br /&gt;
* To activate the mode MIC, Click on the second Tab on Top left of the screen&lt;br /&gt;
* Create a new project with the button 'New' on the bottom left of the screen&lt;br /&gt;
* Import the .ks file using the button 'Import Kickstart file'&lt;br /&gt;
* Select your image type (default is fs for file system)&lt;br /&gt;
* You can check the various option by clicking on the various tab.&lt;br /&gt;
* Click 'Create Image'&lt;br /&gt;
* Click 'Show Log' -&amp;gt; Wait about 10mn - once that the cache is created it's quicker&lt;br /&gt;
&lt;br /&gt;
If your .ks file is valid you will have an image located in your project directory.&lt;br /&gt;
OBS Light integrates an option to export of that image via TFTP/NFS for quick test.&lt;br /&gt;
''Note:'' The Tizen IVI kernels have the NFS option turned off by default so you will need to reconfigure your kernel before you can use that option.&lt;br /&gt;
&lt;br /&gt;
Change your config and play with the .ks option as much as desired.&lt;br /&gt;
&lt;br /&gt;
Enjoy.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Tizen_IVI</id>
		<title>Tizen IVI</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Tizen_IVI"/>
				<updated>2012-05-24T12:50:30Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Download a valid Kick Start file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Creation of a Tizen IVI with OBS Light ==&lt;br /&gt;
Note this page needs to be moved to Tizen Wiki and image snapshot addition.&lt;br /&gt;
=== Install OBS Light ===&lt;br /&gt;
Select you installation depending of your PC OS.&lt;br /&gt;
[[OBS Light Installation]]&lt;br /&gt;
=== Download a valid Kick Start file ===&lt;br /&gt;
Check which release you want to build an image with.&lt;br /&gt;
Note that new build repo are available every day but they may not be operational.&lt;br /&gt;
See : http://download.tizen.org/snapshots/&lt;br /&gt;
&lt;br /&gt;
Recover a .ks file. The following can be used as example:&lt;br /&gt;
http://download.tizen.org/snapshots/tizen_20120523.4/images/ivi-min-auto/ivi-min-auto-tizen_20120523.4.ks&lt;br /&gt;
&lt;br /&gt;
''Note:'' the more generic kickstart files found in builddata/image-configs (e.g. http://download.tizen.org/snapshots/tizen_20120523.4/builddata/image-configs/ivi-min-auto.ks) include a @BUILD_ID@ in the baseurl. Such tag is automatically replaced by a string passed to mic with the option --release=&amp;lt;build_id&amp;gt;. In the example above, the option would have been --release=tizen_20120523.4. If one wants to work with the very latest then use --release=latest.&lt;br /&gt;
&lt;br /&gt;
=== Start OBS Light GUI ===&lt;br /&gt;
We will not configure any OBS as we are only interested in image creation.&lt;br /&gt;
&lt;br /&gt;
[[File:OBSLightMIC.png]]&lt;br /&gt;
&lt;br /&gt;
* To activate the mode MIC, Click on the second Tab on Top left of the screen&lt;br /&gt;
* Create a new project with the button 'New' on the bottom left of the screen&lt;br /&gt;
* Import the .ks file using the button 'Import Kickstart file'&lt;br /&gt;
* Select your image type (default is fs for file system)&lt;br /&gt;
* You can check the various option by clicking on the various tab.&lt;br /&gt;
* Click 'Create Image'&lt;br /&gt;
* Click 'Show Log' -&amp;gt; Wait about 10mn - once that the cache is created it's quicker&lt;br /&gt;
&lt;br /&gt;
If your .ks file is valid you will have an image located in your project directory.&lt;br /&gt;
OBS Light integrates an option to export of that image via TFTP/NFS for quick test.&lt;br /&gt;
&lt;br /&gt;
Change your config and play with the .ks option as much as desired.&lt;br /&gt;
&lt;br /&gt;
Enjoy.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Tizen_IVI</id>
		<title>Tizen IVI</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Tizen_IVI"/>
				<updated>2012-05-24T12:49:31Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Download a valid Kick Start file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Creation of a Tizen IVI with OBS Light ==&lt;br /&gt;
Note this page needs to be moved to Tizen Wiki and image snapshot addition.&lt;br /&gt;
=== Install OBS Light ===&lt;br /&gt;
Select you installation depending of your PC OS.&lt;br /&gt;
[[OBS Light Installation]]&lt;br /&gt;
=== Download a valid Kick Start file ===&lt;br /&gt;
Check which release you want to build an image with.&lt;br /&gt;
Note that new build repo are available every day but they may not be operational.&lt;br /&gt;
See : http://download.tizen.org/snapshots/&lt;br /&gt;
&lt;br /&gt;
Recover a .ks file. The following can be used as example:&lt;br /&gt;
http://download.tizen.org/snapshots/tizen_20120523.4/images/ivi-min-auto/ivi-min-auto-tizen_20120523.4.ks&lt;br /&gt;
&lt;br /&gt;
''Note:'' the more generic kickstart file found in builddata/image-configs (e.g. http://download.tizen.org/snapshots/tizen_20120523.4/builddata/image-configs/ivi-min-auto.ks) do include a @BUILD_ID@ in the baseurl. Such tag is automatically replaced by a string passed to mic with the option --release=&amp;lt;build_id&amp;gt;, in the example above, the option would have been --release=tizen_20120523.4. If one wants to work with the very latest then use --release=latest&lt;br /&gt;
&lt;br /&gt;
=== Start OBS Light GUI ===&lt;br /&gt;
We will not configure any OBS as we are only interested in image creation.&lt;br /&gt;
&lt;br /&gt;
[[File:OBSLightMIC.png]]&lt;br /&gt;
&lt;br /&gt;
* To activate the mode MIC, Click on the second Tab on Top left of the screen&lt;br /&gt;
* Create a new project with the button 'New' on the bottom left of the screen&lt;br /&gt;
* Import the .ks file using the button 'Import Kickstart file'&lt;br /&gt;
* Select your image type (default is fs for file system)&lt;br /&gt;
* You can check the various option by clicking on the various tab.&lt;br /&gt;
* Click 'Create Image'&lt;br /&gt;
* Click 'Show Log' -&amp;gt; Wait about 10mn - once that the cache is created it's quicker&lt;br /&gt;
&lt;br /&gt;
If your .ks file is valid you will have an image located in your project directory.&lt;br /&gt;
OBS Light integrates an option to export of that image via TFTP/NFS for quick test.&lt;br /&gt;
&lt;br /&gt;
Change your config and play with the .ks option as much as desired.&lt;br /&gt;
&lt;br /&gt;
Enjoy.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Umms</id>
		<title>Umms</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Umms"/>
				<updated>2011-11-23T16:37:09Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Universal Multimedia Service (UMMS) =&lt;br /&gt;
&lt;br /&gt;
  1 Short expression of the need&lt;br /&gt;
--------------------------------&lt;br /&gt;
Linux in general including MeeGo in particular lacks a unified solution to play Multimedia content. Almost each application has created its own solution limiting the opportunity to benefit from new hardware capabilities provided by modern chipsets on non PC platforms and reducing the scope of usability of high value Multimedia content which is often protected of use licensed Codec for Linux environment.&lt;br /&gt;
It is not the first time than Linux had to break boundary and change established solutions to drastically improve its support for new services. In a recent past we have seen the adoption of CUPS (1999-2002) for printing and Sane (2000-2005) for scanning enabling the use of Linux in office environment what before these two, seemed only possible for the geek in search of long night enjoying a deep troubleshooting fun.&lt;br /&gt;
The current proposition has no less of an outrageous ambition than to offer creating a Unified Multi Media Service (UMMS) which will enable to play Audio and Video (AV) from an application on any Linux platform (starting by MeeGo) without having to worry about anything more than it's position on the screen and its possible initial transparency over the User Interface graphics.&lt;br /&gt;
  2 Purpose/audience&lt;br /&gt;
--------------------&lt;br /&gt;
The purpose of this document is to provide an understanding of a solution which could be used to deliver a unified service to enable a large community of developers to benefit from the best possible Audio and Video capabilities provided by various Linux implementations without having to worry about the supporting HW.&lt;br /&gt;
It addresses the managers who wish to understand the requirements and the constraints required for such a solution, as well as the developers who will have to deliver a working implementation.&lt;br /&gt;
It does focus on an initial application for MeeGo TV but it has been designed with the vision of an expansion to all MeeGo verticals in a second phase, starting by the Tablets and further, its generic adoption by a larger Linux community. Only MeeGo needs are described in this initial document.&lt;br /&gt;
  3 Overview&lt;br /&gt;
------------&lt;br /&gt;
MeeGo is an open source version of Linux which targets Netbooks, Tablets, Mobiles, Connected TV and Automotive domains, and which has the goals of both delivering an optimized user experience and also enabling a community of developers to service applications across domains.&lt;br /&gt;
Unfortunately not only does Linux  not have a standard set of APIs to play Audio Video (AV) but also the existing main Linux AV Player APIs (Mplayer and Totem) do not cater for  TV needs :&lt;br /&gt;
Programming language independence&lt;br /&gt;
Management of protected high value content (Pay TV)&lt;br /&gt;
GPL license isolation&lt;br /&gt;
Support of TV features (broadcast, sub-title, language selection, aspect ratio, trick play, …)&lt;br /&gt;
Sophisticated transport independence (smooth streaming, forward error correction, ...)&lt;br /&gt;
Multiple back-end video pipe support&lt;br /&gt;
Support of new generation HW feature (e.g. video as an OpenGL texture)&lt;br /&gt;
This document explains the constraints introduced by these requirements and provides possible solutions and recommendations.&lt;br /&gt;
&lt;br /&gt;
  4 Documentation&lt;br /&gt;
----------------------------&lt;br /&gt;
&lt;br /&gt;
Specifications [[File:Meego_Unified_MultiMedia_Service_V0.4.odt]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[UMMS_Architecture | General Architecture]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[UMMS_User_Manual | User Manual and Sample code]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[media:LinuxCon_2011_umms_introduction.pdf|Slides from Linux Conference Oct11 and Nov 11]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  5 Where is the code&lt;br /&gt;
-----------------&lt;br /&gt;
Visit MeeGo OBS and search for UMMS&lt;br /&gt;
https://build.meego.com&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Umms</id>
		<title>Umms</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Umms"/>
				<updated>2011-11-23T16:35:14Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Universal Multimedia Service (UMMS) =&lt;br /&gt;
&lt;br /&gt;
  1 Short expression of the need&lt;br /&gt;
--------------------------------&lt;br /&gt;
Linux in general including MeeGo in particular lacks a unified solution to play Multimedia content. Almost each application has created its own solution limiting the opportunity to benefit from new hardware capabilities provided by modern chipsets on non PC platforms and reducing the scope of usability of high value Multimedia content which is often protected of use licensed Codec for Linux environment.&lt;br /&gt;
It is not the first time than Linux had to break boundary and change established solutions to drastically improve its support for new services. In a recent past we have seen the adoption of CUPS (1999-2002) for printing and Sane (2000-2005) for scanning enabling the use of Linux in office environment what before these two, seemed only possible for the geek in search of long night enjoying a deep troubleshooting fun.&lt;br /&gt;
The current proposition has no less of an outrageous ambition than to offer creating a Unified Multi Media Service (UMMS) which will enable to play Audio and Video (AV) from an application on any Linux platform (starting by MeeGo) without having to worry about anything more than it's position on the screen and its possible initial transparency over the User Interface graphics.&lt;br /&gt;
  2 Purpose/audience&lt;br /&gt;
--------------------&lt;br /&gt;
The purpose of this document is to provide an understanding of a solution which could be used to deliver a unified service to enable a large community of developers to benefit from the best possible Audio and Video capabilities provided by various Linux implementations without having to worry about the supporting HW.&lt;br /&gt;
It addresses the managers who wish to understand the requirements and the constraints required for such a solution, as well as the developers who will have to deliver a working implementation.&lt;br /&gt;
It does focus on an initial application for MeeGo TV but it has been designed with the vision of an expansion to all MeeGo verticals in a second phase, starting by the Tablets and further, its generic adoption by a larger Linux community. Only MeeGo needs are described in this initial document.&lt;br /&gt;
  3 Overview&lt;br /&gt;
------------&lt;br /&gt;
MeeGo is an open source version of Linux which targets Netbooks, Tablets, Mobiles, Connected TV and Automotive domains, and which has the goals of both delivering an optimized user experience and also enabling a community of developers to service applications across domains.&lt;br /&gt;
Unfortunately not only does Linux  not have a standard set of APIs to play Audio Video (AV) but also the existing main Linux AV Player APIs (Mplayer and Totem) do not cater for  TV needs :&lt;br /&gt;
Programming language independence&lt;br /&gt;
Management of protected high value content (Pay TV)&lt;br /&gt;
GPL license isolation&lt;br /&gt;
Support of TV features (broadcast, sub-title, language selection, aspect ratio, trick play, …)&lt;br /&gt;
Sophisticated transport independence (smooth streaming, forward error correction, ...)&lt;br /&gt;
Multiple back-end video pipe support&lt;br /&gt;
Support of new generation HW feature (e.g. video as an OpenGL texture)&lt;br /&gt;
This document explains the constraints introduced by these requirements and provides possible solutions and recommendations.&lt;br /&gt;
&lt;br /&gt;
  4 Documentation&lt;br /&gt;
----------------------------&lt;br /&gt;
&lt;br /&gt;
Specifications [[File:Meego_Unified_MultiMedia_Service_V0.4.odt]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[UMMS_Architecture | General Architecture]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[UMMS_User_Manual | User Manual and Sample code]] &amp;lt;br&amp;gt;&lt;br /&gt;
Slides from Linux Conference Oct11 and Nov 11 [[media:LinuxCon_2011_umms_introduction.pdf|LinuxCon 2011: Introduction to UMMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  5 Where is the code&lt;br /&gt;
-----------------&lt;br /&gt;
Visit MeeGo OBS and search for UMMS&lt;br /&gt;
https://build.meego.com&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/File:LinuxCon_2011_umms_introduction.pdf</id>
		<title>File:LinuxCon 2011 umms introduction.pdf</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/File:LinuxCon_2011_umms_introduction.pdf"/>
				<updated>2011-11-23T16:22:57Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: uploaded a new version of &amp;amp;quot;File:LinuxCon 2011 umms introduction.pdf&amp;amp;quot;: New links in 'Resources'
Adjusted to new service name&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This file contains the slides presented to introduce UMMS during Linux conferences in Pragues (Oct 11) and Brazil Sao Polo (Nov 11).&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/OBS_Light</id>
		<title>OBS Light</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/OBS_Light"/>
				<updated>2011-10-17T09:37:45Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you have (or are thinking about) selecting MeeGo but you cannot put all the code you want to build on OBS, the public, cloud-based MeeGo building tool, or if you are more comfortable with the tradition of local build tools based on a chroot than with a full cloud-based system like OBS, you might find the learning curve a bit steep.&lt;br /&gt;
&lt;br /&gt;
While OBS will provide you with a very powerful and adapted tool for your long-term needs, the entry cost can be perceived to be too high.&lt;br /&gt;
This issue is particularly strongly perceived in the TV or IVI segments where recompilation of the Linux kernel and adding drivers is required even during the very early phases of a project and compiling in the public domain is out of the question.&lt;br /&gt;
 &lt;br /&gt;
You can find a obs appliance, build in suse studio:&lt;br /&gt;
 http://susegallery.com/a/e0uuBG/meego-obs&lt;br /&gt;
&lt;br /&gt;
The project proposed is called 'OBS Light' (or also obslight) and creates an encapsulation of OBS which presents a lighter face of OBS that we have called OBS light which could be delivered (if desired) with a pre-packaged MeeGo TV stack (or any other MeeGo vertical) released on a DVD image.&lt;br /&gt;
 &lt;br /&gt;
You can Download the boot strap of Meego 1.2.0 here (saveOBS.tar.aa   -&amp;gt; saveOBS.tar.ba).&lt;br /&gt;
 http://www.cc-e.co.uk/Meego/MeeGo-1.2.0/&lt;br /&gt;
reassembled the file&lt;br /&gt;
 cat saveOBS.tar.*  &amp;gt;&amp;gt; saveOBS.tar.gz &lt;br /&gt;
Thanks to Julien Snell and Cocom for the ftp server.&lt;br /&gt;
http://www.cc-e.co.uk &lt;br /&gt;
&lt;br /&gt;
Note that under the hood, OBS light still is 100% OBS code and the building process is the same as what you could achieve by running your own private OBS.&lt;br /&gt;
OBS Light mainly pre-configures an OBS with a few osc plugins to ease the learning curve. Note that some OBS feature are hidden to simplify the learning phase. As the service is run locally, you can mix Open Source and private code should you need to do so.&lt;br /&gt;
&lt;br /&gt;
OBS light provides a image builder too, called Imager.&lt;br /&gt;
You can find an Imager appliance, built in suse studio:&lt;br /&gt;
 http://susegallery.com/a/e0uuBG/meego-imager&lt;br /&gt;
IMG (Image Me Give) is a project initiated by Nokia. It is a small python&lt;br /&gt;
client/server application suite which manages the supervision of the MIC2 image&lt;br /&gt;
creation following the submission of a ks file by the user. &lt;br /&gt;
http://wiki.meego.com/Release_Infrastructure/IMG_Installation_for_OpenSuse_11.4#Start_IMG&lt;br /&gt;
&lt;br /&gt;
In a second phase we hope to add a simple UI to it. It reuses the osc command line tools delivered with OBS to which a set of extra plugins have been added, including an extension of mic2. All this remains compatible with a full implementation of OBS. It will be published under License: GPLv2.&lt;br /&gt;
&lt;br /&gt;
The osc plugin for automatic patch creation are designed to be reusable in a full OBS environment.&lt;br /&gt;
&lt;br /&gt;
The coding is under work and changes are likely to occur during the development process.&lt;br /&gt;
&lt;br /&gt;
Current progress an deliveries can be found [[ ObsLighDeliverable |here ]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|      ||   '''OBS Light'''   ||   '''Full OBS'''&lt;br /&gt;
|-&lt;br /&gt;
|   Cross compilation    ||   Yes     ||   Yes&lt;br /&gt;
|-&lt;br /&gt;
|   Local and remote reference    ||   Yes     ||   Yes&lt;br /&gt;
|-&lt;br /&gt;
|   Automatic creation of patch    ||   Yes     ||   Not Yet (will if the same osc plugin is loaded)&lt;br /&gt;
|-&lt;br /&gt;
|   Bootable Image creation    ||   Yes     ||   Add on&lt;br /&gt;
|-&lt;br /&gt;
|   Integrated version control    ||   Hidden     ||   Yes&lt;br /&gt;
|-&lt;br /&gt;
|   Multi-user    ||   Hidden     ||   Yes&lt;br /&gt;
|-&lt;br /&gt;
|   Multi-target by project    ||   Hidden     ||   Yes&lt;br /&gt;
|-&lt;br /&gt;
|   Auto built    ||   Hidden     ||   Yes&lt;br /&gt;
|-&lt;br /&gt;
|   Signing service   ||   Hidden     ||   Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
GIT: https://meego.gitorious.org/meego-developer-tools/obs-light&lt;br /&gt;
&lt;br /&gt;
OBS:https://build.pub.meego.com/project/show?project=home%3Aronan%3AOBS_Light&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Initial Specifications (final implementation are likely differ from the initial concept) :[[https://meego.gitorious.org/meego-developer-tools/obs-light/blobs/master/Doc/SpecOBSLight-1_V-0-6.pdf SpecOBSLight-1_V-0-6]]&lt;br /&gt;
&lt;br /&gt;
All discussions are run on the MeeGo-distribution-tools mailing list.&lt;br /&gt;
http://lists.meego.com/listinfo/meego-distribution-tools&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/3Dconnexion</id>
		<title>3Dconnexion</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/3Dconnexion"/>
				<updated>2011-07-07T12:13:27Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* MeeGo native drivers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the device in question:&lt;br /&gt;
== Info ==&lt;br /&gt;
http://www.3dconnexion.com/products/spacenavigator.html&lt;br /&gt;
&lt;br /&gt;
== More info ==&lt;br /&gt;
http://www.3dconnexion.com/service/software-developer.html is a good source of info. Windows is better documented than Linux.&lt;br /&gt;
&lt;br /&gt;
== Linux/MeeGo support ==&lt;br /&gt;
There are basically three options (mutually exclusive) to use this device under Linux/MeeGo:&lt;br /&gt;
# Use 3Dconnexion drivers and libraries (SDK available after registering on their website)&lt;br /&gt;
# Use open-source spacenav library/daemon &amp;lt;-- this seems to be a very good/stable option&lt;br /&gt;
# Use MeeGo native drivers (in which case the mouse is no more than a standard 2D mouse with 2 buttons)&lt;br /&gt;
&lt;br /&gt;
=== spacenavd ===&lt;br /&gt;
http://spacenav.sourceforge.net/&lt;br /&gt;
 tar xvf spacenavd-0.5.tar.gz&lt;br /&gt;
 cd  spacenavd-0.5&lt;br /&gt;
 ./configure&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
This creates a socket-based server you app can connect to.&lt;br /&gt;
For examples, please check the example included in the SDK: http://sourceforge.net/projects/spacenav/files/spacenav%20library%20%28SDK%29/&lt;br /&gt;
&lt;br /&gt;
=== MeeGo native drivers ===&lt;br /&gt;
As soon as you connect this device to your MeeGo system, the native driver (evdev) will pick it up and add it to the list of pointer device (i.e. a mouse). You can check this using xinput as follows:&lt;br /&gt;
&lt;br /&gt;
Install xinput first (not installed by default)&lt;br /&gt;
 zypper in xorg-x11-utils-xinput (in MeeGo 1.2, slightly different name in MeeGo 1.0)&lt;br /&gt;
&lt;br /&gt;
 xinput --list&lt;br /&gt;
  Virtual core pointer                          id=2    [master pointer  (3)]&lt;br /&gt;
    ? Virtual core XTEST pointer                id=4    [slave  pointer  (2)]&lt;br /&gt;
    ? CHESEN USB Keyboard                       id=9    [slave  pointer  (2)]&lt;br /&gt;
    ? 3Dconnexion Space Navigator               '''id=10'''   [slave  pointer  (2)]&lt;br /&gt;
    ? Dell Dell USB Mouse                       id=11   [slave  pointer  (2)]&lt;br /&gt;
    ? EVTouch TouchScreen                       id=12   [slave  pointer  (2)]&lt;br /&gt;
  Virtual core keyboard                         id=3    [master keyboard (2)]&lt;br /&gt;
    ? Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]&lt;br /&gt;
    ? Video Bus                                 id=6    [slave  keyboard (3)]&lt;br /&gt;
    ? Power Button                              id=7    [slave  keyboard (3)]&lt;br /&gt;
    ? CHESEN USB Keyboard                       id=8    [slave  keyboard (3)]&lt;br /&gt;
&lt;br /&gt;
At that point, the mouse is essentially functional but extremely sensitive. To correct this, you can play with the device properties named ''Device Accel Constant Deceleration (237)'' and/or ''Device Accel Adaptive Deceleration (239)''. I've had some good luck setting property '237' between 20 and 50.&lt;br /&gt;
 xinput --list-props 10&lt;br /&gt;
 Device '3Dconnexion Space Navigator':&lt;br /&gt;
        Device Enabled (118):   1&lt;br /&gt;
        Device Accel Profile (236):     0&lt;br /&gt;
        Device '''Accel Constant Deceleration (237)''':       1.000000&lt;br /&gt;
        Device Accel Adaptive Deceleration (239):       1.000000&lt;br /&gt;
        Device Accel Velocity Scaling (240):    10.000000&lt;br /&gt;
        Evdev Reopen Attempts (234):    10&lt;br /&gt;
        Evdev Axis Inversion (241):     0, 0&lt;br /&gt;
        Evdev Axes Swap (243):  0&lt;br /&gt;
        Axis Labels (244):      &amp;quot;Rel X&amp;quot; (126), &amp;quot;Rel Y&amp;quot; (127), &amp;quot;Rel Z&amp;quot; (256), &amp;quot;Rel Rotary X&amp;quot; (257), &amp;quot;Rel Rotary Y&amp;quot; (258), &amp;quot;Rel Rotary Z&amp;quot; (259)&lt;br /&gt;
        Button Labels (245):    &amp;quot;Button 0&amp;quot; (254), &amp;quot;Button 1&amp;quot; (255), &amp;quot;Button Unknown&amp;quot; (235), &amp;quot;Button Wheel Up&amp;quot; (122), &amp;quot;Button Wheel Down&amp;quot; (123)&lt;br /&gt;
        Evdev Middle Button Emulation (246):    2&lt;br /&gt;
        Evdev Middle Button Timeout (247):      50&lt;br /&gt;
        Evdev Wheel Emulation (248):    0&lt;br /&gt;
        Evdev Wheel Emulation Axes (249):       0, 0, 4, 5&lt;br /&gt;
        Evdev Wheel Emulation Inertia (250):    10&lt;br /&gt;
        Evdev Wheel Emulation Timeout (251):    200&lt;br /&gt;
        Evdev Wheel Emulation Button (252):     4&lt;br /&gt;
        Evdev Drag Lock Buttons (253):  0&lt;br /&gt;
 &lt;br /&gt;
 xinput --set-prop 10 237 20&lt;br /&gt;
&lt;br /&gt;
'''In MeeGo 1.2:'''&lt;br /&gt;
*Create a new file called 3Dconnexion.conf in &amp;lt;code&amp;gt;/etc/X11/xorg.conf.d/&amp;lt;/code&amp;gt; (i.e. no need to use a script anymore)&lt;br /&gt;
*Copy and past the following text in this new file and restart X.&lt;br /&gt;
  Section &amp;quot;InputClass&amp;quot;&lt;br /&gt;
          Identifier &amp;quot;evdev 3Dconnexion&amp;quot;&lt;br /&gt;
          MatchProduct &amp;quot;3Dconnexion|Space Navigator&amp;quot;&lt;br /&gt;
          Driver &amp;quot;evdev&amp;quot;&lt;br /&gt;
          Option &amp;quot;ConstantDeceleration&amp;quot; &amp;quot;30&amp;quot;&lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
Note: something *very* similar should also work in '''MeeGo 1.0''' by adding the same section in &amp;lt;code&amp;gt;/etc/X11/xorg.conf&amp;lt;/code&amp;gt; but I have not tested it yet. In the meantime an easy work around is to add this line to a script file that runs when system boots up (i.e. &amp;lt;code&amp;gt;/usr/bin/startivi&amp;lt;/code&amp;gt;):&lt;br /&gt;
  '''xinput set-prop &amp;quot;3Dconnexion Space Navigator&amp;quot; 237 20'''&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle</id>
		<title>In-vehicle</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle"/>
				<updated>2011-07-04T16:15:24Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Other Scroll Wheels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= In-vehicle Infotainment (IVI) =&lt;br /&gt;
&lt;br /&gt;
MeeGo IVI is setting the new standard for in-vehicle infotainment in cars, buses, airplanes, etc. MeeGo IVI is a Free and Open-Source Software (FOSS) OS distribution integrating the MeeGo Core for embedded systems leveraging and extending functionality known from mobile computers and handsets into vehicles. Building on the MeeGo OS Base and the MeeGo OS Middleware the MeeGo IVI software stack enables rich Internet and multimedia experiences to consumers while traveling.&lt;br /&gt;
&lt;br /&gt;
== Organization ==&lt;br /&gt;
&lt;br /&gt;
The MeeGo IVI organization is composed of a Working Group and a Project Team. The Working Group is responsible for the definition of the roadmap and the MeeGo IVI Project Team executes the implementation through the partnering organizations using the best practices of open-source development. Through the collaboration of organizations and companies covering automotive, computer hardware, communications, and software industries this partnership enables jump-starting product development for rapid delivery allowing adopters to concentrate on their core competencies while benefiting from this extensive know-how and the open-source assets.&lt;br /&gt;
&lt;br /&gt;
For a graphical representation of the organizational structure: [[Media:MeeGo_IVI_OrgStruct.pdf]]&lt;br /&gt;
&lt;br /&gt;
=== Working Group ===&lt;br /&gt;
&lt;br /&gt;
The Working Group is composed from the following members and roles:&lt;br /&gt;
&lt;br /&gt;
* Working Group Chair&lt;br /&gt;
** Represents and promotes the Working Group.&lt;br /&gt;
** Leads strategic discussions on requirements, direction, policies.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current Working Group Chair: '''[http://meego.com/users/RudolfStreif Rudi Streif (Linux Foundation)]'''&lt;br /&gt;
&lt;br /&gt;
* Working Group Representative (the number is not limited, others participants to be invited)&lt;br /&gt;
** Represents his/her organization in the Working Group.&lt;br /&gt;
** Collects, organizes, prioritizes, and contributes requirements from his/her organization.&lt;br /&gt;
** Commitment: 20% - 50% dependent on how actively the organization wants to contribute requirements.&lt;br /&gt;
** Current Working Group Representatives:&lt;br /&gt;
*** Intel: '''[http://meego.com/users/jahoffmann Joel Hoffmann]'''&lt;br /&gt;
*** LG Electronics: '''[https://meego.com/users/hyungjin Hyungjin Jeon]'''&lt;br /&gt;
*** Nokia: '''[http://meego.com/users/alistair Alistair Adams]'''&lt;br /&gt;
*** Pelagicore: '''[http://meego.com/users/mikael Mikael Soderberg]'''&lt;br /&gt;
*** Visteon: '''[http://meego.com/users/PavelKonopelko Pavel Konopelko]'''&lt;br /&gt;
&lt;br /&gt;
* Product Manager (cross-function across Working Group and Project Team)&lt;br /&gt;
** Unifies and prioritizes overall requirements set.&lt;br /&gt;
** Owns the roadmap.&lt;br /&gt;
** co-leads the Project Team and defines the release schedule together with the Project Manager.&lt;br /&gt;
** Accountable to the Working Group for delivery of agreed upon requirements.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Full job description: [[Media:MeeGo_IVI_PDM.pdf]]&lt;br /&gt;
** Current Product Manager:&lt;br /&gt;
&lt;br /&gt;
* Program Manager (cross-functional across Working Group and Project Team)&lt;br /&gt;
** Works with the Lead Architects and Lead Designers on effort estimates and schedules.&lt;br /&gt;
** co-leads the Project Team together with the Product Manager.&lt;br /&gt;
** Accountable to the Working Group for deliverables and schedule.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Full job description: [[Media:MeeGo_IVI_PJM.pdf]]&lt;br /&gt;
** Current Program Manager: '''[http://meego.com/users/joel Joel Clark (Intel)]'''&lt;br /&gt;
&lt;br /&gt;
==== Working Group Meetings and Minutes ====&lt;br /&gt;
The Working Group meets regularly. Information on current and past meetings can be found on [[in-vehicle/working-group|IVI Working Group]].&lt;br /&gt;
&lt;br /&gt;
=== Project Team ===&lt;br /&gt;
&lt;br /&gt;
The Project Team has members with various roles that are subject to change according to the requirements of the current projects. The number of members and roles in the Project Team is not limited and grow as the team gains momentum and takes on larger tasks.&lt;br /&gt;
&lt;br /&gt;
* Lead Architect&lt;br /&gt;
** Defines technical architecture to meet the requirements n terms of functionality, performance, etc.&lt;br /&gt;
** Defines interfaces between modules and components together with other Lead Architects within the same and/or other Project Teams.&lt;br /&gt;
** Performs feasibility studies and provides feedback to product manager on technical challenges, difficulties, “show stoppers”.&lt;br /&gt;
** Commitment: &amp;gt; 50% dependent on sub-project complexity.&lt;br /&gt;
** Current Lead Architect: '''[http://meego.com/users/tomcounihan Tom Counihan (Intel)]'''&lt;br /&gt;
&lt;br /&gt;
* Lead Designer (multiple roles)&lt;br /&gt;
** Responsible for the detailed implementation design of the architecture.&lt;br /&gt;
** Estimates the effort necessary for implementation.&lt;br /&gt;
** Leads implementation team comprised of engineering resources of his/her organization.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current Lead Designers&lt;br /&gt;
***&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
* QA Lead (multiple roles)&lt;br /&gt;
** Transforms requirements into functionality test plans.&lt;br /&gt;
** Develops interface and compliance test procedures according to the architecture.&lt;br /&gt;
** Implements black box and white box test tools through the resources of his/her organization.&lt;br /&gt;
** Executes test plans and provides test reports.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current QA Leads:&lt;br /&gt;
***&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
* Release Manager&lt;br /&gt;
** Coordinates bug tracking, build and release with the design and QA leads.&lt;br /&gt;
** Develops and manages build tools.&lt;br /&gt;
** Leads build and release engineering team.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current Release Manager: '''[http://meego.com/users/jeremiah Jeremiah Foster (Pelagicore)]'''&lt;br /&gt;
&lt;br /&gt;
* Engineers for Development and QA (many roles)&lt;br /&gt;
** Implement and test the required functionality.&lt;br /&gt;
** Qualification varies with sub-project.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
&lt;br /&gt;
== Shipping MeeGo IVI Products == &lt;br /&gt;
&lt;br /&gt;
* [http://news.softpedia.com/news/MeeGo-Powered-In-Vehicle-Information-System-Makes-Appearance-at-MWC-2011-184651.shtml Hawtai B11]&lt;br /&gt;
* [http://www.allaboutmeego.com/news/item/12918_Red_Flag_Software_announces_Me.php Geely EC8]&lt;br /&gt;
* iKarPC [http://files.icp-deutschland.de/produkte2/124273/web/icp/IKARPC-W08A-datasheet-20110222.pdf datasheet] and [http://www.contradata.it/cataloghi/IEI_2011_In_Vehicle_PC.pdf catalog page]&lt;br /&gt;
&lt;br /&gt;
== MeeGo IVI Demos ==&lt;br /&gt;
&lt;br /&gt;
*  MeeGo IVI UI from ICS: [http://www.youtube.com/watch?v=ZWbfGzyLoh8 video] and [http://www.ics.com/services/qtquick info], including source code&lt;br /&gt;
&lt;br /&gt;
== MeeGo IVI UI (HMI)==&lt;br /&gt;
&lt;br /&gt;
MeeGo IVI includes a &amp;lt;b&amp;gt;Sample&amp;lt;/b&amp;gt; UI.  This UI is sample only because it has always been stolen from some other MeeGo device project and ported with little change to the IVI builds.  Also the underlaying UI framework and the UI applications have changed in every version of MeeGo so far.  &lt;br /&gt;
&lt;br /&gt;
The MeeGo IVI 1.2.0 UI is primarily based on a collection of QML based applications designed for MeeGo Tablet. It has a IVI specific taskbar app launcher that adds support for scrollwheel and voice command imputs.  &lt;br /&gt;
&lt;br /&gt;
* [[In-vehicle/IVIHome_Guide | MeeGo IVI 1.2.0 IVI home screen / taskbar User Guide ]]&lt;br /&gt;
&lt;br /&gt;
The MeeGo IVI Home screen / taskbar is tested with a Contour ShuttleExpress Scrollweel.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Contour-Design-00496-0-Shuttle-Xpress/dp/B0032Y0OH0/ref=sr_1_2?ie=UTF8&amp;amp;qid=1309555207&amp;amp;sr=8-2 Contour ShuttleXpress infromation ]&lt;br /&gt;
&lt;br /&gt;
==== Other Scroll Wheels ====&lt;br /&gt;
Other scrollwheels that have been used by the MeeGo IVI community&lt;br /&gt;
&lt;br /&gt;
* [[3Dconnexion|3Dconnexion SpaceNavigator ]]&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
&lt;br /&gt;
The roadmap is always under discussion. But the important thing it that it is open and transparent - and you can contribute. The path to contribution begins on the MeeGo IVI mailing list. This list is the central communication point with all the MeeGo IVI stakeholders participating. Through this list you can contribute ideas, code, and other resources. You will also receive support and advice as well as pointers to other resources on this list, this is where the community comes together.&lt;br /&gt;
&lt;br /&gt;
The roadmap pages are the central collaboration point on laying out the future of MeeGo IVI. Here architecture details, system diagrams, use cases, etc. are shared.&lt;br /&gt;
&lt;br /&gt;
[[In-vehicle/Roadmap|View the Roadmap]]&lt;br /&gt;
 &lt;br /&gt;
Before any new feature is committed to the Roadmap, a feature request is created in http://bugs.meego.com. Current MeeGo IVI feature requests can be found [https://bugs.meego.com/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=MeeGo+IVI+Features&amp;amp;content= here]&lt;br /&gt;
&lt;br /&gt;
[https://bugs.meego.com/enter_bug.cgi?product=MeeGo%20IVI%20Features Submit new MeeGo IVI feature request ]&lt;br /&gt;
&lt;br /&gt;
For a Feature Request to become part of the MeeGo IVI release plan, it needs to clearly define the engineering requirements and have resources working on development. &lt;br /&gt;
&lt;br /&gt;
More details on the long term direction and short term Release plan may be found in the [[In-vehicle/Roadmap|IVI roadmap]].&lt;br /&gt;
&lt;br /&gt;
== Weekly Builds ==&lt;br /&gt;
Automated weekly MeeGo IVI repository and image builds are available on meego.com for testing and development baselining. Each build has a build version and date in its path. [[Release Engineering/Release Versioning|MeeGo Release Versioning]] explains the build version numbering scheme. For example '''1.2.80.xx''' is a 1.2 Alpha build, '''1.2.90.xx''' is a 1.2 Beta build, '''1.2.99.x''' is a 1.2 Release Candidate, and '''1.2.1''' is the first release update after the final 1.2 release. &lt;br /&gt;
&lt;br /&gt;
[http://repo.meego.com/MeeGo/builds/trunk/ MeeGo weekly build repositories]&lt;br /&gt;
&lt;br /&gt;
Each weekly build directory is named with a version number and date.  IVI live .iso images are found under the ''images'' link in each weekly build directory. A list of every package included a live image is found in the same directory as the image. RPM packages are found under the ''oss'' and ''non-oss'' links under ''repos'' in the weekly build directory.&lt;br /&gt;
&lt;br /&gt;
==Upcoming Releases==&lt;br /&gt;
===Meego 1.2.0 Update ===&lt;br /&gt;
&lt;br /&gt;
;Update release dates&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Update name&lt;br /&gt;
! Code Freeze&lt;br /&gt;
! Release&lt;br /&gt;
 |- &lt;br /&gt;
 |Update 1&lt;br /&gt;
 |June 30&lt;br /&gt;
 |July 7&lt;br /&gt;
 |-&lt;br /&gt;
 |Update 2&lt;br /&gt;
 |August 11&lt;br /&gt;
 |August 18&lt;br /&gt;
 |-&lt;br /&gt;
 |Update 3&lt;br /&gt;
 |Sept 22&lt;br /&gt;
 |Sept 29&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
====Links====&lt;br /&gt;
When the first MeeGo 1.2.0 update is released July 7, 2011, the updated packages will show up in the following repository:&lt;br /&gt;
* [http://repo.meego.com/MeeGo/updates/1.2.0/repos/ MeeGo 1.2.0 Update Repositories]&lt;br /&gt;
&lt;br /&gt;
* [https://bugs.meego.com/buglist.cgi?emailtype2=substring&amp;amp;field0-0-0=flagtypes.name&amp;amp;classification=MeeGo%20Platform&amp;amp;emailcc2=1&amp;amp;query_format=advanced&amp;amp;bug_status=NEW&amp;amp;bug_status=NEEDINFO&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=WAITING%20FOR%20UPSTREAM&amp;amp;bug_status=REOPENED&amp;amp;bug_status=RESOLVED&amp;amp;bug_status=RELEASED&amp;amp;bug_status=VERIFIED&amp;amp;email2=ivi-bugs&amp;amp;version=1.2.0&amp;amp;type0-0-0=anywordssubstr&amp;amp;value0-0-0=meego_update_release_blocker%2B&amp;amp;known_name=ivibugs_1.2.0Update%2B MeeGo IVI 1.2.0 Update approved bugs ]&lt;br /&gt;
&lt;br /&gt;
* [https://bugs.meego.com/buglist.cgi?emailtype2=substring&amp;amp;field0-0-0=flagtypes.name&amp;amp;classification=MeeGo%20Platform&amp;amp;emailcc2=1&amp;amp;query_format=advanced&amp;amp;bug_status=NEW&amp;amp;bug_status=NEEDINFO&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=WAITING%20FOR%20UPSTREAM&amp;amp;bug_status=REOPENED&amp;amp;bug_status=RESOLVED&amp;amp;bug_status=RELEASED&amp;amp;bug_status=VERIFIED&amp;amp;email2=ivi-bugs&amp;amp;version=1.2.0&amp;amp;type0-0-0=anywordssubstr&amp;amp;value0-0-0=meego_update_release_blocker%3F&amp;amp;known_name=ivibugs_1.2.0Update%3F MeeGo IVI 1.2.0 Update proposed bugs ]&lt;br /&gt;
&lt;br /&gt;
* [[ Quality/IVI 1.2 Update | IVI 1.2.0 Update bug fix status]]&lt;br /&gt;
&lt;br /&gt;
===Meego 1.3===&lt;br /&gt;
&lt;br /&gt;
;MeeGo 1.3 milestones&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Milestone&lt;br /&gt;
! Date&lt;br /&gt;
 |- &lt;br /&gt;
 |New Package Planning complete  ||June 30&lt;br /&gt;
 |-&lt;br /&gt;
 |Core Package integration ||July 26&lt;br /&gt;
 |-&lt;br /&gt;
 |IVI Package integration / version freeze ||August 12&lt;br /&gt;
 |-&lt;br /&gt;
 |1.3 branch and Release Candidate 1 ||October 4&lt;br /&gt;
 |-&lt;br /&gt;
 |1.3 final release ||October 27&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Platforms== &lt;br /&gt;
===MeeGo IVI Platforms Supported in Releases===&lt;br /&gt;
&lt;br /&gt;
;IA32&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Image name&lt;br /&gt;
! Platform name&lt;br /&gt;
! Intel chipset&lt;br /&gt;
! I/O Hub name&lt;br /&gt;
! drivers included&lt;br /&gt;
! Releases&lt;br /&gt;
! Plan&lt;br /&gt;
! status &lt;br /&gt;
! price/availability&lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32&lt;br /&gt;
 |Congatec IVI Kit (Russellville)&lt;br /&gt;
 |Intel Atom Z5xx Series and Intel System Controller Hub US15Wx (eMenlow)&lt;br /&gt;
 |Timberdale&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, IDE, Audio, KS8842 GigE, EMGD, Video-in, SDHC, TSC2007, I2S, SDHC, ADV7180, BT, Radio&lt;br /&gt;
 |1.0.1, 1.1, 1.2&lt;br /&gt;
 |EOL&lt;br /&gt;
 |No known driver issues&lt;br /&gt;
 |unavailable 5/11&lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32&lt;br /&gt;
 |Crown Bay&lt;br /&gt;
 |Intel Atom E6xx Series for Embedded (Tunnel Creek)&lt;br /&gt;
 |Intel Platform Controller Hub EG20T (Top Cliff)&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, SATA, Audio, GigE, EMGD, PHUB, CAN&lt;br /&gt;
 |1.2&lt;br /&gt;
 |1.3&lt;br /&gt;
 |No known driver issues&lt;br /&gt;
 |&lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32&lt;br /&gt;
 |Stephenville/Crossville&lt;br /&gt;
 |Intel Atom E6xx Series for Embedded (Tunnel Creek)&lt;br /&gt;
 |Oki Semiconductors ML7213 IVI IOH&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, SATA, Audio, EMGD, SD/SDIO/MMC, USB-OTG, TDM, sDVO&lt;br /&gt;
 |1.2&lt;br /&gt;
 |1.3&lt;br /&gt;
 |[https://bugs.meego.com/buglist.cgi?short_desc=oki&amp;amp;classification=MeeGo%20Platform&amp;amp;query_format=advanced&amp;amp;bug_status=NEW&amp;amp;bug_status=NEEDINFO&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=WAITING%20FOR%20UPSTREAM&amp;amp;bug_status=REOPENED&amp;amp;version=1.2&amp;amp;version=1.3&amp;amp;short_desc_type=allwordssubstr&amp;amp;component=Kernel%20and%20drivers%20%28generic%29&amp;amp;product=MeeGo%20IVI CV-ML7213 bugs ]&lt;br /&gt;
 |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MeeGo IVI Trunk Prototype Platforms===&lt;br /&gt;
&lt;br /&gt;
;IA32&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Image name&lt;br /&gt;
! Platform name&lt;br /&gt;
! Intel chipset&lt;br /&gt;
! I/O Hub name&lt;br /&gt;
! drivers included&lt;br /&gt;
! status &lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32-conx&lt;br /&gt;
 |Stephenville/Northville/Crossville&lt;br /&gt;
 |Intel Atom E6xx Series for Embedded (Tunnel Creek)&lt;br /&gt;
 |ST Microelectronics ConneXt STA2x11&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, SATA, Audio, GigE, EMGD, Video-in, MMC, '''CAN''', USB-OTG, MSP, BT, FM-Radio&lt;br /&gt;
 |in development, several issues open, visit [[IVI Images for ConneXt IOH]] for more information&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;ARM&lt;br /&gt;
:Jeremiah Foster and Jan-Simon Moeller are working on updates to enable automated weekly builds of MeeGo IVI images for the Beagleboard-XM. &lt;br /&gt;
:The suggested reference platform is the Beagleboard xM. The [[ARM/OMAP4_Panda|PandaBoard]] and [[ARM/Snowball|Snowball]] most likely will be supported in the future. &lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Image name&lt;br /&gt;
! Platform name&lt;br /&gt;
! chipset&lt;br /&gt;
! status &lt;br /&gt;
 |- &lt;br /&gt;
 | meego-ivi-armv7l&lt;br /&gt;
 | Beagleboard xM&lt;br /&gt;
 | OMAP 3&lt;br /&gt;
 | Not yet smoke tested. No QA&lt;br /&gt;
 |- &lt;br /&gt;
 | meego-ivi-armv7l&lt;br /&gt;
 | Tegra2&lt;br /&gt;
 | ARM v7 rev 0&lt;br /&gt;
 | Not yet smoke tested. No QA&lt;br /&gt;
 |- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===[http://sf2011.meego.com/sites/all/files/slides/meegocon2011developmentboardbofslides.pdf MeeGo IVI Development Boards]===&lt;br /&gt;
&lt;br /&gt;
;IA32&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Platform name&lt;br /&gt;
! Intel chipset&lt;br /&gt;
! I/O Hub name&lt;br /&gt;
! drivers included&lt;br /&gt;
! price/availability as of 5/11 &lt;br /&gt;
! tested with MeeGo?&lt;br /&gt;
 |- &lt;br /&gt;
 |Intel Embedded Development Board 1-N450/1-D510&lt;br /&gt;
 |N450 or D510&lt;br /&gt;
 |Intel 82801HM&lt;br /&gt;
 |SSD, WiFi, SATA, USB, SPI, GPIO, PCIe, UART, GigE, Audio, IEGD, DMA, I2C&lt;br /&gt;
 |[http://edc.intel.com/Platforms/Atom-N450-D410-D510/Development-Board/#bd1-content=bd1-toggle~~visible-content $149 for registered users]&lt;br /&gt;
 |[http://wiki.meego.com/Devices/Ideapad yes]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;ARM&lt;br /&gt;
&lt;br /&gt;
Per Stskeeps on meego-arm IRC on 6/2/2011, Nokia-provided N900 SGX530 drivers with hardfp extensions are known to work with SGX530 revisions 121 and 125.  Which OMAP3 SoCs have revision 121 and 125 is not always straightforward to determine. dm8tbr reports problems with N900 hardfp drivers on Beagleboard xM. Stskeeps reports success with these drivers on Beagleboard C4.  Tripzero reports success with hardfp drivers on old build of IGEPv2 that had the Cortex A8 processor.   &lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Platform name&lt;br /&gt;
! Processor&lt;br /&gt;
! GPU; [[http://wiki.meego.com/ARM/hardfp hardfp?]]&lt;br /&gt;
! Memory&lt;br /&gt;
! Features&lt;br /&gt;
! price/availability as of 5/11 &lt;br /&gt;
! tested with MeeGo?&lt;br /&gt;
|- &lt;br /&gt;
|[http://www.igloocommunity.org/ Snowball] (usable in end products)&lt;br /&gt;
 |Cortex A-9 Dual-Core Nova A9500 1 GHz&lt;br /&gt;
 |ARM Mali 400, [http://igloocommunity.org/news/ promised; no GPU support in 6/11 BSP]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |HDMI, WiFi b/g/n, Bluetooth, GPS, USB OTG, FSMC, HSI, Audio, MiPi CSI / Camera, LCD, MiPi DSI, UART, SPI, I2C, GPIO, SD/MMC, accelerometer, magnetometer, gyrometer, pressure sensor [[ARM/Snowball|(complete specs)]] &lt;br /&gt;
 | [https://shop.strato.com/epages/61428605.sf/en_GB/?ObjectPath=/Shops/61428605/Products/905-00024-B11 160€]&lt;br /&gt;
 | [[ARM/Snowball|yes]]&lt;br /&gt;
 |- &lt;br /&gt;
|[http://www.igep.es/index.php?option=com_content&amp;amp;view=article&amp;amp;id=46&amp;amp;Itemid=55 IGEPv2]&lt;br /&gt;
 |[http://www.igep.es/public_docs/IGEPv2/HW_User_Manuals/MAN-PR-IGEP.0020.HW_USER_MANUAL.pdf DM3730 1 GHz]&lt;br /&gt;
 |Imagination Technologies SGX530, yes? (tested by IGES with both TI and Nokia drivers)&lt;br /&gt;
 |512 MB&lt;br /&gt;
 |GigE, WiFi b/g, Bluetooth, USB OTG, USB Host, DVI-D, audio, SPI, UART, LCD, serial; [http://shop.igep.es/index.php?main_page=product_info&amp;amp;cPath=1&amp;amp;products_id=49 expansion board] with GSM, VGA, video in, camera, '''CAN'''&lt;br /&gt;
 | 116.0€ and up plus 152.0€ for expansion board&lt;br /&gt;
 | yes, but with older Cortex A8 build&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://www.variscite.com/products/item/35-var-am35customboard Variscite VAR-AM3517 CustomBoard]&lt;br /&gt;
 |[http://www.variscite.com/images/stories/DataSheets/VAR-SOM-AM35_1_15.pdf Cortex A-8 Sitara 600 MHz]&lt;br /&gt;
 |Imagination Technologies SGX530, [[ARM/Meego_on_Beagleboard_from_scratch|no]]&lt;br /&gt;
 |256 MB&lt;br /&gt;
 |DMA, QCIF, LCD, SDTV, S-Video, USB, USB OTG, I2C, McSPI, GPIO, MMC, JTAG, '''CAN'''&lt;br /&gt;
 |$1150 plus shipping &lt;br /&gt;
 | no&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://www.origenboard.org Samsung Origen]&lt;br /&gt;
 |Samsung Exynos 4210 Cortex A-9 1 GHz &lt;br /&gt;
 |ARM Mali 400, [http://forums.arm.com/index.php?/topic/14236-mali-gpus-linux-device-drivers-r2p0-05rel0-source-code-released/ reuse Snowball drivers?]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |HMDI, SD, WiFi, Bluetooth, audio, LCD, JTAG, camera&lt;br /&gt;
 |[http://www.insignal.co.kr &amp;quot;sub-$200&amp;quot;, June 25]&lt;br /&gt;
 |no&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=IMX53QSB i.MX53 Quick Start Board]&lt;br /&gt;
 |Cortex A-8 1 GHz &lt;br /&gt;
 |Freescale GPUv3, [http://imxcommunity.org/profiles/blogs/ubuntu-rebuilt-with-hardfp yes]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |LVDS, LCD, HDMI, SPDIF, I2C, SSI, SPI, SD/MMC, microSD, SATA, GigE, USB, USB OTG, JTAG, UART, accelerometer&lt;br /&gt;
 |$149&lt;br /&gt;
 |[http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=osDlTdl5lAk yes, similar HW]&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://pandaboard.org/ Pandaboard]&lt;br /&gt;
 |Cortex A-9 Dual-Core OMAP 4430 1 GHz&lt;br /&gt;
 |Imagination Technologies SGX540, [http://article.gmane.org/gmane.comp.embedded.pandaboard/1771/match=hardfp not yet]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |SD/MMC, UART, Camera connector, USB OTG, Audio, GiGE, LCD connector, HDMI, WiFi, Bluetooth, JTAG, SPI, GPIO, I2C, McBSP&lt;br /&gt;
 |[http://pandaboard.org/content/buy $179]&lt;br /&gt;
 |[[ARM/OMAP4_Panda|yes]]&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://beagle.s3.amazonaws.com/design/xM-A/BB_xM_SRM_A2_01.pdf Beagleboard Xm]&lt;br /&gt;
 |Cortex A-8 DM3730 1GHz&lt;br /&gt;
 |Imagination Technologies SGX530, [[ARM/Meego_on_Beagleboard_from_scratch|no]]&lt;br /&gt;
 |512 MB&lt;br /&gt;
 |uSD, USB, USB OTG, UART, McBSP, JTAG, GiGE, Audio, DVI-D, Camera connector, McBSP, I2C, GPIO, MMC2/3, ADC, LCD connector&lt;br /&gt;
 |[http://beagleboard.org/buy $149]&lt;br /&gt;
 |[[ARM/Meego_on_Beagleboard_from_scratch|yes]]&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://beagleboard.org/static/BBSRM_latest.pdf Beagleboard C4]&lt;br /&gt;
 |Cortex A-8 OMAP3530 720 MHz&lt;br /&gt;
 |Imagination Technologies SGX530, [[ARM/Meego_on_Beagleboard_from_scratch|no]]&lt;br /&gt;
 |256 MB&lt;br /&gt;
 |I2C, I2S, SPI, MMC, USB, UART, USB OTG, S-Video, Audio, LCD, JTAG, GiGE&lt;br /&gt;
 |[http://beagleboard.org/buy $125]&lt;br /&gt;
 |[[ARM/Meego_IVI_on_Beagle|yes]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Releases ==&lt;br /&gt;
* [[MeeGo IVI 1.2 | MeeGo IVI 1.2]]&lt;br /&gt;
* [http://meego.com/downloads/releases/1.1/meego-v1.1-in-vehicle-infotainment-ivi MeeGo IVI 1.1]&lt;br /&gt;
* [http://meego.com/downloads/releases/1.0/meego-v1.0-in-vehicle-infotainment-ivi MeeGo IVI 1.0]&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
* IRC irc.freenode.org #meego-ivi&lt;br /&gt;
* Mailing list sign-up: http://lists.meego.com/listinfo/meego-ivi&lt;br /&gt;
* Mailing list archive: http://lists.meego.com/pipermail/meego-ivi/&lt;br /&gt;
* [[Presentations_about_meego-ivi#Presentations_and_Articles_about_MeeGo_IVI|Presentations and articles about meego-ivi]]&lt;br /&gt;
* [[In-vehicle/IVI for users and developers|IVI for users and developers]]&lt;br /&gt;
* [[IVITopic|Topics]]&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle</id>
		<title>In-vehicle</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle"/>
				<updated>2011-07-04T16:12:26Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Other Scroll Wheels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= In-vehicle Infotainment (IVI) =&lt;br /&gt;
&lt;br /&gt;
MeeGo IVI is setting the new standard for in-vehicle infotainment in cars, buses, airplanes, etc. MeeGo IVI is a Free and Open-Source Software (FOSS) OS distribution integrating the MeeGo Core for embedded systems leveraging and extending functionality known from mobile computers and handsets into vehicles. Building on the MeeGo OS Base and the MeeGo OS Middleware the MeeGo IVI software stack enables rich Internet and multimedia experiences to consumers while traveling.&lt;br /&gt;
&lt;br /&gt;
== Organization ==&lt;br /&gt;
&lt;br /&gt;
The MeeGo IVI organization is composed of a Working Group and a Project Team. The Working Group is responsible for the definition of the roadmap and the MeeGo IVI Project Team executes the implementation through the partnering organizations using the best practices of open-source development. Through the collaboration of organizations and companies covering automotive, computer hardware, communications, and software industries this partnership enables jump-starting product development for rapid delivery allowing adopters to concentrate on their core competencies while benefiting from this extensive know-how and the open-source assets.&lt;br /&gt;
&lt;br /&gt;
For a graphical representation of the organizational structure: [[Media:MeeGo_IVI_OrgStruct.pdf]]&lt;br /&gt;
&lt;br /&gt;
=== Working Group ===&lt;br /&gt;
&lt;br /&gt;
The Working Group is composed from the following members and roles:&lt;br /&gt;
&lt;br /&gt;
* Working Group Chair&lt;br /&gt;
** Represents and promotes the Working Group.&lt;br /&gt;
** Leads strategic discussions on requirements, direction, policies.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current Working Group Chair: '''[http://meego.com/users/RudolfStreif Rudi Streif (Linux Foundation)]'''&lt;br /&gt;
&lt;br /&gt;
* Working Group Representative (the number is not limited, others participants to be invited)&lt;br /&gt;
** Represents his/her organization in the Working Group.&lt;br /&gt;
** Collects, organizes, prioritizes, and contributes requirements from his/her organization.&lt;br /&gt;
** Commitment: 20% - 50% dependent on how actively the organization wants to contribute requirements.&lt;br /&gt;
** Current Working Group Representatives:&lt;br /&gt;
*** Intel: '''[http://meego.com/users/jahoffmann Joel Hoffmann]'''&lt;br /&gt;
*** LG Electronics: '''[https://meego.com/users/hyungjin Hyungjin Jeon]'''&lt;br /&gt;
*** Nokia: '''[http://meego.com/users/alistair Alistair Adams]'''&lt;br /&gt;
*** Pelagicore: '''[http://meego.com/users/mikael Mikael Soderberg]'''&lt;br /&gt;
*** Visteon: '''[http://meego.com/users/PavelKonopelko Pavel Konopelko]'''&lt;br /&gt;
&lt;br /&gt;
* Product Manager (cross-function across Working Group and Project Team)&lt;br /&gt;
** Unifies and prioritizes overall requirements set.&lt;br /&gt;
** Owns the roadmap.&lt;br /&gt;
** co-leads the Project Team and defines the release schedule together with the Project Manager.&lt;br /&gt;
** Accountable to the Working Group for delivery of agreed upon requirements.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Full job description: [[Media:MeeGo_IVI_PDM.pdf]]&lt;br /&gt;
** Current Product Manager:&lt;br /&gt;
&lt;br /&gt;
* Program Manager (cross-functional across Working Group and Project Team)&lt;br /&gt;
** Works with the Lead Architects and Lead Designers on effort estimates and schedules.&lt;br /&gt;
** co-leads the Project Team together with the Product Manager.&lt;br /&gt;
** Accountable to the Working Group for deliverables and schedule.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Full job description: [[Media:MeeGo_IVI_PJM.pdf]]&lt;br /&gt;
** Current Program Manager: '''[http://meego.com/users/joel Joel Clark (Intel)]'''&lt;br /&gt;
&lt;br /&gt;
==== Working Group Meetings and Minutes ====&lt;br /&gt;
The Working Group meets regularly. Information on current and past meetings can be found on [[in-vehicle/working-group|IVI Working Group]].&lt;br /&gt;
&lt;br /&gt;
=== Project Team ===&lt;br /&gt;
&lt;br /&gt;
The Project Team has members with various roles that are subject to change according to the requirements of the current projects. The number of members and roles in the Project Team is not limited and grow as the team gains momentum and takes on larger tasks.&lt;br /&gt;
&lt;br /&gt;
* Lead Architect&lt;br /&gt;
** Defines technical architecture to meet the requirements n terms of functionality, performance, etc.&lt;br /&gt;
** Defines interfaces between modules and components together with other Lead Architects within the same and/or other Project Teams.&lt;br /&gt;
** Performs feasibility studies and provides feedback to product manager on technical challenges, difficulties, “show stoppers”.&lt;br /&gt;
** Commitment: &amp;gt; 50% dependent on sub-project complexity.&lt;br /&gt;
** Current Lead Architect: '''[http://meego.com/users/tomcounihan Tom Counihan (Intel)]'''&lt;br /&gt;
&lt;br /&gt;
* Lead Designer (multiple roles)&lt;br /&gt;
** Responsible for the detailed implementation design of the architecture.&lt;br /&gt;
** Estimates the effort necessary for implementation.&lt;br /&gt;
** Leads implementation team comprised of engineering resources of his/her organization.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current Lead Designers&lt;br /&gt;
***&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
* QA Lead (multiple roles)&lt;br /&gt;
** Transforms requirements into functionality test plans.&lt;br /&gt;
** Develops interface and compliance test procedures according to the architecture.&lt;br /&gt;
** Implements black box and white box test tools through the resources of his/her organization.&lt;br /&gt;
** Executes test plans and provides test reports.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current QA Leads:&lt;br /&gt;
***&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
* Release Manager&lt;br /&gt;
** Coordinates bug tracking, build and release with the design and QA leads.&lt;br /&gt;
** Develops and manages build tools.&lt;br /&gt;
** Leads build and release engineering team.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
** Current Release Manager: '''[http://meego.com/users/jeremiah Jeremiah Foster (Pelagicore)]'''&lt;br /&gt;
&lt;br /&gt;
* Engineers for Development and QA (many roles)&lt;br /&gt;
** Implement and test the required functionality.&lt;br /&gt;
** Qualification varies with sub-project.&lt;br /&gt;
** Commitment: full-time role.&lt;br /&gt;
&lt;br /&gt;
== Shipping MeeGo IVI Products == &lt;br /&gt;
&lt;br /&gt;
* [http://news.softpedia.com/news/MeeGo-Powered-In-Vehicle-Information-System-Makes-Appearance-at-MWC-2011-184651.shtml Hawtai B11]&lt;br /&gt;
* [http://www.allaboutmeego.com/news/item/12918_Red_Flag_Software_announces_Me.php Geely EC8]&lt;br /&gt;
* iKarPC [http://files.icp-deutschland.de/produkte2/124273/web/icp/IKARPC-W08A-datasheet-20110222.pdf datasheet] and [http://www.contradata.it/cataloghi/IEI_2011_In_Vehicle_PC.pdf catalog page]&lt;br /&gt;
&lt;br /&gt;
== MeeGo IVI Demos ==&lt;br /&gt;
&lt;br /&gt;
*  MeeGo IVI UI from ICS: [http://www.youtube.com/watch?v=ZWbfGzyLoh8 video] and [http://www.ics.com/services/qtquick info], including source code&lt;br /&gt;
&lt;br /&gt;
== MeeGo IVI UI (HMI)==&lt;br /&gt;
&lt;br /&gt;
MeeGo IVI includes a &amp;lt;b&amp;gt;Sample&amp;lt;/b&amp;gt; UI.  This UI is sample only because it has always been stolen from some other MeeGo device project and ported with little change to the IVI builds.  Also the underlaying UI framework and the UI applications have changed in every version of MeeGo so far.  &lt;br /&gt;
&lt;br /&gt;
The MeeGo IVI 1.2.0 UI is primarily based on a collection of QML based applications designed for MeeGo Tablet. It has a IVI specific taskbar app launcher that adds support for scrollwheel and voice command imputs.  &lt;br /&gt;
&lt;br /&gt;
* [[In-vehicle/IVIHome_Guide | MeeGo IVI 1.2.0 IVI home screen / taskbar User Guide ]]&lt;br /&gt;
&lt;br /&gt;
The MeeGo IVI Home screen / taskbar is tested with a Contour ShuttleExpress Scrollweel.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Contour-Design-00496-0-Shuttle-Xpress/dp/B0032Y0OH0/ref=sr_1_2?ie=UTF8&amp;amp;qid=1309555207&amp;amp;sr=8-2 Contour ShuttleXpress infromation ]&lt;br /&gt;
&lt;br /&gt;
==== Other Scroll Wheels ====&lt;br /&gt;
Other scrollwheels that have been used by the MeeGo IVI community&lt;br /&gt;
&lt;br /&gt;
* [ http://wiki.meego.com/3Dconnexion ]&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
&lt;br /&gt;
The roadmap is always under discussion. But the important thing it that it is open and transparent - and you can contribute. The path to contribution begins on the MeeGo IVI mailing list. This list is the central communication point with all the MeeGo IVI stakeholders participating. Through this list you can contribute ideas, code, and other resources. You will also receive support and advice as well as pointers to other resources on this list, this is where the community comes together.&lt;br /&gt;
&lt;br /&gt;
The roadmap pages are the central collaboration point on laying out the future of MeeGo IVI. Here architecture details, system diagrams, use cases, etc. are shared.&lt;br /&gt;
&lt;br /&gt;
[[In-vehicle/Roadmap|View the Roadmap]]&lt;br /&gt;
 &lt;br /&gt;
Before any new feature is committed to the Roadmap, a feature request is created in http://bugs.meego.com. Current MeeGo IVI feature requests can be found [https://bugs.meego.com/buglist.cgi?query_format=specific&amp;amp;order=relevance+desc&amp;amp;bug_status=__open__&amp;amp;product=MeeGo+IVI+Features&amp;amp;content= here]&lt;br /&gt;
&lt;br /&gt;
[https://bugs.meego.com/enter_bug.cgi?product=MeeGo%20IVI%20Features Submit new MeeGo IVI feature request ]&lt;br /&gt;
&lt;br /&gt;
For a Feature Request to become part of the MeeGo IVI release plan, it needs to clearly define the engineering requirements and have resources working on development. &lt;br /&gt;
&lt;br /&gt;
More details on the long term direction and short term Release plan may be found in the [[In-vehicle/Roadmap|IVI roadmap]].&lt;br /&gt;
&lt;br /&gt;
== Weekly Builds ==&lt;br /&gt;
Automated weekly MeeGo IVI repository and image builds are available on meego.com for testing and development baselining. Each build has a build version and date in its path. [[Release Engineering/Release Versioning|MeeGo Release Versioning]] explains the build version numbering scheme. For example '''1.2.80.xx''' is a 1.2 Alpha build, '''1.2.90.xx''' is a 1.2 Beta build, '''1.2.99.x''' is a 1.2 Release Candidate, and '''1.2.1''' is the first release update after the final 1.2 release. &lt;br /&gt;
&lt;br /&gt;
[http://repo.meego.com/MeeGo/builds/trunk/ MeeGo weekly build repositories]&lt;br /&gt;
&lt;br /&gt;
Each weekly build directory is named with a version number and date.  IVI live .iso images are found under the ''images'' link in each weekly build directory. A list of every package included a live image is found in the same directory as the image. RPM packages are found under the ''oss'' and ''non-oss'' links under ''repos'' in the weekly build directory.&lt;br /&gt;
&lt;br /&gt;
==Upcoming Releases==&lt;br /&gt;
===Meego 1.2.0 Update ===&lt;br /&gt;
&lt;br /&gt;
;Update release dates&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Update name&lt;br /&gt;
! Code Freeze&lt;br /&gt;
! Release&lt;br /&gt;
 |- &lt;br /&gt;
 |Update 1&lt;br /&gt;
 |June 30&lt;br /&gt;
 |July 7&lt;br /&gt;
 |-&lt;br /&gt;
 |Update 2&lt;br /&gt;
 |August 11&lt;br /&gt;
 |August 18&lt;br /&gt;
 |-&lt;br /&gt;
 |Update 3&lt;br /&gt;
 |Sept 22&lt;br /&gt;
 |Sept 29&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
====Links====&lt;br /&gt;
When the first MeeGo 1.2.0 update is released July 7, 2011, the updated packages will show up in the following repository:&lt;br /&gt;
* [http://repo.meego.com/MeeGo/updates/1.2.0/repos/ MeeGo 1.2.0 Update Repositories]&lt;br /&gt;
&lt;br /&gt;
* [https://bugs.meego.com/buglist.cgi?emailtype2=substring&amp;amp;field0-0-0=flagtypes.name&amp;amp;classification=MeeGo%20Platform&amp;amp;emailcc2=1&amp;amp;query_format=advanced&amp;amp;bug_status=NEW&amp;amp;bug_status=NEEDINFO&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=WAITING%20FOR%20UPSTREAM&amp;amp;bug_status=REOPENED&amp;amp;bug_status=RESOLVED&amp;amp;bug_status=RELEASED&amp;amp;bug_status=VERIFIED&amp;amp;email2=ivi-bugs&amp;amp;version=1.2.0&amp;amp;type0-0-0=anywordssubstr&amp;amp;value0-0-0=meego_update_release_blocker%2B&amp;amp;known_name=ivibugs_1.2.0Update%2B MeeGo IVI 1.2.0 Update approved bugs ]&lt;br /&gt;
&lt;br /&gt;
* [https://bugs.meego.com/buglist.cgi?emailtype2=substring&amp;amp;field0-0-0=flagtypes.name&amp;amp;classification=MeeGo%20Platform&amp;amp;emailcc2=1&amp;amp;query_format=advanced&amp;amp;bug_status=NEW&amp;amp;bug_status=NEEDINFO&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=WAITING%20FOR%20UPSTREAM&amp;amp;bug_status=REOPENED&amp;amp;bug_status=RESOLVED&amp;amp;bug_status=RELEASED&amp;amp;bug_status=VERIFIED&amp;amp;email2=ivi-bugs&amp;amp;version=1.2.0&amp;amp;type0-0-0=anywordssubstr&amp;amp;value0-0-0=meego_update_release_blocker%3F&amp;amp;known_name=ivibugs_1.2.0Update%3F MeeGo IVI 1.2.0 Update proposed bugs ]&lt;br /&gt;
&lt;br /&gt;
* [[ Quality/IVI 1.2 Update | IVI 1.2.0 Update bug fix status]]&lt;br /&gt;
&lt;br /&gt;
===Meego 1.3===&lt;br /&gt;
&lt;br /&gt;
;MeeGo 1.3 milestones&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Milestone&lt;br /&gt;
! Date&lt;br /&gt;
 |- &lt;br /&gt;
 |New Package Planning complete  ||June 30&lt;br /&gt;
 |-&lt;br /&gt;
 |Core Package integration ||July 26&lt;br /&gt;
 |-&lt;br /&gt;
 |IVI Package integration / version freeze ||August 12&lt;br /&gt;
 |-&lt;br /&gt;
 |1.3 branch and Release Candidate 1 ||October 4&lt;br /&gt;
 |-&lt;br /&gt;
 |1.3 final release ||October 27&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Platforms== &lt;br /&gt;
===MeeGo IVI Platforms Supported in Releases===&lt;br /&gt;
&lt;br /&gt;
;IA32&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Image name&lt;br /&gt;
! Platform name&lt;br /&gt;
! Intel chipset&lt;br /&gt;
! I/O Hub name&lt;br /&gt;
! drivers included&lt;br /&gt;
! Releases&lt;br /&gt;
! Plan&lt;br /&gt;
! status &lt;br /&gt;
! price/availability&lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32&lt;br /&gt;
 |Congatec IVI Kit (Russellville)&lt;br /&gt;
 |Intel Atom Z5xx Series and Intel System Controller Hub US15Wx (eMenlow)&lt;br /&gt;
 |Timberdale&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, IDE, Audio, KS8842 GigE, EMGD, Video-in, SDHC, TSC2007, I2S, SDHC, ADV7180, BT, Radio&lt;br /&gt;
 |1.0.1, 1.1, 1.2&lt;br /&gt;
 |EOL&lt;br /&gt;
 |No known driver issues&lt;br /&gt;
 |unavailable 5/11&lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32&lt;br /&gt;
 |Crown Bay&lt;br /&gt;
 |Intel Atom E6xx Series for Embedded (Tunnel Creek)&lt;br /&gt;
 |Intel Platform Controller Hub EG20T (Top Cliff)&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, SATA, Audio, GigE, EMGD, PHUB, CAN&lt;br /&gt;
 |1.2&lt;br /&gt;
 |1.3&lt;br /&gt;
 |No known driver issues&lt;br /&gt;
 |&lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32&lt;br /&gt;
 |Stephenville/Crossville&lt;br /&gt;
 |Intel Atom E6xx Series for Embedded (Tunnel Creek)&lt;br /&gt;
 |Oki Semiconductors ML7213 IVI IOH&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, SATA, Audio, EMGD, SD/SDIO/MMC, USB-OTG, TDM, sDVO&lt;br /&gt;
 |1.2&lt;br /&gt;
 |1.3&lt;br /&gt;
 |[https://bugs.meego.com/buglist.cgi?short_desc=oki&amp;amp;classification=MeeGo%20Platform&amp;amp;query_format=advanced&amp;amp;bug_status=NEW&amp;amp;bug_status=NEEDINFO&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=WAITING%20FOR%20UPSTREAM&amp;amp;bug_status=REOPENED&amp;amp;version=1.2&amp;amp;version=1.3&amp;amp;short_desc_type=allwordssubstr&amp;amp;component=Kernel%20and%20drivers%20%28generic%29&amp;amp;product=MeeGo%20IVI CV-ML7213 bugs ]&lt;br /&gt;
 |&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MeeGo IVI Trunk Prototype Platforms===&lt;br /&gt;
&lt;br /&gt;
;IA32&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Image name&lt;br /&gt;
! Platform name&lt;br /&gt;
! Intel chipset&lt;br /&gt;
! I/O Hub name&lt;br /&gt;
! drivers included&lt;br /&gt;
! status &lt;br /&gt;
 |- &lt;br /&gt;
 |meego-ivi-ia32-conx&lt;br /&gt;
 |Stephenville/Northville/Crossville&lt;br /&gt;
 |Intel Atom E6xx Series for Embedded (Tunnel Creek)&lt;br /&gt;
 |ST Microelectronics ConneXt STA2x11&lt;br /&gt;
 |GPIO, DMA, SPI, I2C, UART, USB, SATA, Audio, GigE, EMGD, Video-in, MMC, '''CAN''', USB-OTG, MSP, BT, FM-Radio&lt;br /&gt;
 |in development, several issues open, visit [[IVI Images for ConneXt IOH]] for more information&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;ARM&lt;br /&gt;
:Jeremiah Foster and Jan-Simon Moeller are working on updates to enable automated weekly builds of MeeGo IVI images for the Beagleboard-XM. &lt;br /&gt;
:The suggested reference platform is the Beagleboard xM. The [[ARM/OMAP4_Panda|PandaBoard]] and [[ARM/Snowball|Snowball]] most likely will be supported in the future. &lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Image name&lt;br /&gt;
! Platform name&lt;br /&gt;
! chipset&lt;br /&gt;
! status &lt;br /&gt;
 |- &lt;br /&gt;
 | meego-ivi-armv7l&lt;br /&gt;
 | Beagleboard xM&lt;br /&gt;
 | OMAP 3&lt;br /&gt;
 | Not yet smoke tested. No QA&lt;br /&gt;
 |- &lt;br /&gt;
 | meego-ivi-armv7l&lt;br /&gt;
 | Tegra2&lt;br /&gt;
 | ARM v7 rev 0&lt;br /&gt;
 | Not yet smoke tested. No QA&lt;br /&gt;
 |- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===[http://sf2011.meego.com/sites/all/files/slides/meegocon2011developmentboardbofslides.pdf MeeGo IVI Development Boards]===&lt;br /&gt;
&lt;br /&gt;
;IA32&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Platform name&lt;br /&gt;
! Intel chipset&lt;br /&gt;
! I/O Hub name&lt;br /&gt;
! drivers included&lt;br /&gt;
! price/availability as of 5/11 &lt;br /&gt;
! tested with MeeGo?&lt;br /&gt;
 |- &lt;br /&gt;
 |Intel Embedded Development Board 1-N450/1-D510&lt;br /&gt;
 |N450 or D510&lt;br /&gt;
 |Intel 82801HM&lt;br /&gt;
 |SSD, WiFi, SATA, USB, SPI, GPIO, PCIe, UART, GigE, Audio, IEGD, DMA, I2C&lt;br /&gt;
 |[http://edc.intel.com/Platforms/Atom-N450-D410-D510/Development-Board/#bd1-content=bd1-toggle~~visible-content $149 for registered users]&lt;br /&gt;
 |[http://wiki.meego.com/Devices/Ideapad yes]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
;ARM&lt;br /&gt;
&lt;br /&gt;
Per Stskeeps on meego-arm IRC on 6/2/2011, Nokia-provided N900 SGX530 drivers with hardfp extensions are known to work with SGX530 revisions 121 and 125.  Which OMAP3 SoCs have revision 121 and 125 is not always straightforward to determine. dm8tbr reports problems with N900 hardfp drivers on Beagleboard xM. Stskeeps reports success with these drivers on Beagleboard C4.  Tripzero reports success with hardfp drivers on old build of IGEPv2 that had the Cortex A8 processor.   &lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Platform name&lt;br /&gt;
! Processor&lt;br /&gt;
! GPU; [[http://wiki.meego.com/ARM/hardfp hardfp?]]&lt;br /&gt;
! Memory&lt;br /&gt;
! Features&lt;br /&gt;
! price/availability as of 5/11 &lt;br /&gt;
! tested with MeeGo?&lt;br /&gt;
|- &lt;br /&gt;
|[http://www.igloocommunity.org/ Snowball] (usable in end products)&lt;br /&gt;
 |Cortex A-9 Dual-Core Nova A9500 1 GHz&lt;br /&gt;
 |ARM Mali 400, [http://igloocommunity.org/news/ promised; no GPU support in 6/11 BSP]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |HDMI, WiFi b/g/n, Bluetooth, GPS, USB OTG, FSMC, HSI, Audio, MiPi CSI / Camera, LCD, MiPi DSI, UART, SPI, I2C, GPIO, SD/MMC, accelerometer, magnetometer, gyrometer, pressure sensor [[ARM/Snowball|(complete specs)]] &lt;br /&gt;
 | [https://shop.strato.com/epages/61428605.sf/en_GB/?ObjectPath=/Shops/61428605/Products/905-00024-B11 160€]&lt;br /&gt;
 | [[ARM/Snowball|yes]]&lt;br /&gt;
 |- &lt;br /&gt;
|[http://www.igep.es/index.php?option=com_content&amp;amp;view=article&amp;amp;id=46&amp;amp;Itemid=55 IGEPv2]&lt;br /&gt;
 |[http://www.igep.es/public_docs/IGEPv2/HW_User_Manuals/MAN-PR-IGEP.0020.HW_USER_MANUAL.pdf DM3730 1 GHz]&lt;br /&gt;
 |Imagination Technologies SGX530, yes? (tested by IGES with both TI and Nokia drivers)&lt;br /&gt;
 |512 MB&lt;br /&gt;
 |GigE, WiFi b/g, Bluetooth, USB OTG, USB Host, DVI-D, audio, SPI, UART, LCD, serial; [http://shop.igep.es/index.php?main_page=product_info&amp;amp;cPath=1&amp;amp;products_id=49 expansion board] with GSM, VGA, video in, camera, '''CAN'''&lt;br /&gt;
 | 116.0€ and up plus 152.0€ for expansion board&lt;br /&gt;
 | yes, but with older Cortex A8 build&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://www.variscite.com/products/item/35-var-am35customboard Variscite VAR-AM3517 CustomBoard]&lt;br /&gt;
 |[http://www.variscite.com/images/stories/DataSheets/VAR-SOM-AM35_1_15.pdf Cortex A-8 Sitara 600 MHz]&lt;br /&gt;
 |Imagination Technologies SGX530, [[ARM/Meego_on_Beagleboard_from_scratch|no]]&lt;br /&gt;
 |256 MB&lt;br /&gt;
 |DMA, QCIF, LCD, SDTV, S-Video, USB, USB OTG, I2C, McSPI, GPIO, MMC, JTAG, '''CAN'''&lt;br /&gt;
 |$1150 plus shipping &lt;br /&gt;
 | no&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://www.origenboard.org Samsung Origen]&lt;br /&gt;
 |Samsung Exynos 4210 Cortex A-9 1 GHz &lt;br /&gt;
 |ARM Mali 400, [http://forums.arm.com/index.php?/topic/14236-mali-gpus-linux-device-drivers-r2p0-05rel0-source-code-released/ reuse Snowball drivers?]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |HMDI, SD, WiFi, Bluetooth, audio, LCD, JTAG, camera&lt;br /&gt;
 |[http://www.insignal.co.kr &amp;quot;sub-$200&amp;quot;, June 25]&lt;br /&gt;
 |no&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=IMX53QSB i.MX53 Quick Start Board]&lt;br /&gt;
 |Cortex A-8 1 GHz &lt;br /&gt;
 |Freescale GPUv3, [http://imxcommunity.org/profiles/blogs/ubuntu-rebuilt-with-hardfp yes]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |LVDS, LCD, HDMI, SPDIF, I2C, SSI, SPI, SD/MMC, microSD, SATA, GigE, USB, USB OTG, JTAG, UART, accelerometer&lt;br /&gt;
 |$149&lt;br /&gt;
 |[http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=osDlTdl5lAk yes, similar HW]&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://pandaboard.org/ Pandaboard]&lt;br /&gt;
 |Cortex A-9 Dual-Core OMAP 4430 1 GHz&lt;br /&gt;
 |Imagination Technologies SGX540, [http://article.gmane.org/gmane.comp.embedded.pandaboard/1771/match=hardfp not yet]&lt;br /&gt;
 |1 GB&lt;br /&gt;
 |SD/MMC, UART, Camera connector, USB OTG, Audio, GiGE, LCD connector, HDMI, WiFi, Bluetooth, JTAG, SPI, GPIO, I2C, McBSP&lt;br /&gt;
 |[http://pandaboard.org/content/buy $179]&lt;br /&gt;
 |[[ARM/OMAP4_Panda|yes]]&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://beagle.s3.amazonaws.com/design/xM-A/BB_xM_SRM_A2_01.pdf Beagleboard Xm]&lt;br /&gt;
 |Cortex A-8 DM3730 1GHz&lt;br /&gt;
 |Imagination Technologies SGX530, [[ARM/Meego_on_Beagleboard_from_scratch|no]]&lt;br /&gt;
 |512 MB&lt;br /&gt;
 |uSD, USB, USB OTG, UART, McBSP, JTAG, GiGE, Audio, DVI-D, Camera connector, McBSP, I2C, GPIO, MMC2/3, ADC, LCD connector&lt;br /&gt;
 |[http://beagleboard.org/buy $149]&lt;br /&gt;
 |[[ARM/Meego_on_Beagleboard_from_scratch|yes]]&lt;br /&gt;
 |- &lt;br /&gt;
 |[http://beagleboard.org/static/BBSRM_latest.pdf Beagleboard C4]&lt;br /&gt;
 |Cortex A-8 OMAP3530 720 MHz&lt;br /&gt;
 |Imagination Technologies SGX530, [[ARM/Meego_on_Beagleboard_from_scratch|no]]&lt;br /&gt;
 |256 MB&lt;br /&gt;
 |I2C, I2S, SPI, MMC, USB, UART, USB OTG, S-Video, Audio, LCD, JTAG, GiGE&lt;br /&gt;
 |[http://beagleboard.org/buy $125]&lt;br /&gt;
 |[[ARM/Meego_IVI_on_Beagle|yes]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Releases ==&lt;br /&gt;
* [[MeeGo IVI 1.2 | MeeGo IVI 1.2]]&lt;br /&gt;
* [http://meego.com/downloads/releases/1.1/meego-v1.1-in-vehicle-infotainment-ivi MeeGo IVI 1.1]&lt;br /&gt;
* [http://meego.com/downloads/releases/1.0/meego-v1.0-in-vehicle-infotainment-ivi MeeGo IVI 1.0]&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
* IRC irc.freenode.org #meego-ivi&lt;br /&gt;
* Mailing list sign-up: http://lists.meego.com/listinfo/meego-ivi&lt;br /&gt;
* Mailing list archive: http://lists.meego.com/pipermail/meego-ivi/&lt;br /&gt;
* [[Presentations_about_meego-ivi#Presentations_and_Articles_about_MeeGo_IVI|Presentations and articles about meego-ivi]]&lt;br /&gt;
* [[In-vehicle/IVI for users and developers|IVI for users and developers]]&lt;br /&gt;
* [[IVITopic|Topics]]&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/3Dconnexion</id>
		<title>3Dconnexion</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/3Dconnexion"/>
				<updated>2011-07-04T16:11:13Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: How-to run/configure the 3Dconnexion SpaceNavigator in MeeGo IVI&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the device in question:&lt;br /&gt;
== Info ==&lt;br /&gt;
http://www.3dconnexion.com/products/spacenavigator.html&lt;br /&gt;
&lt;br /&gt;
== More info ==&lt;br /&gt;
http://www.3dconnexion.com/service/software-developer.html is a good source of info. Windows is better documented than Linux.&lt;br /&gt;
&lt;br /&gt;
== Linux/MeeGo support ==&lt;br /&gt;
There are basically three options (mutually exclusive) to use this device under Linux/MeeGo:&lt;br /&gt;
# Use 3Dconnexion drivers and libraries (SDK available after registering on their website)&lt;br /&gt;
# Use open-source spacenav library/daemon &amp;lt;-- this seems to be a very good/stable option&lt;br /&gt;
# Use MeeGo native drivers (in which case the mouse is no more than a standard 2D mouse with 2 buttons)&lt;br /&gt;
&lt;br /&gt;
=== spacenavd ===&lt;br /&gt;
http://spacenav.sourceforge.net/&lt;br /&gt;
 tar xvf spacenavd-0.5.tar.gz&lt;br /&gt;
 cd  spacenavd-0.5&lt;br /&gt;
 ./configure&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
This creates a socket-based server you app can connect to.&lt;br /&gt;
For examples, please check the example included in the SDK: http://sourceforge.net/projects/spacenav/files/spacenav%20library%20%28SDK%29/&lt;br /&gt;
&lt;br /&gt;
=== MeeGo native drivers ===&lt;br /&gt;
As soon as you connect this device to your MeeGo system, the native driver (evdev) will pick it up and add it to the list of pointer device (i.e. a mouse). You can check this using xinput as follows:&lt;br /&gt;
&lt;br /&gt;
Install xinput first (not installed by default)&lt;br /&gt;
 zypper in xorg-x11-utils-xinput (in MeeGo 1.2, slightly different name in MeeGo 1.0)&lt;br /&gt;
&lt;br /&gt;
 xinput --list&lt;br /&gt;
  Virtual core pointer                          id=2    [master pointer  (3)]&lt;br /&gt;
    ? Virtual core XTEST pointer                id=4    [slave  pointer  (2)]&lt;br /&gt;
    ? CHESEN USB Keyboard                       id=9    [slave  pointer  (2)]&lt;br /&gt;
    ? 3Dconnexion Space Navigator               '''id=10'''   [slave  pointer  (2)]&lt;br /&gt;
    ? Dell Dell USB Mouse                       id=11   [slave  pointer  (2)]&lt;br /&gt;
    ? EVTouch TouchScreen                       id=12   [slave  pointer  (2)]&lt;br /&gt;
  Virtual core keyboard                         id=3    [master keyboard (2)]&lt;br /&gt;
    ? Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]&lt;br /&gt;
    ? Video Bus                                 id=6    [slave  keyboard (3)]&lt;br /&gt;
    ? Power Button                              id=7    [slave  keyboard (3)]&lt;br /&gt;
    ? CHESEN USB Keyboard                       id=8    [slave  keyboard (3)]&lt;br /&gt;
&lt;br /&gt;
At that point, the mouse is essentially functional but extremely sensitive. To correct this, you can play with the device properties named ''Device Accel Constant Deceleration (237)'' and/or ''Device Accel Adaptive Deceleration (239)''. I've had some good luck setting property '237' between 20 and 50.&lt;br /&gt;
 xinput --list-props 10&lt;br /&gt;
 Device '3Dconnexion Space Navigator':&lt;br /&gt;
        Device Enabled (118):   1&lt;br /&gt;
        Device Accel Profile (236):     0&lt;br /&gt;
        Device '''Accel Constant Deceleration (237)''':       1.000000&lt;br /&gt;
        Device Accel Adaptive Deceleration (239):       1.000000&lt;br /&gt;
        Device Accel Velocity Scaling (240):    10.000000&lt;br /&gt;
        Evdev Reopen Attempts (234):    10&lt;br /&gt;
        Evdev Axis Inversion (241):     0, 0&lt;br /&gt;
        Evdev Axes Swap (243):  0&lt;br /&gt;
        Axis Labels (244):      &amp;quot;Rel X&amp;quot; (126), &amp;quot;Rel Y&amp;quot; (127), &amp;quot;Rel Z&amp;quot; (256), &amp;quot;Rel Rotary X&amp;quot; (257), &amp;quot;Rel Rotary Y&amp;quot; (258), &amp;quot;Rel Rotary Z&amp;quot; (259)&lt;br /&gt;
        Button Labels (245):    &amp;quot;Button 0&amp;quot; (254), &amp;quot;Button 1&amp;quot; (255), &amp;quot;Button Unknown&amp;quot; (235), &amp;quot;Button Wheel Up&amp;quot; (122), &amp;quot;Button Wheel Down&amp;quot; (123)&lt;br /&gt;
        Evdev Middle Button Emulation (246):    2&lt;br /&gt;
        Evdev Middle Button Timeout (247):      50&lt;br /&gt;
        Evdev Wheel Emulation (248):    0&lt;br /&gt;
        Evdev Wheel Emulation Axes (249):       0, 0, 4, 5&lt;br /&gt;
        Evdev Wheel Emulation Inertia (250):    10&lt;br /&gt;
        Evdev Wheel Emulation Timeout (251):    200&lt;br /&gt;
        Evdev Wheel Emulation Button (252):     4&lt;br /&gt;
        Evdev Drag Lock Buttons (253):  0&lt;br /&gt;
 &lt;br /&gt;
 xinput --set-prop 10 237 20&lt;br /&gt;
&lt;br /&gt;
It should be possible to set this directly in xorg.conf.d but no real luck yet so far. In the meantime an easy work around is to add this line to a script file that runs when system boots up:&lt;br /&gt;
  '''xinput set-prop &amp;quot;3Dconnexion Space Navigator&amp;quot; 237 20'''&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-10-22T17:15:47Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Build QEMUGL from source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Meego-1.1]]&lt;br /&gt;
&lt;br /&gt;
This page describes how to build the [http://wiki.meego.com/MeeGo_SDK_with_QEMU MeeGo SDK QEMU] tools from source, including QEMU binary, patched kernel module, and stub libGL.&lt;br /&gt;
&lt;br /&gt;
== Build QEMUGL from source ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-11 by [[User:Elliot|Elliot Smith]]''&lt;br /&gt;
&lt;br /&gt;
'''An alternative to building from source is to install a qemugl package from one of the repositories at http://download.meego.com/live/Tools:/SDK:/Host/'''&lt;br /&gt;
&lt;br /&gt;
Check out http://wiki.meego.com/MeeGo_SDK_with_QEMU#Installing_qemugl_on_64-bit_ubuntu_10.04 for more details.&lt;br /&gt;
&lt;br /&gt;
'''If you still prefer to build QEMUGL from sources, proceed with these steps:'''&lt;br /&gt;
&lt;br /&gt;
Checkout the QEMU GL source code (this is basically QEMU with some patches to enable GL acceleration):&lt;br /&gt;
&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-qemugl-x86.git&lt;br /&gt;
&lt;br /&gt;
Checkout the qemu-gl branch:&lt;br /&gt;
&lt;br /&gt;
 cd meego-emulator-qemugl-x86&lt;br /&gt;
 git checkout -b qemu-gl --track origin/qemu-gl&lt;br /&gt;
&lt;br /&gt;
Make sure that there is KVM enabled and that the following libraries (development package) are installed on the host machine:&lt;br /&gt;
&lt;br /&gt;
* zlib&lt;br /&gt;
* libSDL&lt;br /&gt;
* Xcomposite.&lt;br /&gt;
&lt;br /&gt;
Configure qemugl:&lt;br /&gt;
&lt;br /&gt;
 ./configure --target-list=i386-softmmu --enable-gl&lt;br /&gt;
&lt;br /&gt;
Check the output from &amp;lt;code&amp;gt;configure&amp;lt;/code&amp;gt; contains the strings below:&lt;br /&gt;
&lt;br /&gt;
 SDL support   yes&lt;br /&gt;
 ......&lt;br /&gt;
 KVM support   yes&lt;br /&gt;
&lt;br /&gt;
Build qemugl:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
This installs various QEMU binaries (default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;), including &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; used in this tutorial.&lt;br /&gt;
&lt;br /&gt;
== Create netbook image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-13 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
This section explains how to make a standard MeeGo netbook image run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
=== Install MeeGo netbook to QEMU raw disk image ===&lt;br /&gt;
&lt;br /&gt;
Create raw image file for MeeGo to install on. The &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; command is part of the [[#Build_QEMUGL_from_source|QEMU build]]:&lt;br /&gt;
 qemu-img create -f raw meego-netbook.raw 3.5G&lt;br /&gt;
&lt;br /&gt;
Install MeeGo to the raw hard disk, using the downloaded .img file as the installation CDROM:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot d -hda meego-netbook.raw -cdrom meego-netbook-ia32-1.1.80.1.20101012.1.img&lt;br /&gt;
&lt;br /&gt;
Boot into the image:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Go through the installation steps to set up a meego user. The password you set here is also used as the root password, which we'll use below.&lt;br /&gt;
&lt;br /&gt;
Note: occasionally I've halted the system before the meego user is setup. When I then try to boot into the UX, it fails because the user is missing. In this case, you can manually create the user from a root prompt (inside the QEMU image) with:&lt;br /&gt;
 useradd -d /home/meego -M -s /bin/bash meego&lt;br /&gt;
&lt;br /&gt;
Halt the system.&lt;br /&gt;
&lt;br /&gt;
Now boot it again (this time with networking enabled; type the command below, press return, then press tab like crazy so you can get to the boot menu):&lt;br /&gt;
 qemugl -m 1024 -vga std -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Next, edit the kernel command line on the boot menu screen so it looks like this:&lt;br /&gt;
 vmlinuz-2.6.35.3-8.5-netbook ro root=/dev/sda2 vga=current s&lt;br /&gt;
&lt;br /&gt;
This will get you a root prompt.&lt;br /&gt;
&lt;br /&gt;
=== Install and start openssh server ===&lt;br /&gt;
&lt;br /&gt;
Then install ssh server (this makes the following steps easier, as you can cut and paste into the ssh prompt):&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 chkconfig --add sshd&lt;br /&gt;
 /etc/init.d/sshd start&lt;br /&gt;
&lt;br /&gt;
Use can now use ssh to login to the image with:&lt;br /&gt;
&lt;br /&gt;
 ssh -p 6666 root@127.0.0.1&lt;br /&gt;
&lt;br /&gt;
(password is the same as you entered for your normal user when configuring the system)&lt;br /&gt;
&lt;br /&gt;
=== Set suid bit on Xorg binary ===&lt;br /&gt;
&lt;br /&gt;
Once logged in over ssh, set suid on the Xorg binary (so a normal user can start X):&lt;br /&gt;
&lt;br /&gt;
 chmod u+s /usr/bin/Xorg&lt;br /&gt;
&lt;br /&gt;
=== Install packages from the SDK repo ===&lt;br /&gt;
&lt;br /&gt;
Then install the SDK addons. First, add the MeeGo SDK repo:&lt;br /&gt;
&lt;br /&gt;
 zypper addrepo http://download.meego.com/live/devel:/tools:/sdk:/target/Trunk/ meego-sdk&lt;br /&gt;
&lt;br /&gt;
(you may need to use a different repo, depending on the netbook image you have)&lt;br /&gt;
&lt;br /&gt;
'''Another alternative is to [[#Manually build packages for an image running under QEMU GL|manually build the addons, kernel and virtiogl module in a chroot]], then install them into the image.'''&lt;br /&gt;
&lt;br /&gt;
==== Install QEMU addons ====&lt;br /&gt;
&lt;br /&gt;
Install the qemugl addon package into the image:&lt;br /&gt;
&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
&lt;br /&gt;
==== Install kernel and virtiogl module ====&lt;br /&gt;
&lt;br /&gt;
Install a current kernel and virtiogl module for it:&lt;br /&gt;
&lt;br /&gt;
 zypper install kernel-netbook-2.6.35.3-13.2&lt;br /&gt;
 zypper install kmod-virtiogl&lt;br /&gt;
&lt;br /&gt;
This kernel is currently (2010-10-13) the only one available in the SDK repo, but other versions should be available soon. If you need to build the SDK addons or a kernel and its modules, [[#Manually build packages for an image running under QEMU GL|instructions are given below]].&lt;br /&gt;
&lt;br /&gt;
=== Run the image under QEMU with GL acceleration ===&lt;br /&gt;
&lt;br /&gt;
The image should now be ready. It can be started in QEMU with this command:&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024 -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -enable-kvm -vga std -enable-gl -device virtio-gl-pci -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Note that you should still be able to ssh to this image as above.&lt;br /&gt;
&lt;br /&gt;
== Create handset image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
If you have a handset image downloaded, follow these instructions to enable it to run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
Download a handset tarball (e.g. from http://meego.com/downloads/releases/1.0.80.8/meego-handset-day1-developer-preview), and untar the file:&lt;br /&gt;
&lt;br /&gt;
 tar xjvf meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-mrstnand.tar.bz2&lt;br /&gt;
&lt;br /&gt;
(Note that this procedure should work for other images from http://repo.meego.com/MeeGo/builds/trunk/ too.)&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules version 2.6.35 from below section [[#Build packages for image running under QEMU GL]], to get a kernel file and module directory. Supppose the kernel file is &amp;quot;bzImage&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -vga std -kernel bzImage \&lt;br /&gt;
        --append &amp;quot;root=/dev/sda1 init s&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Inside the emulated image, install these packages:&lt;br /&gt;
 zypper install xorg-x11-drv-vesa&lt;br /&gt;
 zypper install mesa-dri-swrast-driver&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 zypper install gdb-gdbserver&lt;br /&gt;
&lt;br /&gt;
Copy the kernel modules into the image. Suppose that there have been modules.tgz in host machine built from kernel build step above:&lt;br /&gt;
 scp host@ipaddress:modules.tgz .&lt;br /&gt;
 tar xzvf modules.tgz&lt;br /&gt;
 mv module_directory /lib/modules/&lt;br /&gt;
&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/zypp/repos.d/&amp;quot;. File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
&lt;br /&gt;
Run &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-handset&lt;br /&gt;
&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net \&lt;br /&gt;
        nic,model=e1000 -vga std -enable-gl -enable-kvm -device virtio-gl-pci -kernel bzImage --append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Manually build packages for an image running under QEMU GL ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-14 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
You can manually build the software required to run an image (netbook or handset) under QEMU with GL acceleration. But this is only recommended if a pre-built package for the software you want doesn't already exist (up-to-date packages should be available for both handset and netbook soon).&lt;br /&gt;
&lt;br /&gt;
The steps below should be followed from ''inside'' a MeeGo image intended to run under QEMU. You could try this inside an emulated image, or by [[Building a MeeGo chroot on Linux|building a chroot]] from the raw disk image and working inside that (the latter is the only reasonable approach for building the kernel).&lt;br /&gt;
&lt;br /&gt;
For building both the qemugl addon and the kernel+modules, you will need to install a toolchain first (either into the QEMU image, the toolchain, or both):&lt;br /&gt;
 zypper install make gcc git patch diffutils&lt;br /&gt;
&lt;br /&gt;
Alternatively, this command will get you ''all'' the MeeGo developer tools:&lt;br /&gt;
 zypper install -t pattern development-tools&lt;br /&gt;
&lt;br /&gt;
=== Build qemugl addon ===&lt;br /&gt;
&lt;br /&gt;
The addon package installed in above section can also be built from source. These steps are fairly easy to do inside the QEMU image itself.&lt;br /&gt;
&lt;br /&gt;
You don't need to do this if you already installed a &amp;lt;code&amp;gt;meego-sdk-qemugl-addon-*&amp;lt;/code&amp;gt; package (see [[#Install QEMU addons, kernel and virtiogl module|above]]). &lt;br /&gt;
&lt;br /&gt;
Install required packaged first:&lt;br /&gt;
 zypper install libXfixes-devel libX11-devel&lt;br /&gt;
&lt;br /&gt;
Checkout stub libGL source code:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-libgl-x86.git&lt;br /&gt;
&lt;br /&gt;
Build:&lt;br /&gt;
 cd meego-emulator-libgl-x86&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== Build and install kernel and modules ===&lt;br /&gt;
&lt;br /&gt;
The approach we take for this is to use a chroot to build an RPM package for the new kernel and modules. This can then be easily transferred to the QEMU image and installed. Building the new kernel directly inside the QEMU image is too slow to be practical.&lt;br /&gt;
&lt;br /&gt;
The first thing you'll need is a MeeGo chroot, built from the same image you're using under QEMU. See [[Building a MeeGo chroot on Linux|this page]] for instructions.&lt;br /&gt;
&lt;br /&gt;
Enter the chroot.&lt;br /&gt;
&lt;br /&gt;
Install &amp;lt;code&amp;gt;rpmbuild&amp;lt;/code&amp;gt; (used to build the RPM from the kernel source):&lt;br /&gt;
 zypper install rpm-build&lt;br /&gt;
&lt;br /&gt;
Get the MeeGo kernel-source (this contains configuration files for building MeeGo kernels):&lt;br /&gt;
 git clone git://gitorious.org/meego-os-base/kernel-source.git&lt;br /&gt;
&lt;br /&gt;
Get the virtio patches for the kernel:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-virtiogl-x86.git&lt;br /&gt;
&lt;br /&gt;
Copy the virtio patch into the patches dir of kernel-source:&lt;br /&gt;
 cp meego-emulator-virtiogl-x86/linux-2.6.35-virtio-for-qemu-gl-acceleration.patch kernel-source/patches&lt;br /&gt;
&lt;br /&gt;
Download the kernel source tarball (NB you want the plain series version, not one with a patch number); in this case, I used a 2.6.35 kernel:&lt;br /&gt;
 cd kernel-source&lt;br /&gt;
 curl -o linux-2.6.35.tar.bz2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.tar.bz2&lt;br /&gt;
&lt;br /&gt;
Remain in the &amp;lt;code&amp;gt;kernel-source&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;series&amp;lt;/code&amp;gt; file to add the virtiogl patch to the list of patches to apply:&lt;br /&gt;
 # Add Virtio-mem module for QEMU GL acceleration&lt;br /&gt;
 linux-2.6.35-virtio-for-qemu-gl-acceleration.patch&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;config-netbook&amp;lt;/code&amp;gt; file (used for both handset and netbook) to enable VIRTIOGL as a module:&lt;br /&gt;
 CONFIG_VIRTIO_PCI=m&lt;br /&gt;
 CONFIG_VIRTIOGL=m&lt;br /&gt;
 # CONFIG_VIRTIO_BLK is not set&lt;br /&gt;
 # CONFIG_VIRTIO_NET is not set&lt;br /&gt;
 # CONFIG_VIRTIO_CONSOLE is not set&lt;br /&gt;
 # CONFIG_HW_RANDOM_VIRTIO is not set&lt;br /&gt;
&lt;br /&gt;
Delete this line from the same file (we want to set a value and it could be confusing otherwise):&lt;br /&gt;
&lt;br /&gt;
 # CONFIG_VIRTIO_PCI is not set&lt;br /&gt;
&lt;br /&gt;
Generate spec files and config files:&lt;br /&gt;
 make&lt;br /&gt;
 make -f Makefile.config&lt;br /&gt;
&lt;br /&gt;
This generates config files with names in the format &amp;lt;code&amp;gt;kernel-xxx.config&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Patch the kernel:&lt;br /&gt;
 ./scripts/install-git-hooks&lt;br /&gt;
 ./scripts/sequence-patch.sh --quilt&lt;br /&gt;
&lt;br /&gt;
Copy kernel config file into the source tree:&lt;br /&gt;
 cp kernel-netbook.config tmp/linux-2.6.35-master/.config&lt;br /&gt;
&lt;br /&gt;
Build a kernel RPM package (takes a long time):&lt;br /&gt;
 cd tmp/linux-2.6.35-master&lt;br /&gt;
 make oldconfig (at each prompt, accept the default)&lt;br /&gt;
 make rpm-pkg&lt;br /&gt;
&lt;br /&gt;
The resulting package is in &amp;lt;code&amp;gt;/root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Copy this to the QEMU image over ssh or equivalent, for example:&lt;br /&gt;
 scp -P 6666 /root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm root@127.0.0.1:/root/&lt;br /&gt;
&lt;br /&gt;
Get a root prompt in the QEMU image (either by booting into single user mode or logging in via ssh) and install the RPM:&lt;br /&gt;
 rpm -ivh /root/kernel-2.6.35.3+-1.i386.rpm&lt;br /&gt;
&lt;br /&gt;
Build and install the new initrd (a RAM disk image) for the kernel and modify the boot loader:&lt;br /&gt;
 new-kernel-pkg --mkinitrd --install --make-default --depmod 2.6.35.3+&lt;br /&gt;
(replace 2.6.35.3+ with the version for your new kernel)&lt;br /&gt;
&lt;br /&gt;
Next time you [[#Run the image under QEMU with GL acceleration|boot the image]], it should default to using the new kernel with the virtiogl module.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Gvancuts</id>
		<title>User:Gvancuts</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Gvancuts"/>
				<updated>2010-10-22T17:13:05Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Geoffroy Van Cutsem&lt;br /&gt;
&lt;br /&gt;
MeeGo Technical Marketing Engineer at Intel&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/User:Gvancuts</id>
		<title>User:Gvancuts</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Gvancuts"/>
				<updated>2010-10-22T17:11:44Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: Created page with &amp;quot;Name: Geoffroy Van Cutsem&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Name: Geoffroy Van Cutsem&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-10-22T17:11:21Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Meego-1.1]]&lt;br /&gt;
&lt;br /&gt;
This page describes how to build the [http://wiki.meego.com/MeeGo_SDK_with_QEMU MeeGo SDK QEMU] tools from source, including QEMU binary, patched kernel module, and stub libGL.&lt;br /&gt;
&lt;br /&gt;
== Build QEMUGL from source ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-11 by [[User:Elliot|Elliot Smith]]''&lt;br /&gt;
&lt;br /&gt;
'''An alternative to building from source is to install a qemugl package from one of the repositories at http://download.meego.com/live/Tools:/SDK:/Host/'''&lt;br /&gt;
&lt;br /&gt;
'''If you still prefer to build QEMUGL from sources, proceed with these steps:'''&lt;br /&gt;
&lt;br /&gt;
Checkout the QEMU GL source code (this is basically QEMU with some patches to enable GL acceleration):&lt;br /&gt;
&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-qemugl-x86.git&lt;br /&gt;
&lt;br /&gt;
Checkout the qemu-gl branch:&lt;br /&gt;
&lt;br /&gt;
 cd meego-emulator-qemugl-x86&lt;br /&gt;
 git checkout -b qemu-gl --track origin/qemu-gl&lt;br /&gt;
&lt;br /&gt;
Make sure that there is KVM enabled and that the following libraries (development package) are installed on the host machine:&lt;br /&gt;
&lt;br /&gt;
* zlib&lt;br /&gt;
* libSDL&lt;br /&gt;
* Xcomposite.&lt;br /&gt;
&lt;br /&gt;
Configure qemugl:&lt;br /&gt;
&lt;br /&gt;
 ./configure --target-list=i386-softmmu --enable-gl&lt;br /&gt;
&lt;br /&gt;
Check the output from &amp;lt;code&amp;gt;configure&amp;lt;/code&amp;gt; contains the strings below:&lt;br /&gt;
&lt;br /&gt;
 SDL support   yes&lt;br /&gt;
 ......&lt;br /&gt;
 KVM support   yes&lt;br /&gt;
&lt;br /&gt;
Build qemugl:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
This installs various QEMU binaries (default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;), including &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; used in this tutorial.&lt;br /&gt;
&lt;br /&gt;
== Create netbook image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-13 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
This section explains how to make a standard MeeGo netbook image run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
=== Install MeeGo netbook to QEMU raw disk image ===&lt;br /&gt;
&lt;br /&gt;
Create raw image file for MeeGo to install on. The &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; command is part of the [[#Build_QEMUGL_from_source|QEMU build]]:&lt;br /&gt;
 qemu-img create -f raw meego-netbook.raw 3.5G&lt;br /&gt;
&lt;br /&gt;
Install MeeGo to the raw hard disk, using the downloaded .img file as the installation CDROM:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot d -hda meego-netbook.raw -cdrom meego-netbook-ia32-1.1.80.1.20101012.1.img&lt;br /&gt;
&lt;br /&gt;
Boot into the image:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Go through the installation steps to set up a meego user. The password you set here is also used as the root password, which we'll use below.&lt;br /&gt;
&lt;br /&gt;
Note: occasionally I've halted the system before the meego user is setup. When I then try to boot into the UX, it fails because the user is missing. In this case, you can manually create the user from a root prompt (inside the QEMU image) with:&lt;br /&gt;
 useradd -d /home/meego -M -s /bin/bash meego&lt;br /&gt;
&lt;br /&gt;
Halt the system.&lt;br /&gt;
&lt;br /&gt;
Now boot it again (this time with networking enabled; type the command below, press return, then press tab like crazy so you can get to the boot menu):&lt;br /&gt;
 qemugl -m 1024 -vga std -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Next, edit the kernel command line on the boot menu screen so it looks like this:&lt;br /&gt;
 vmlinuz-2.6.35.3-8.5-netbook ro root=/dev/sda2 vga=current s&lt;br /&gt;
&lt;br /&gt;
This will get you a root prompt.&lt;br /&gt;
&lt;br /&gt;
=== Install and start openssh server ===&lt;br /&gt;
&lt;br /&gt;
Then install ssh server (this makes the following steps easier, as you can cut and paste into the ssh prompt):&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 chkconfig --add sshd&lt;br /&gt;
 /etc/init.d/sshd start&lt;br /&gt;
&lt;br /&gt;
Use can now use ssh to login to the image with:&lt;br /&gt;
&lt;br /&gt;
 ssh -p 6666 root@127.0.0.1&lt;br /&gt;
&lt;br /&gt;
(password is the same as you entered for your normal user when configuring the system)&lt;br /&gt;
&lt;br /&gt;
=== Set suid bit on Xorg binary ===&lt;br /&gt;
&lt;br /&gt;
Once logged in over ssh, set suid on the Xorg binary (so a normal user can start X):&lt;br /&gt;
&lt;br /&gt;
 chmod u+s /usr/bin/Xorg&lt;br /&gt;
&lt;br /&gt;
=== Install packages from the SDK repo ===&lt;br /&gt;
&lt;br /&gt;
Then install the SDK addons. First, add the MeeGo SDK repo:&lt;br /&gt;
&lt;br /&gt;
 zypper addrepo http://download.meego.com/live/devel:/tools:/sdk:/target/Trunk/ meego-sdk&lt;br /&gt;
&lt;br /&gt;
(you may need to use a different repo, depending on the netbook image you have)&lt;br /&gt;
&lt;br /&gt;
'''Another alternative is to [[#Manually build packages for an image running under QEMU GL|manually build the addons, kernel and virtiogl module in a chroot]], then install them into the image.'''&lt;br /&gt;
&lt;br /&gt;
==== Install QEMU addons ====&lt;br /&gt;
&lt;br /&gt;
Install the qemugl addon package into the image:&lt;br /&gt;
&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
&lt;br /&gt;
==== Install kernel and virtiogl module ====&lt;br /&gt;
&lt;br /&gt;
Install a current kernel and virtiogl module for it:&lt;br /&gt;
&lt;br /&gt;
 zypper install kernel-netbook-2.6.35.3-13.2&lt;br /&gt;
 zypper install kmod-virtiogl&lt;br /&gt;
&lt;br /&gt;
This kernel is currently (2010-10-13) the only one available in the SDK repo, but other versions should be available soon. If you need to build the SDK addons or a kernel and its modules, [[#Manually build packages for an image running under QEMU GL|instructions are given below]].&lt;br /&gt;
&lt;br /&gt;
=== Run the image under QEMU with GL acceleration ===&lt;br /&gt;
&lt;br /&gt;
The image should now be ready. It can be started in QEMU with this command:&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024 -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -enable-kvm -vga std -enable-gl -device virtio-gl-pci -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Note that you should still be able to ssh to this image as above.&lt;br /&gt;
&lt;br /&gt;
== Create handset image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
If you have a handset image downloaded, follow these instructions to enable it to run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
Download a handset tarball (e.g. from http://meego.com/downloads/releases/1.0.80.8/meego-handset-day1-developer-preview), and untar the file:&lt;br /&gt;
&lt;br /&gt;
 tar xjvf meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-mrstnand.tar.bz2&lt;br /&gt;
&lt;br /&gt;
(Note that this procedure should work for other images from http://repo.meego.com/MeeGo/builds/trunk/ too.)&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules version 2.6.35 from below section [[#Build packages for image running under QEMU GL]], to get a kernel file and module directory. Supppose the kernel file is &amp;quot;bzImage&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -vga std -kernel bzImage \&lt;br /&gt;
        --append &amp;quot;root=/dev/sda1 init s&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Inside the emulated image, install these packages:&lt;br /&gt;
 zypper install xorg-x11-drv-vesa&lt;br /&gt;
 zypper install mesa-dri-swrast-driver&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 zypper install gdb-gdbserver&lt;br /&gt;
&lt;br /&gt;
Copy the kernel modules into the image. Suppose that there have been modules.tgz in host machine built from kernel build step above:&lt;br /&gt;
 scp host@ipaddress:modules.tgz .&lt;br /&gt;
 tar xzvf modules.tgz&lt;br /&gt;
 mv module_directory /lib/modules/&lt;br /&gt;
&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/zypp/repos.d/&amp;quot;. File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
&lt;br /&gt;
Run &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-handset&lt;br /&gt;
&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net \&lt;br /&gt;
        nic,model=e1000 -vga std -enable-gl -enable-kvm -device virtio-gl-pci -kernel bzImage --append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Manually build packages for an image running under QEMU GL ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-14 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
You can manually build the software required to run an image (netbook or handset) under QEMU with GL acceleration. But this is only recommended if a pre-built package for the software you want doesn't already exist (up-to-date packages should be available for both handset and netbook soon).&lt;br /&gt;
&lt;br /&gt;
The steps below should be followed from ''inside'' a MeeGo image intended to run under QEMU. You could try this inside an emulated image, or by [[Building a MeeGo chroot on Linux|building a chroot]] from the raw disk image and working inside that (the latter is the only reasonable approach for building the kernel).&lt;br /&gt;
&lt;br /&gt;
For building both the qemugl addon and the kernel+modules, you will need to install a toolchain first (either into the QEMU image, the toolchain, or both):&lt;br /&gt;
 zypper install make gcc git patch diffutils&lt;br /&gt;
&lt;br /&gt;
Alternatively, this command will get you ''all'' the MeeGo developer tools:&lt;br /&gt;
 zypper install -t pattern development-tools&lt;br /&gt;
&lt;br /&gt;
=== Build qemugl addon ===&lt;br /&gt;
&lt;br /&gt;
The addon package installed in above section can also be built from source. These steps are fairly easy to do inside the QEMU image itself.&lt;br /&gt;
&lt;br /&gt;
You don't need to do this if you already installed a &amp;lt;code&amp;gt;meego-sdk-qemugl-addon-*&amp;lt;/code&amp;gt; package (see [[#Install QEMU addons, kernel and virtiogl module|above]]). &lt;br /&gt;
&lt;br /&gt;
Install required packaged first:&lt;br /&gt;
 zypper install libXfixes-devel libX11-devel&lt;br /&gt;
&lt;br /&gt;
Checkout stub libGL source code:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-libgl-x86.git&lt;br /&gt;
&lt;br /&gt;
Build:&lt;br /&gt;
 cd meego-emulator-libgl-x86&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== Build and install kernel and modules ===&lt;br /&gt;
&lt;br /&gt;
The approach we take for this is to use a chroot to build an RPM package for the new kernel and modules. This can then be easily transferred to the QEMU image and installed. Building the new kernel directly inside the QEMU image is too slow to be practical.&lt;br /&gt;
&lt;br /&gt;
The first thing you'll need is a MeeGo chroot, built from the same image you're using under QEMU. See [[Building a MeeGo chroot on Linux|this page]] for instructions.&lt;br /&gt;
&lt;br /&gt;
Enter the chroot.&lt;br /&gt;
&lt;br /&gt;
Install &amp;lt;code&amp;gt;rpmbuild&amp;lt;/code&amp;gt; (used to build the RPM from the kernel source):&lt;br /&gt;
 zypper install rpm-build&lt;br /&gt;
&lt;br /&gt;
Get the MeeGo kernel-source (this contains configuration files for building MeeGo kernels):&lt;br /&gt;
 git clone git://gitorious.org/meego-os-base/kernel-source.git&lt;br /&gt;
&lt;br /&gt;
Get the virtio patches for the kernel:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-virtiogl-x86.git&lt;br /&gt;
&lt;br /&gt;
Copy the virtio patch into the patches dir of kernel-source:&lt;br /&gt;
 cp meego-emulator-virtiogl-x86/linux-2.6.35-virtio-for-qemu-gl-acceleration.patch kernel-source/patches&lt;br /&gt;
&lt;br /&gt;
Download the kernel source tarball (NB you want the plain series version, not one with a patch number); in this case, I used a 2.6.35 kernel:&lt;br /&gt;
 cd kernel-source&lt;br /&gt;
 curl -o linux-2.6.35.tar.bz2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.tar.bz2&lt;br /&gt;
&lt;br /&gt;
Remain in the &amp;lt;code&amp;gt;kernel-source&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;series&amp;lt;/code&amp;gt; file to add the virtiogl patch to the list of patches to apply:&lt;br /&gt;
 # Add Virtio-mem module for QEMU GL acceleration&lt;br /&gt;
 linux-2.6.35-virtio-for-qemu-gl-acceleration.patch&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;config-netbook&amp;lt;/code&amp;gt; file (used for both handset and netbook) to enable VIRTIOGL as a module:&lt;br /&gt;
 CONFIG_VIRTIO_PCI=m&lt;br /&gt;
 CONFIG_VIRTIOGL=m&lt;br /&gt;
 # CONFIG_VIRTIO_BLK is not set&lt;br /&gt;
 # CONFIG_VIRTIO_NET is not set&lt;br /&gt;
 # CONFIG_VIRTIO_CONSOLE is not set&lt;br /&gt;
 # CONFIG_HW_RANDOM_VIRTIO is not set&lt;br /&gt;
&lt;br /&gt;
Delete this line from the same file (we want to set a value and it could be confusing otherwise):&lt;br /&gt;
&lt;br /&gt;
 # CONFIG_VIRTIO_PCI is not set&lt;br /&gt;
&lt;br /&gt;
Generate spec files and config files:&lt;br /&gt;
 make&lt;br /&gt;
 make -f Makefile.config&lt;br /&gt;
&lt;br /&gt;
This generates config files with names in the format &amp;lt;code&amp;gt;kernel-xxx.config&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Patch the kernel:&lt;br /&gt;
 ./scripts/install-git-hooks&lt;br /&gt;
 ./scripts/sequence-patch.sh --quilt&lt;br /&gt;
&lt;br /&gt;
Copy kernel config file into the source tree:&lt;br /&gt;
 cp kernel-netbook.config tmp/linux-2.6.35-master/.config&lt;br /&gt;
&lt;br /&gt;
Build a kernel RPM package (takes a long time):&lt;br /&gt;
 cd tmp/linux-2.6.35-master&lt;br /&gt;
 make oldconfig (at each prompt, accept the default)&lt;br /&gt;
 make rpm-pkg&lt;br /&gt;
&lt;br /&gt;
The resulting package is in &amp;lt;code&amp;gt;/root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Copy this to the QEMU image over ssh or equivalent, for example:&lt;br /&gt;
 scp -P 6666 /root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm root@127.0.0.1:/root/&lt;br /&gt;
&lt;br /&gt;
Get a root prompt in the QEMU image (either by booting into single user mode or logging in via ssh) and install the RPM:&lt;br /&gt;
 rpm -ivh /root/kernel-2.6.35.3+-1.i386.rpm&lt;br /&gt;
&lt;br /&gt;
Build and install the new initrd (a RAM disk image) for the kernel and modify the boot loader:&lt;br /&gt;
 new-kernel-pkg --mkinitrd --install --make-default --depmod 2.6.35.3+&lt;br /&gt;
(replace 2.6.35.3+ with the version for your new kernel)&lt;br /&gt;
&lt;br /&gt;
Next time you [[#Run the image under QEMU with GL acceleration|boot the image]], it should default to using the new kernel with the virtiogl module.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/Talk:SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>Talk:SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Talk:SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-10-22T17:10:30Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Elliot|Elliot Smith]] - I'd prefer the stuff about installing from a package manager to be split into its own section: it doesn't seem to sit right in the part about build QEMU. Previously there was just a note about using packages instead, not full instructions.&lt;br /&gt;
&lt;br /&gt;
[[User:Gvancuts|Geoffroy]] That makes sense, I have moved this specific section to this page: http://wiki.meego.com/MeeGo_SDK_with_QEMU#Installing_qemugl_on_64-bit_ubuntu_10.04. Do you agree this is the right place?&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-10-21T14:45:58Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Build QEMUGL from source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Meego-1.1]]&lt;br /&gt;
&lt;br /&gt;
This page describes how to build the [http://wiki.meego.com/MeeGo_SDK_with_QEMU MeeGo SDK QEMU] tools from source, including QEMU binary, patched kernel module, and stub libGL.&lt;br /&gt;
&lt;br /&gt;
== Build QEMUGL from source ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-11 by [[User:Elliot|Elliot Smith]]''&lt;br /&gt;
&lt;br /&gt;
'''An alternative to building from source is to install a qemugl package from one of the repositories at http://download.meego.com/live/Tools:/SDK:/Host/'''&lt;br /&gt;
&lt;br /&gt;
Example of how to add this repository in Ubuntu 10.04, two steps:&lt;br /&gt;
* From ''Software Sources'' -&amp;gt; ''Other Software''; click ''Add'' and insert this line: &amp;lt;code&amp;gt;deb http://download.meego.com/live/Tools:/SDK:/Host/Ubuntu_10.04 /&amp;lt;/code&amp;gt;&lt;br /&gt;
* Import the key from the following file (save it on your HDD first): http://download.meego.com/live/Tools:/SDK:/Host/Ubuntu_10.04/Release.key using the ''Import Key File...'' in the ''Authentication'' tab&lt;br /&gt;
Although I have not verified it, I assume the procedure would be similar for other distributions/versions.&lt;br /&gt;
&lt;br /&gt;
''Note'': this package '''only''' installs &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt;, you should install the ''qemu-kvm'' package in Ubuntu to have tools such as &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; available too (this is needed if you want/need to build your own MeeGo image to be run by the emulator.&lt;br /&gt;
&lt;br /&gt;
''Note2'': the QEMUGL package gets installed in &amp;lt;code&amp;gt;/opt/meego/qemu-gl/&amp;lt;/code&amp;gt; by default. You should therefore modify the launch script [http://download3.meego.com/sep09/meego-qemu-start meego-qemu-start] by editing both &amp;lt;code&amp;gt;QEMU_BIN&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;QEMU_PATH&amp;lt;/code&amp;gt; variables as follows:&lt;br /&gt;
 QEMU_BIN=&amp;quot;/opt/meego/qemu-gl/bin&amp;quot;&lt;br /&gt;
 QEMU_PATH=&amp;quot;/opt/meego/qemu-gl/share/qemugl/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''If you still prefer to build QEMUGL from sources, proceed with these steps:'''&lt;br /&gt;
&lt;br /&gt;
Checkout the QEMU GL source code (this is basically QEMU with some patches to enable GL acceleration):&lt;br /&gt;
&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-qemugl-x86.git&lt;br /&gt;
&lt;br /&gt;
Checkout the qemu-gl branch:&lt;br /&gt;
&lt;br /&gt;
 cd meego-emulator-qemugl-x86&lt;br /&gt;
 git checkout -b qemu-gl --track origin/qemu-gl&lt;br /&gt;
&lt;br /&gt;
Make sure that there is KVM enabled and that the following libraries (development package) are installed on the host machine:&lt;br /&gt;
&lt;br /&gt;
* zlib&lt;br /&gt;
* libSDL&lt;br /&gt;
* Xcomposite.&lt;br /&gt;
&lt;br /&gt;
Configure qemugl:&lt;br /&gt;
&lt;br /&gt;
 ./configure --target-list=i386-softmmu --enable-gl&lt;br /&gt;
&lt;br /&gt;
Check the output from &amp;lt;code&amp;gt;configure&amp;lt;/code&amp;gt; contains the strings below:&lt;br /&gt;
&lt;br /&gt;
 SDL support   yes&lt;br /&gt;
 ......&lt;br /&gt;
 KVM support   yes&lt;br /&gt;
&lt;br /&gt;
Build qemugl:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
This installs various QEMU binaries (default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;), including &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; used in this tutorial.&lt;br /&gt;
&lt;br /&gt;
== Create netbook image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-13 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
This section explains how to make a standard MeeGo netbook image run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
=== Install MeeGo netbook to QEMU raw disk image ===&lt;br /&gt;
&lt;br /&gt;
Create raw image file for MeeGo to install on. The &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; command is part of the [[#Build_QEMUGL_from_source|QEMU build]]:&lt;br /&gt;
 qemu-img create -f raw meego-netbook.raw 3.5G&lt;br /&gt;
&lt;br /&gt;
Install MeeGo to the raw hard disk, using the downloaded .img file as the installation CDROM:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot d -hda meego-netbook.raw -cdrom meego-netbook-ia32-1.1.80.1.20101012.1.img&lt;br /&gt;
&lt;br /&gt;
Boot into the image:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Go through the installation steps to set up a meego user. The password you set here is also used as the root password, which we'll use below.&lt;br /&gt;
&lt;br /&gt;
Note: occasionally I've halted the system before the meego user is setup. When I then try to boot into the UX, it fails because the user is missing. In this case, you can manually create the user from a root prompt (inside the QEMU image) with:&lt;br /&gt;
 useradd -d /home/meego -M -s /bin/bash meego&lt;br /&gt;
&lt;br /&gt;
Halt the system.&lt;br /&gt;
&lt;br /&gt;
Now boot it again (this time with networking enabled; type the command below, press return, then press tab like crazy so you can get to the boot menu):&lt;br /&gt;
 qemugl -m 1024 -vga std -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Next, edit the kernel command line on the boot menu screen so it looks like this:&lt;br /&gt;
 vmlinuz-2.6.35.3-8.5-netbook ro root=/dev/sda2 vga=current s&lt;br /&gt;
&lt;br /&gt;
This will get you a root prompt.&lt;br /&gt;
&lt;br /&gt;
=== Install and start openssh server ===&lt;br /&gt;
&lt;br /&gt;
Then install ssh server (this makes the following steps easier, as you can cut and paste into the ssh prompt):&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 chkconfig --add sshd&lt;br /&gt;
 /etc/init.d/sshd start&lt;br /&gt;
&lt;br /&gt;
Use can now use ssh to login to the image with:&lt;br /&gt;
&lt;br /&gt;
 ssh -p 6666 root@127.0.0.1&lt;br /&gt;
&lt;br /&gt;
(password is the same as you entered for your normal user when configuring the system)&lt;br /&gt;
&lt;br /&gt;
=== Set suid bit on Xorg binary ===&lt;br /&gt;
&lt;br /&gt;
Once logged in over ssh, set suid on the Xorg binary (so a normal user can start X):&lt;br /&gt;
&lt;br /&gt;
 chmod u+s /usr/bin/Xorg&lt;br /&gt;
&lt;br /&gt;
=== Install packages from the SDK repo ===&lt;br /&gt;
&lt;br /&gt;
Then install the SDK addons. First, add the MeeGo SDK repo:&lt;br /&gt;
&lt;br /&gt;
 zypper addrepo http://download.meego.com/live/devel:/tools:/sdk:/target/Trunk/ meego-sdk&lt;br /&gt;
&lt;br /&gt;
(you may need to use a different repo, depending on the netbook image you have)&lt;br /&gt;
&lt;br /&gt;
'''Another alternative is to [[#Manually build packages for an image running under QEMU GL|manually build these packages in a chroot]] and install them into the image.'''&lt;br /&gt;
&lt;br /&gt;
==== Install QEMU addons ====&lt;br /&gt;
&lt;br /&gt;
Install the qemugl addon package into the image:&lt;br /&gt;
&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
&lt;br /&gt;
==== Install kernel and virtiogl module ====&lt;br /&gt;
&lt;br /&gt;
Install a current kernel and virtiogl module for it:&lt;br /&gt;
&lt;br /&gt;
 zypper install kernel-netbook-2.6.35.3-13.2&lt;br /&gt;
 zypper install kmod-virtiogl&lt;br /&gt;
&lt;br /&gt;
This kernel is currently (2010-10-13) the only one available in the SDK repo, but other versions should be available soon. If you need to build the SDK addons or a kernel and its modules, [[#Manually build packages for an image running under QEMU GL|instructions are given below]].&lt;br /&gt;
&lt;br /&gt;
=== Run the image under QEMU with GL acceleration ===&lt;br /&gt;
&lt;br /&gt;
The image should now be ready. It can be started in QEMU with this command:&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024 -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -enable-kvm -vga std -enable-gl -device virtio-gl-pci -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Note that you should still be able to ssh to this image as above.&lt;br /&gt;
&lt;br /&gt;
== Create handset image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
If you have a handset image downloaded, follow these instructions to enable it to run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
Download a handset tarball (e.g. from http://meego.com/downloads/releases/1.0.80.8/meego-handset-day1-developer-preview), and untar the file:&lt;br /&gt;
&lt;br /&gt;
 tar xjvf meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-mrstnand.tar.bz2&lt;br /&gt;
&lt;br /&gt;
(Note that this procedure should work for other images from http://repo.meego.com/MeeGo/builds/trunk/ too.)&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules version 2.6.35 from below section [[#Build packages for image running under QEMU GL]], to get a kernel file and module directory. Supppose the kernel file is &amp;quot;bzImage&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -vga std -kernel bzImage \&lt;br /&gt;
        --append &amp;quot;root=/dev/sda1 init s&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Inside the emulated image, install these packages:&lt;br /&gt;
 zypper install xorg-x11-drv-vesa&lt;br /&gt;
 zypper install mesa-dri-swrast-driver&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 zypper install gdb-gdbserver&lt;br /&gt;
&lt;br /&gt;
Copy the kernel modules into the image. Suppose that there have been modules.tgz in host machine built from kernel build step above:&lt;br /&gt;
 scp host@ipaddress:modules.tgz .&lt;br /&gt;
 tar xzvf modules.tgz&lt;br /&gt;
 mv module_directory /lib/modules/&lt;br /&gt;
&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/zypp/repos.d/&amp;quot;. File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
&lt;br /&gt;
Run &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-handset&lt;br /&gt;
&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net \&lt;br /&gt;
        nic,model=e1000 -vga std -enable-gl -enable-kvm -device virtio-gl-pci -kernel bzImage --append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Manually build packages for an image running under QEMU GL ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-14 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
You can manually build the software required to run an image (netbook or handset) under QEMU with GL acceleration. But this is only recommended if a pre-built package for the software you want doesn't already exist (up-to-date packages should be available for both handset and netbook soon).&lt;br /&gt;
&lt;br /&gt;
The steps below should be followed from ''inside'' a MeeGo image intended to run under QEMU. You could try this inside an emulated image, or by [[Building a MeeGo chroot on Linux|building a chroot]] from the raw disk image and working inside that (the latter is the only reasonable approach for building the kernel).&lt;br /&gt;
&lt;br /&gt;
For building both the qemugl addon and the kernel+modules, you will need to install a toolchain first (either into the QEMU image, the toolchain, or both):&lt;br /&gt;
 zypper install make gcc git patch diffutils&lt;br /&gt;
&lt;br /&gt;
Alternatively, this command will get you ''all'' the MeeGo developer tools:&lt;br /&gt;
 zypper install -t pattern development-tools&lt;br /&gt;
&lt;br /&gt;
=== Build qemugl addon ===&lt;br /&gt;
&lt;br /&gt;
The addon package installed in above section can also be built from source. These steps are fairly easy to do inside the QEMU image itself.&lt;br /&gt;
&lt;br /&gt;
You don't need to do this if you already installed a &amp;lt;code&amp;gt;meego-sdk-qemugl-addon-*&amp;lt;/code&amp;gt; package (see [[#Install QEMU addons, kernel and virtiogl module|above]]). &lt;br /&gt;
&lt;br /&gt;
Install required packaged first:&lt;br /&gt;
 zypper install libXfixes-devel libX11-devel&lt;br /&gt;
&lt;br /&gt;
Checkout stub libGL source code:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-libgl-x86.git&lt;br /&gt;
&lt;br /&gt;
Build:&lt;br /&gt;
 cd meego-emulator-libgl-x86&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== Build and install kernel and modules ===&lt;br /&gt;
&lt;br /&gt;
The approach we take for this is to use a chroot to build an RPM package for the new kernel and modules. This can then be easily transferred to the QEMU image and installed. Building the new kernel directly inside the QEMU image is too slow to be practical.&lt;br /&gt;
&lt;br /&gt;
The first thing you'll need is a MeeGo chroot, built from the same image you're using under QEMU. See [[Building a MeeGo chroot on Linux|this page]] for instructions.&lt;br /&gt;
&lt;br /&gt;
Enter the chroot.&lt;br /&gt;
&lt;br /&gt;
Install &amp;lt;code&amp;gt;rpmbuild&amp;lt;/code&amp;gt; (used to build the RPM from the kernel source):&lt;br /&gt;
 zypper install rpm-build&lt;br /&gt;
&lt;br /&gt;
Get the MeeGo kernel-source (this contains configuration files for building MeeGo kernels):&lt;br /&gt;
 git clone git://gitorious.org/meego-os-base/kernel-source.git&lt;br /&gt;
&lt;br /&gt;
Get the virtio patches for the kernel:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-virtiogl-x86.git&lt;br /&gt;
&lt;br /&gt;
Copy the virtio patch into the patches dir of kernel-source:&lt;br /&gt;
 cp meego-emulator-virtiogl-x86/linux-2.6.35-virtio-for-qemu-gl-acceleration.patch kernel-source/patches&lt;br /&gt;
&lt;br /&gt;
Download the kernel source tarball (NB you want the plain series version, not one with a patch number); in this case, I used a 2.6.35 kernel:&lt;br /&gt;
 cd kernel-source&lt;br /&gt;
 curl -o linux-2.6.35.tar.bz2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.tar.bz2&lt;br /&gt;
&lt;br /&gt;
Remain in the &amp;lt;code&amp;gt;kernel-source&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;series&amp;lt;/code&amp;gt; file to add the virtiogl patch to the list of patches to apply:&lt;br /&gt;
 # Add Virtio-mem module for QEMU GL acceleration&lt;br /&gt;
 linux-2.6.35-virtio-for-qemu-gl-acceleration.patch&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;config-netbook&amp;lt;/code&amp;gt; file (used for both handset and netbook) to enable VIRTIOGL as a module:&lt;br /&gt;
 CONFIG_VIRTIO_PCI=m&lt;br /&gt;
 CONFIG_VIRTIOGL=m&lt;br /&gt;
 # CONFIG_VIRTIO_BLK is not set&lt;br /&gt;
 # CONFIG_VIRTIO_NET is not set&lt;br /&gt;
 # CONFIG_VIRTIO_CONSOLE is not set&lt;br /&gt;
 # CONFIG_HW_RANDOM_VIRTIO is not set&lt;br /&gt;
&lt;br /&gt;
Delete this line from the same file (we want to set a value and it could be confusing otherwise):&lt;br /&gt;
&lt;br /&gt;
 # CONFIG_VIRTIO_PCI is not set&lt;br /&gt;
&lt;br /&gt;
Generate spec files and config files:&lt;br /&gt;
 make&lt;br /&gt;
 make -f Makefile.config&lt;br /&gt;
&lt;br /&gt;
This generates config files with names in the format &amp;lt;code&amp;gt;kernel-xxx.config&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Patch the kernel:&lt;br /&gt;
 ./scripts/install-git-hooks&lt;br /&gt;
 ./scripts/sequence-patch.sh --quilt&lt;br /&gt;
&lt;br /&gt;
Copy kernel config file into the source tree:&lt;br /&gt;
 cp kernel-netbook.config tmp/linux-2.6.35-master/.config&lt;br /&gt;
&lt;br /&gt;
Build a kernel RPM package (takes a long time):&lt;br /&gt;
 cd tmp/linux-2.6.35-master&lt;br /&gt;
 make oldconfig (at each prompt, accept the default)&lt;br /&gt;
 make rpm-pkg&lt;br /&gt;
&lt;br /&gt;
The resulting package is in &amp;lt;code&amp;gt;/root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Copy this to the QEMU image over ssh or equivalent, for example:&lt;br /&gt;
 scp -P 6666 /root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm root@127.0.0.1:/root/&lt;br /&gt;
&lt;br /&gt;
Get a root prompt in the QEMU image (either by booting into single user mode or logging in via ssh) and install the RPM:&lt;br /&gt;
 rpm -ivh /root/kernel-2.6.35.3+-1.i386.rpm&lt;br /&gt;
&lt;br /&gt;
Build and install the new initrd (a RAM disk image) for the kernel and modify the boot loader:&lt;br /&gt;
 new-kernel-pkg --mkinitrd --install --make-default --depmod 2.6.35.3+&lt;br /&gt;
(replace 2.6.35.3+ with the version for your new kernel)&lt;br /&gt;
&lt;br /&gt;
Next time you [[#Run the image under QEMU with GL acceleration|boot the image]], it should default to using the new kernel with the virtiogl module.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-10-21T14:40:13Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Build QEMUGL from source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Meego-1.1]]&lt;br /&gt;
&lt;br /&gt;
This page describes how to build the [http://wiki.meego.com/MeeGo_SDK_with_QEMU MeeGo SDK QEMU] tools from source, including QEMU binary, patched kernel module, and stub libGL.&lt;br /&gt;
&lt;br /&gt;
== Build QEMUGL from source ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-11 by [[User:Elliot|Elliot Smith]]''&lt;br /&gt;
&lt;br /&gt;
'''An alternative to building from source is to install a qemugl package from one of the repositories at http://download.meego.com/live/Tools:/SDK:/Host/'''&lt;br /&gt;
&lt;br /&gt;
Example of how to add this repository in Ubuntu 10.04, two steps:&lt;br /&gt;
* From ''Software Sources'' -&amp;gt; ''Other Software''; click ''Add'' and insert this line: &amp;lt;code&amp;gt;deb http://download.meego.com/live/Tools:/SDK:/Host/Ubuntu_10.04 /&amp;lt;/code&amp;gt;&lt;br /&gt;
* Import the key from the following file (save it on your HDD first): http://download.meego.com/live/Tools:/SDK:/Host/Ubuntu_10.04/Release.key using the ''Import Key File...'' in the ''Authentication'' tab&lt;br /&gt;
Although I have not verified it, I assume the procedure would be similar for other distributions/versions.&lt;br /&gt;
&lt;br /&gt;
''Note'': this package '''only''' installs &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt;, you should install the ''qemu-kvm'' package in Ubuntu to have tools such as &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; available too (this is needed if you want/need to build your own MeeGo image to be run by the emulator.&lt;br /&gt;
&lt;br /&gt;
''Note2'': &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt; gets installed in &amp;lt;code&amp;gt;/opt/meego/qemu-gl/bin&amp;lt;/code&amp;gt; by default. You therefore should either copy it across to &amp;lt;code&amp;gt;/usr/bin&amp;lt;/code&amp;gt; or modify the launch script [http://download3.meego.com/sep09/meego-qemu-start meego-qemu-start] by editing the &amp;lt;code&amp;gt;QEMU_BIN&amp;lt;/code&amp;gt; variable.&lt;br /&gt;
&lt;br /&gt;
'''If you still prefer to build QEMUGL from sources, proceed with these steps:'''&lt;br /&gt;
&lt;br /&gt;
Checkout the QEMU GL source code (this is basically QEMU with some patches to enable GL acceleration):&lt;br /&gt;
&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-qemugl-x86.git&lt;br /&gt;
&lt;br /&gt;
Checkout the qemu-gl branch:&lt;br /&gt;
&lt;br /&gt;
 cd meego-emulator-qemugl-x86&lt;br /&gt;
 git checkout -b qemu-gl --track origin/qemu-gl&lt;br /&gt;
&lt;br /&gt;
Make sure that there is KVM enabled and that the following libraries (development package) are installed on the host machine:&lt;br /&gt;
&lt;br /&gt;
* zlib&lt;br /&gt;
* libSDL&lt;br /&gt;
* Xcomposite.&lt;br /&gt;
&lt;br /&gt;
Configure qemugl:&lt;br /&gt;
&lt;br /&gt;
 ./configure --target-list=i386-softmmu --enable-gl&lt;br /&gt;
&lt;br /&gt;
Check the output from &amp;lt;code&amp;gt;configure&amp;lt;/code&amp;gt; contains the strings below:&lt;br /&gt;
&lt;br /&gt;
 SDL support   yes&lt;br /&gt;
 ......&lt;br /&gt;
 KVM support   yes&lt;br /&gt;
&lt;br /&gt;
Build qemugl:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
This installs various QEMU binaries (default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;), including &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; used in this tutorial.&lt;br /&gt;
&lt;br /&gt;
== Create netbook image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-13 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
This section explains how to make a standard MeeGo netbook image run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
=== Install MeeGo netbook to QEMU raw disk image ===&lt;br /&gt;
&lt;br /&gt;
Create raw image file for MeeGo to install on. The &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; command is part of the [[#Build_QEMUGL_from_source|QEMU build]]:&lt;br /&gt;
 qemu-img create -f raw meego-netbook.raw 3.5G&lt;br /&gt;
&lt;br /&gt;
Install MeeGo to the raw hard disk, using the downloaded .img file as the installation CDROM:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot d -hda meego-netbook.raw -cdrom meego-netbook-ia32-1.1.80.1.20101012.1.img&lt;br /&gt;
&lt;br /&gt;
Boot into the image:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Go through the installation steps to set up a meego user. The password you set here is also used as the root password, which we'll use below.&lt;br /&gt;
&lt;br /&gt;
Note: occasionally I've halted the system before the meego user is setup. When I then try to boot into the UX, it fails because the user is missing. In this case, you can manually create the user from a root prompt (inside the QEMU image) with:&lt;br /&gt;
 useradd -d /home/meego -M -s /bin/bash meego&lt;br /&gt;
&lt;br /&gt;
Halt the system.&lt;br /&gt;
&lt;br /&gt;
Now boot it again (this time with networking enabled; type the command below, press return, then press tab like crazy so you can get to the boot menu):&lt;br /&gt;
 qemugl -m 1024 -vga std -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Next, edit the kernel command line on the boot menu screen so it looks like this:&lt;br /&gt;
 vmlinuz-2.6.35.3-8.5-netbook ro root=/dev/sda2 vga=current s&lt;br /&gt;
&lt;br /&gt;
This will get you a root prompt.&lt;br /&gt;
&lt;br /&gt;
=== Install and start openssh server ===&lt;br /&gt;
&lt;br /&gt;
Then install ssh server (this makes the following steps easier, as you can cut and paste into the ssh prompt):&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 chkconfig --add sshd&lt;br /&gt;
 /etc/init.d/sshd start&lt;br /&gt;
&lt;br /&gt;
Use can now use ssh to login to the image with:&lt;br /&gt;
&lt;br /&gt;
 ssh -p 6666 root@127.0.0.1&lt;br /&gt;
&lt;br /&gt;
(password is the same as you entered for your normal user when configuring the system)&lt;br /&gt;
&lt;br /&gt;
=== Set suid bit on Xorg binary ===&lt;br /&gt;
&lt;br /&gt;
Once logged in over ssh, set suid on the Xorg binary (so a normal user can start X):&lt;br /&gt;
&lt;br /&gt;
 chmod u+s /usr/bin/Xorg&lt;br /&gt;
&lt;br /&gt;
=== Install packages from the SDK repo ===&lt;br /&gt;
&lt;br /&gt;
Then install the SDK addons. First, add the MeeGo SDK repo:&lt;br /&gt;
&lt;br /&gt;
 zypper addrepo http://download.meego.com/live/devel:/tools:/sdk:/target/Trunk/ meego-sdk&lt;br /&gt;
&lt;br /&gt;
(you may need to use a different repo, depending on the netbook image you have)&lt;br /&gt;
&lt;br /&gt;
'''Another alternative is to [[#Manually build packages for an image running under QEMU GL|manually build these packages in a chroot]] and install them into the image.'''&lt;br /&gt;
&lt;br /&gt;
==== Install QEMU addons ====&lt;br /&gt;
&lt;br /&gt;
Install the qemugl addon package into the image:&lt;br /&gt;
&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
&lt;br /&gt;
==== Install kernel and virtiogl module ====&lt;br /&gt;
&lt;br /&gt;
Install a current kernel and virtiogl module for it:&lt;br /&gt;
&lt;br /&gt;
 zypper install kernel-netbook-2.6.35.3-13.2&lt;br /&gt;
 zypper install kmod-virtiogl&lt;br /&gt;
&lt;br /&gt;
This kernel is currently (2010-10-13) the only one available in the SDK repo, but other versions should be available soon. If you need to build the SDK addons or a kernel and its modules, [[#Manually build packages for an image running under QEMU GL|instructions are given below]].&lt;br /&gt;
&lt;br /&gt;
=== Run the image under QEMU with GL acceleration ===&lt;br /&gt;
&lt;br /&gt;
The image should now be ready. It can be started in QEMU with this command:&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024 -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -enable-kvm -vga std -enable-gl -device virtio-gl-pci -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Note that you should still be able to ssh to this image as above.&lt;br /&gt;
&lt;br /&gt;
== Create handset image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
If you have a handset image downloaded, follow these instructions to enable it to run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
Download a handset tarball (e.g. from http://meego.com/downloads/releases/1.0.80.8/meego-handset-day1-developer-preview), and untar the file:&lt;br /&gt;
&lt;br /&gt;
 tar xjvf meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-mrstnand.tar.bz2&lt;br /&gt;
&lt;br /&gt;
(Note that this procedure should work for other images from http://repo.meego.com/MeeGo/builds/trunk/ too.)&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules version 2.6.35 from below section [[#Build packages for image running under QEMU GL]], to get a kernel file and module directory. Supppose the kernel file is &amp;quot;bzImage&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -vga std -kernel bzImage \&lt;br /&gt;
        --append &amp;quot;root=/dev/sda1 init s&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Inside the emulated image, install these packages:&lt;br /&gt;
 zypper install xorg-x11-drv-vesa&lt;br /&gt;
 zypper install mesa-dri-swrast-driver&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 zypper install gdb-gdbserver&lt;br /&gt;
&lt;br /&gt;
Copy the kernel modules into the image. Suppose that there have been modules.tgz in host machine built from kernel build step above:&lt;br /&gt;
 scp host@ipaddress:modules.tgz .&lt;br /&gt;
 tar xzvf modules.tgz&lt;br /&gt;
 mv module_directory /lib/modules/&lt;br /&gt;
&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/zypp/repos.d/&amp;quot;. File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
&lt;br /&gt;
Run &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-handset&lt;br /&gt;
&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net \&lt;br /&gt;
        nic,model=e1000 -vga std -enable-gl -enable-kvm -device virtio-gl-pci -kernel bzImage --append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Manually build packages for an image running under QEMU GL ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-14 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
You can manually build the software required to run an image (netbook or handset) under QEMU with GL acceleration. But this is only recommended if a pre-built package for the software you want doesn't already exist (up-to-date packages should be available for both handset and netbook soon).&lt;br /&gt;
&lt;br /&gt;
The steps below should be followed from ''inside'' a MeeGo image intended to run under QEMU. You could try this inside an emulated image, or by [[Building a MeeGo chroot on Linux|building a chroot]] from the raw disk image and working inside that (the latter is the only reasonable approach for building the kernel).&lt;br /&gt;
&lt;br /&gt;
For building both the qemugl addon and the kernel+modules, you will need to install a toolchain first (either into the QEMU image, the toolchain, or both):&lt;br /&gt;
 zypper install make gcc git patch diffutils&lt;br /&gt;
&lt;br /&gt;
Alternatively, this command will get you ''all'' the MeeGo developer tools:&lt;br /&gt;
 zypper install -t pattern development-tools&lt;br /&gt;
&lt;br /&gt;
=== Build qemugl addon ===&lt;br /&gt;
&lt;br /&gt;
The addon package installed in above section can also be built from source. These steps are fairly easy to do inside the QEMU image itself.&lt;br /&gt;
&lt;br /&gt;
You don't need to do this if you already installed a &amp;lt;code&amp;gt;meego-sdk-qemugl-addon-*&amp;lt;/code&amp;gt; package (see [[#Install QEMU addons, kernel and virtiogl module|above]]). &lt;br /&gt;
&lt;br /&gt;
Install required packaged first:&lt;br /&gt;
 zypper install libXfixes-devel libX11-devel&lt;br /&gt;
&lt;br /&gt;
Checkout stub libGL source code:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-libgl-x86.git&lt;br /&gt;
&lt;br /&gt;
Build:&lt;br /&gt;
 cd meego-emulator-libgl-x86&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== Build and install kernel and modules ===&lt;br /&gt;
&lt;br /&gt;
The approach we take for this is to use a chroot to build an RPM package for the new kernel and modules. This can then be easily transferred to the QEMU image and installed. Building the new kernel directly inside the QEMU image is too slow to be practical.&lt;br /&gt;
&lt;br /&gt;
The first thing you'll need is a MeeGo chroot, built from the same image you're using under QEMU. See [[Building a MeeGo chroot on Linux|this page]] for instructions.&lt;br /&gt;
&lt;br /&gt;
Enter the chroot.&lt;br /&gt;
&lt;br /&gt;
Install &amp;lt;code&amp;gt;rpmbuild&amp;lt;/code&amp;gt; (used to build the RPM from the kernel source):&lt;br /&gt;
 zypper install rpm-build&lt;br /&gt;
&lt;br /&gt;
Get the MeeGo kernel-source (this contains configuration files for building MeeGo kernels):&lt;br /&gt;
 git clone git://gitorious.org/meego-os-base/kernel-source.git&lt;br /&gt;
&lt;br /&gt;
Get the virtio patches for the kernel:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-virtiogl-x86.git&lt;br /&gt;
&lt;br /&gt;
Copy the virtio patch into the patches dir of kernel-source:&lt;br /&gt;
 cp meego-emulator-virtiogl-x86/linux-2.6.35-virtio-for-qemu-gl-acceleration.patch kernel-source/patches&lt;br /&gt;
&lt;br /&gt;
Download the kernel source tarball (NB you want the plain series version, not one with a patch number); in this case, I used a 2.6.35 kernel:&lt;br /&gt;
 cd kernel-source&lt;br /&gt;
 curl -o linux-2.6.35.tar.bz2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.tar.bz2&lt;br /&gt;
&lt;br /&gt;
Remain in the &amp;lt;code&amp;gt;kernel-source&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;series&amp;lt;/code&amp;gt; file to add the virtiogl patch to the list of patches to apply:&lt;br /&gt;
 # Add Virtio-mem module for QEMU GL acceleration&lt;br /&gt;
 linux-2.6.35-virtio-for-qemu-gl-acceleration.patch&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;config-netbook&amp;lt;/code&amp;gt; file (used for both handset and netbook) to enable VIRTIOGL as a module:&lt;br /&gt;
 CONFIG_VIRTIO_PCI=m&lt;br /&gt;
 CONFIG_VIRTIOGL=m&lt;br /&gt;
 # CONFIG_VIRTIO_BLK is not set&lt;br /&gt;
 # CONFIG_VIRTIO_NET is not set&lt;br /&gt;
 # CONFIG_VIRTIO_CONSOLE is not set&lt;br /&gt;
 # CONFIG_HW_RANDOM_VIRTIO is not set&lt;br /&gt;
&lt;br /&gt;
Delete this line from the same file (we want to set a value and it could be confusing otherwise):&lt;br /&gt;
&lt;br /&gt;
 # CONFIG_VIRTIO_PCI is not set&lt;br /&gt;
&lt;br /&gt;
Generate spec files and config files:&lt;br /&gt;
 make&lt;br /&gt;
 make -f Makefile.config&lt;br /&gt;
&lt;br /&gt;
This generates config files with names in the format &amp;lt;code&amp;gt;kernel-xxx.config&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Patch the kernel:&lt;br /&gt;
 ./scripts/install-git-hooks&lt;br /&gt;
 ./scripts/sequence-patch.sh --quilt&lt;br /&gt;
&lt;br /&gt;
Copy kernel config file into the source tree:&lt;br /&gt;
 cp kernel-netbook.config tmp/linux-2.6.35-master/.config&lt;br /&gt;
&lt;br /&gt;
Build a kernel RPM package (takes a long time):&lt;br /&gt;
 cd tmp/linux-2.6.35-master&lt;br /&gt;
 make oldconfig (at each prompt, accept the default)&lt;br /&gt;
 make rpm-pkg&lt;br /&gt;
&lt;br /&gt;
The resulting package is in &amp;lt;code&amp;gt;/root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Copy this to the QEMU image over ssh or equivalent, for example:&lt;br /&gt;
 scp -P 6666 /root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm root@127.0.0.1:/root/&lt;br /&gt;
&lt;br /&gt;
Get a root prompt in the QEMU image (either by booting into single user mode or logging in via ssh) and install the RPM:&lt;br /&gt;
 rpm -ivh /root/kernel-2.6.35.3+-1.i386.rpm&lt;br /&gt;
&lt;br /&gt;
Build and install the new initrd (a RAM disk image) for the kernel and modify the boot loader:&lt;br /&gt;
 new-kernel-pkg --mkinitrd --install --make-default --depmod 2.6.35.3+&lt;br /&gt;
(replace 2.6.35.3+ with the version for your new kernel)&lt;br /&gt;
&lt;br /&gt;
Next time you [[#Run the image under QEMU with GL acceleration|boot the image]], it should default to using the new kernel with the virtiogl module.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-10-21T14:10:17Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Build QEMUGL from source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Meego-1.1]]&lt;br /&gt;
&lt;br /&gt;
This page describes how to build the [http://wiki.meego.com/MeeGo_SDK_with_QEMU MeeGo SDK QEMU] tools from source, including QEMU binary, patched kernel module, and stub libGL.&lt;br /&gt;
&lt;br /&gt;
== Build QEMUGL from source ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-11 by [[User:Elliot|Elliot Smith]]''&lt;br /&gt;
&lt;br /&gt;
'''An alternative to building from source is to install a qemugl package from one of the repositories at http://download.meego.com/live/Tools:/SDK:/Host/'''&lt;br /&gt;
&lt;br /&gt;
Example of how to add this repository in Ubuntu 10.04, two steps:&lt;br /&gt;
* From ''Software Sources'' -&amp;gt; ''Other Software''; click ''Add'' and insert this line: &amp;lt;code&amp;gt;deb http://download.meego.com/live/Tools:/SDK:/Host/Ubuntu_10.04 /&amp;lt;/code&amp;gt;&lt;br /&gt;
* Import the key from the following file (save it on your HDD first): http://download.meego.com/live/Tools:/SDK:/Host/Ubuntu_10.04/Release.key using the ''Import Key File...'' in the ''Authentication'' tab&lt;br /&gt;
Although I have not verified it, I assume the procedure would be similar for other distributions/versions.&lt;br /&gt;
&lt;br /&gt;
'''If you still prefer to build QEMUGL from sources, proceed with these steps:'''&lt;br /&gt;
&lt;br /&gt;
Checkout the QEMU GL source code (this is basically QEMU with some patches to enable GL acceleration):&lt;br /&gt;
&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-qemugl-x86.git&lt;br /&gt;
&lt;br /&gt;
Checkout the qemu-gl branch:&lt;br /&gt;
&lt;br /&gt;
 cd meego-emulator-qemugl-x86&lt;br /&gt;
 git checkout -b qemu-gl --track origin/qemu-gl&lt;br /&gt;
&lt;br /&gt;
Make sure that there is KVM enabled and that the following libraries (development package) are installed on the host machine:&lt;br /&gt;
&lt;br /&gt;
* zlib&lt;br /&gt;
* libSDL&lt;br /&gt;
* Xcomposite.&lt;br /&gt;
&lt;br /&gt;
Configure qemugl:&lt;br /&gt;
&lt;br /&gt;
 ./configure --target-list=i386-softmmu --enable-gl&lt;br /&gt;
&lt;br /&gt;
Check the output from &amp;lt;code&amp;gt;configure&amp;lt;/code&amp;gt; contains the strings below:&lt;br /&gt;
&lt;br /&gt;
 SDL support   yes&lt;br /&gt;
 ......&lt;br /&gt;
 KVM support   yes&lt;br /&gt;
&lt;br /&gt;
Build qemugl:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
This installs various QEMU binaries (default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;), including &amp;lt;code&amp;gt;qemugl&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; used in this tutorial.&lt;br /&gt;
&lt;br /&gt;
== Create netbook image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-13 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
This section explains how to make a standard MeeGo netbook image run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
=== Install MeeGo netbook to QEMU raw disk image ===&lt;br /&gt;
&lt;br /&gt;
Create raw image file for MeeGo to install on. The &amp;lt;code&amp;gt;qemu-img&amp;lt;/code&amp;gt; command is part of the [[#Build_QEMUGL_from_source|QEMU build]]:&lt;br /&gt;
 qemu-img create -f raw meego-netbook.raw 3.5G&lt;br /&gt;
&lt;br /&gt;
Install MeeGo to the raw hard disk, using the downloaded .img file as the installation CDROM:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot d -hda meego-netbook.raw -cdrom meego-netbook-ia32-1.1.80.1.20101012.1.img&lt;br /&gt;
&lt;br /&gt;
Boot into the image:&lt;br /&gt;
 qemugl -m 1024 -vga std -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Go through the installation steps to set up a meego user. The password you set here is also used as the root password, which we'll use below.&lt;br /&gt;
&lt;br /&gt;
Note: occasionally I've halted the system before the meego user is setup. When I then try to boot into the UX, it fails because the user is missing. In this case, you can manually create the user from a root prompt (inside the QEMU image) with:&lt;br /&gt;
 useradd -d /home/meego -M -s /bin/bash meego&lt;br /&gt;
&lt;br /&gt;
Halt the system.&lt;br /&gt;
&lt;br /&gt;
Now boot it again (this time with networking enabled; type the command below, press return, then press tab like crazy so you can get to the boot menu):&lt;br /&gt;
 qemugl -m 1024 -vga std -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Next, edit the kernel command line on the boot menu screen so it looks like this:&lt;br /&gt;
 vmlinuz-2.6.35.3-8.5-netbook ro root=/dev/sda2 vga=current s&lt;br /&gt;
&lt;br /&gt;
This will get you a root prompt.&lt;br /&gt;
&lt;br /&gt;
=== Install and start openssh server ===&lt;br /&gt;
&lt;br /&gt;
Then install ssh server (this makes the following steps easier, as you can cut and paste into the ssh prompt):&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 chkconfig --add sshd&lt;br /&gt;
 /etc/init.d/sshd start&lt;br /&gt;
&lt;br /&gt;
Use can now use ssh to login to the image with:&lt;br /&gt;
&lt;br /&gt;
 ssh -p 6666 root@127.0.0.1&lt;br /&gt;
&lt;br /&gt;
(password is the same as you entered for your normal user when configuring the system)&lt;br /&gt;
&lt;br /&gt;
=== Set suid bit on Xorg binary ===&lt;br /&gt;
&lt;br /&gt;
Once logged in over ssh, set suid on the Xorg binary (so a normal user can start X):&lt;br /&gt;
&lt;br /&gt;
 chmod u+s /usr/bin/Xorg&lt;br /&gt;
&lt;br /&gt;
=== Install packages from the SDK repo ===&lt;br /&gt;
&lt;br /&gt;
Then install the SDK addons. First, add the MeeGo SDK repo:&lt;br /&gt;
&lt;br /&gt;
 zypper addrepo http://download.meego.com/live/devel:/tools:/sdk:/target/Trunk/ meego-sdk&lt;br /&gt;
&lt;br /&gt;
(you may need to use a different repo, depending on the netbook image you have)&lt;br /&gt;
&lt;br /&gt;
'''Another alternative is to [[#Manually build packages for an image running under QEMU GL|manually build these packages in a chroot]] and install them into the image.'''&lt;br /&gt;
&lt;br /&gt;
==== Install QEMU addons ====&lt;br /&gt;
&lt;br /&gt;
Install the qemugl addon package into the image:&lt;br /&gt;
&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
&lt;br /&gt;
==== Install kernel and virtiogl module ====&lt;br /&gt;
&lt;br /&gt;
Install a current kernel and virtiogl module for it:&lt;br /&gt;
&lt;br /&gt;
 zypper install kernel-netbook-2.6.35.3-13.2&lt;br /&gt;
 zypper install kmod-virtiogl&lt;br /&gt;
&lt;br /&gt;
This kernel is currently (2010-10-13) the only one available in the SDK repo, but other versions should be available soon. If you need to build the SDK addons or a kernel and its modules, [[#Manually build packages for an image running under QEMU GL|instructions are given below]].&lt;br /&gt;
&lt;br /&gt;
=== Run the image under QEMU with GL acceleration ===&lt;br /&gt;
&lt;br /&gt;
The image should now be ready. It can be started in QEMU with this command:&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024 -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -enable-kvm -vga std -enable-gl -device virtio-gl-pci -boot c -hda meego-netbook.raw&lt;br /&gt;
&lt;br /&gt;
Note that you should still be able to ssh to this image as above.&lt;br /&gt;
&lt;br /&gt;
== Create handset image for QEMU with GL acceleration ==&lt;br /&gt;
&lt;br /&gt;
If you have a handset image downloaded, follow these instructions to enable it to run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
Download a handset tarball (e.g. from http://meego.com/downloads/releases/1.0.80.8/meego-handset-day1-developer-preview), and untar the file:&lt;br /&gt;
&lt;br /&gt;
 tar xjvf meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-mrstnand.tar.bz2&lt;br /&gt;
&lt;br /&gt;
(Note that this procedure should work for other images from http://repo.meego.com/MeeGo/builds/trunk/ too.)&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules version 2.6.35 from below section [[#Build packages for image running under QEMU GL]], to get a kernel file and module directory. Supppose the kernel file is &amp;quot;bzImage&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -vga std -kernel bzImage \&lt;br /&gt;
        --append &amp;quot;root=/dev/sda1 init s&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Inside the emulated image, install these packages:&lt;br /&gt;
 zypper install xorg-x11-drv-vesa&lt;br /&gt;
 zypper install mesa-dri-swrast-driver&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 zypper install gdb-gdbserver&lt;br /&gt;
&lt;br /&gt;
Copy the kernel modules into the image. Suppose that there have been modules.tgz in host machine built from kernel build step above:&lt;br /&gt;
 scp host@ipaddress:modules.tgz .&lt;br /&gt;
 tar xzvf modules.tgz&lt;br /&gt;
 mv module_directory /lib/modules/&lt;br /&gt;
&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/zypp/repos.d/&amp;quot;. File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
&lt;br /&gt;
Run &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-handset&lt;br /&gt;
&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net \&lt;br /&gt;
        nic,model=e1000 -vga std -enable-gl -enable-kvm -device virtio-gl-pci -kernel bzImage --append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Manually build packages for an image running under QEMU GL ==&lt;br /&gt;
&lt;br /&gt;
''Verified on Linux (Fedora 13) on 2010-10-14 by [[User:Elliot|Elliot Smith]] using this netbook image:&amp;lt;br/&amp;gt;''&lt;br /&gt;
''http://repo.meego.com/MeeGo/builds/trunk/1.1.80.1.20101012.1/netbook/images/meego-netbook-ia32/meego-netbook-ia32-1.1.80.1.20101012.1.img''&lt;br /&gt;
&lt;br /&gt;
You can manually build the software required to run an image (netbook or handset) under QEMU with GL acceleration. But this is only recommended if a pre-built package for the software you want doesn't already exist (up-to-date packages should be available for both handset and netbook soon).&lt;br /&gt;
&lt;br /&gt;
The steps below should be followed from ''inside'' a MeeGo image intended to run under QEMU. You could try this inside an emulated image, or by [[Building a MeeGo chroot on Linux|building a chroot]] from the raw disk image and working inside that (the latter is the only reasonable approach for building the kernel).&lt;br /&gt;
&lt;br /&gt;
For building both the qemugl addon and the kernel+modules, you will need to install a toolchain first (either into the QEMU image, the toolchain, or both):&lt;br /&gt;
 zypper install make gcc git patch diffutils&lt;br /&gt;
&lt;br /&gt;
Alternatively, this command will get you ''all'' the MeeGo developer tools:&lt;br /&gt;
 zypper install -t pattern development-tools&lt;br /&gt;
&lt;br /&gt;
=== Build qemugl addon ===&lt;br /&gt;
&lt;br /&gt;
The addon package installed in above section can also be built from source. These steps are fairly easy to do inside the QEMU image itself.&lt;br /&gt;
&lt;br /&gt;
You don't need to do this if you already installed a &amp;lt;code&amp;gt;meego-sdk-qemugl-addon-*&amp;lt;/code&amp;gt; package (see [[#Install QEMU addons, kernel and virtiogl module|above]]). &lt;br /&gt;
&lt;br /&gt;
Install required packaged first:&lt;br /&gt;
 zypper install libXfixes-devel libX11-devel&lt;br /&gt;
&lt;br /&gt;
Checkout stub libGL source code:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-libgl-x86.git&lt;br /&gt;
&lt;br /&gt;
Build:&lt;br /&gt;
 cd meego-emulator-libgl-x86&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== Build and install kernel and modules ===&lt;br /&gt;
&lt;br /&gt;
The approach we take for this is to use a chroot to build an RPM package for the new kernel and modules. This can then be easily transferred to the QEMU image and installed. Building the new kernel directly inside the QEMU image is too slow to be practical.&lt;br /&gt;
&lt;br /&gt;
The first thing you'll need is a MeeGo chroot, built from the same image you're using under QEMU. See [[Building a MeeGo chroot on Linux|this page]] for instructions.&lt;br /&gt;
&lt;br /&gt;
Enter the chroot.&lt;br /&gt;
&lt;br /&gt;
Install &amp;lt;code&amp;gt;rpmbuild&amp;lt;/code&amp;gt; (used to build the RPM from the kernel source):&lt;br /&gt;
 zypper install rpm-build&lt;br /&gt;
&lt;br /&gt;
Get the MeeGo kernel-source (this contains configuration files for building MeeGo kernels):&lt;br /&gt;
 git clone git://gitorious.org/meego-os-base/kernel-source.git&lt;br /&gt;
&lt;br /&gt;
Get the virtio patches for the kernel:&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-virtiogl-x86.git&lt;br /&gt;
&lt;br /&gt;
Copy the virtio patch into the patches dir of kernel-source:&lt;br /&gt;
 cp meego-emulator-virtiogl-x86/linux-2.6.35-virtio-for-qemu-gl-acceleration.patch kernel-source/patches&lt;br /&gt;
&lt;br /&gt;
Download the kernel source tarball (NB you want the plain series version, not one with a patch number); in this case, I used a 2.6.35 kernel:&lt;br /&gt;
 cd kernel-source&lt;br /&gt;
 curl -o linux-2.6.35.tar.bz2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.tar.bz2&lt;br /&gt;
&lt;br /&gt;
Remain in the &amp;lt;code&amp;gt;kernel-source&amp;lt;/code&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;series&amp;lt;/code&amp;gt; file to add the virtiogl patch to the list of patches to apply:&lt;br /&gt;
 # Add Virtio-mem module for QEMU GL acceleration&lt;br /&gt;
 linux-2.6.35-virtio-for-qemu-gl-acceleration.patch&lt;br /&gt;
&lt;br /&gt;
Edit the &amp;lt;code&amp;gt;config-netbook&amp;lt;/code&amp;gt; file (used for both handset and netbook) to enable VIRTIOGL as a module:&lt;br /&gt;
 CONFIG_VIRTIO_PCI=m&lt;br /&gt;
 CONFIG_VIRTIOGL=m&lt;br /&gt;
 # CONFIG_VIRTIO_BLK is not set&lt;br /&gt;
 # CONFIG_VIRTIO_NET is not set&lt;br /&gt;
 # CONFIG_VIRTIO_CONSOLE is not set&lt;br /&gt;
 # CONFIG_HW_RANDOM_VIRTIO is not set&lt;br /&gt;
&lt;br /&gt;
Delete this line from the same file (we want to set a value and it could be confusing otherwise):&lt;br /&gt;
&lt;br /&gt;
 # CONFIG_VIRTIO_PCI is not set&lt;br /&gt;
&lt;br /&gt;
Generate spec files and config files:&lt;br /&gt;
 make&lt;br /&gt;
 make -f Makefile.config&lt;br /&gt;
&lt;br /&gt;
This generates config files with names in the format &amp;lt;code&amp;gt;kernel-xxx.config&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Patch the kernel:&lt;br /&gt;
 ./scripts/install-git-hooks&lt;br /&gt;
 ./scripts/sequence-patch.sh --quilt&lt;br /&gt;
&lt;br /&gt;
Copy kernel config file into the source tree:&lt;br /&gt;
 cp kernel-netbook.config tmp/linux-2.6.35-master/.config&lt;br /&gt;
&lt;br /&gt;
Build a kernel RPM package (takes a long time):&lt;br /&gt;
 cd tmp/linux-2.6.35-master&lt;br /&gt;
 make oldconfig (at each prompt, accept the default)&lt;br /&gt;
 make rpm-pkg&lt;br /&gt;
&lt;br /&gt;
The resulting package is in &amp;lt;code&amp;gt;/root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Copy this to the QEMU image over ssh or equivalent, for example:&lt;br /&gt;
 scp -P 6666 /root/rpmbuild/RPMS/i386/kernel-2.6.35.3+-1.i386.rpm root@127.0.0.1:/root/&lt;br /&gt;
&lt;br /&gt;
Get a root prompt in the QEMU image (either by booting into single user mode or logging in via ssh) and install the RPM:&lt;br /&gt;
 rpm -ivh /root/kernel-2.6.35.3+-1.i386.rpm&lt;br /&gt;
&lt;br /&gt;
Build and install the new initrd (a RAM disk image) for the kernel and modify the boot loader:&lt;br /&gt;
 new-kernel-pkg --mkinitrd --install --make-default --depmod 2.6.35.3+&lt;br /&gt;
(replace 2.6.35.3+ with the version for your new kernel)&lt;br /&gt;
&lt;br /&gt;
Next time you [[#Run the image under QEMU with GL acceleration|boot the image]], it should default to using the new kernel with the virtiogl module.&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools</id>
		<title>SDK/Docs/1.1/Building QEMU Tools</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/SDK/Docs/1.1/Building_QEMU_Tools"/>
				<updated>2010-08-25T17:34:53Z</updated>
		
		<summary type="html">&lt;p&gt;Gvancuts: /* Build QEMUGL from source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes how to build the [http://wiki.meego.com/MeeGo_SDK_with_QEMU MeeGo SDK QEMU] tools from source, including QEMU binary, patched kernel module, and stub libGL.&lt;br /&gt;
&lt;br /&gt;
== Build QEMUGL from source ==&lt;br /&gt;
Checkout the QEMU GL source code&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-qemugl-x86.git&lt;br /&gt;
Switch to qemu-gl branch&lt;br /&gt;
 cd meego-emulator-qemugl-x86&lt;br /&gt;
 git branch qemu-gl --track origin/qemu-gl&lt;br /&gt;
 git checkout qemu-gl&lt;br /&gt;
Configure qemu-gl. Make sure that there is KVM enabled and that the following libraries (development package) are installed on the host machine: zlib, libSDL, Xcomposite.&lt;br /&gt;
 ./configure --target-list=i386-softmmu --enable-gl &lt;br /&gt;
Check the output of configure has below strings:&lt;br /&gt;
 SDL support   yes&lt;br /&gt;
 ......&lt;br /&gt;
 KVM support   yes&lt;br /&gt;
build the qemu-gl&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
The /usr/local/bin/qemugl will be generated&lt;br /&gt;
&lt;br /&gt;
== Create images for QEMU with GL acceleration ==&lt;br /&gt;
=== Convert normal MeeGo netbook image for MeeGo SDK ===&lt;br /&gt;
&lt;br /&gt;
If you have had formal released netbook images in hand, for instance, the image from http://meego.com/downloads/releases/1.0/meego-v1.0-netbooks, below describes how to make them run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
Create raw image file for MeeGo to install on. &amp;quot;qemu-img&amp;quot; is available after install a normal qemu image on host:&lt;br /&gt;
 qemu-img create -f raw meego1.0-netbook.raw 3.5G&lt;br /&gt;
&lt;br /&gt;
Install MeeGo to raw image from the live image:&lt;br /&gt;
 qemugl -m 1024 -enable-kvm -boot d -hda meego1.0-netbook.raw -cdrom meego-netbook-chromium-ia32-1.0-20100524.1.img -vga std&lt;br /&gt;
&lt;br /&gt;
Start the MeeGo into single user mode. (Press &amp;quot;Tab&amp;quot; in booting up, and add &amp;quot;s&amp;quot; in kernel arguments), and run below command:&lt;br /&gt;
 chmod u+s /usr/bin/Xorg&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/yum.repos.d/&amp;quot; (if you are using yum) or &amp;quot;/etc/zypp/repos.d/&amp;quot; (if you are using zypper). File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
Run &amp;quot;yum&amp;quot; or &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 sudo yum install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
or&lt;br /&gt;
 sudo zypper install meego-sdk-qemugl-addon-netbook&lt;br /&gt;
&lt;br /&gt;
The packages could be downloaded directly from http://download.meego.com/live/Tools:/SDK/Trunk/i586/ and installed manually with &amp;quot;rpm -i&amp;quot; command.&lt;br /&gt;
&lt;br /&gt;
Build kernel and modules version 2.6.33 from below section &amp;quot;Build kernel with virtio-gl kernel module&amp;quot;. After those steps, install the new kernel into the image.&lt;br /&gt;
&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego1.0-netbook.raw -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net nic,model=e1000 -enable-kvm \&lt;br /&gt;
        -vga std -enable-gl -device virtio-gl-pci&lt;br /&gt;
&lt;br /&gt;
=== Convert DAY1 handset image for MeeGo SDK ===&lt;br /&gt;
If you have had DAY1 handset image downloaded, below describes how to make them run in QEMU with GL acceleration.&lt;br /&gt;
&lt;br /&gt;
download DAY1 tarball from http://meego.com/downloads/releases/1.0.80.8/meego-handset-day1-developer-preview, and untar the file&lt;br /&gt;
 tar xjvf meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-mrstnand.tar.bz2&lt;br /&gt;
Build kernel and modules version 2.6.35 from below section &amp;quot;Build kernel with virtio-gl kernel module&amp;quot;, to get a kernel file and module directory. Supppose the kernel file is &amp;quot;bzImage&amp;quot;.&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -vga std -kernel bzImage \&lt;br /&gt;
        --append &amp;quot;root=/dev/sda1 init s&amp;quot;&lt;br /&gt;
Install some packages as follow:&lt;br /&gt;
 zypper install xorg-x11-drv-vesa&lt;br /&gt;
 zypper install mesa-dri-swrast-driver&lt;br /&gt;
 zypper install openssh-server&lt;br /&gt;
 zypper install gdb-gdbserver&lt;br /&gt;
Copy the kernel modules into the image. Suppose that there have been modules.tgz in host machine built from kernel build step above:&lt;br /&gt;
 scp host@ipaddress:modules.tgz .&lt;br /&gt;
 tar xzvf modules.tgz&lt;br /&gt;
 mv module_directory /lib/modules/&lt;br /&gt;
Add a new repo file to &amp;quot;/etc/zypp/repos.d/&amp;quot;. File name could be &amp;quot;meego-sdk.repo&amp;quot;, and content is as below:&lt;br /&gt;
 [meego-sdk]&lt;br /&gt;
 name=meego-sdk&lt;br /&gt;
 failovermethod=priority&lt;br /&gt;
 baseurl=http://download.meego.com/live/Tools:/SDK/Trunk/&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-meego&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 enabled=1&lt;br /&gt;
Run &amp;quot;zypper&amp;quot; to install qemugl addon package to the image:&lt;br /&gt;
 zypper install meego-sdk-qemugl-addon-handset&lt;br /&gt;
We are done now. The new image could be started in QEMU with below command:&lt;br /&gt;
 qemugl -m 1024  -boot c -hda meego-handset-ia32-aava-mtf-1.0.80.8.20100629.1-sda.bin -net user,hostfwd=tcp:127.0.0.1:6666-:22 -net \&lt;br /&gt;
        nic,model=e1000 -vga std -enable-gl -enable-kvm -device virtio-gl-pci -kernel bzImage --append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Build packages for image running with QEMU GL ==&lt;br /&gt;
=== Build kernel with virtio-gl kernel module ===&lt;br /&gt;
In order to use GL acceleration in QEMU, Kernel needs to be rebuilt with the virtio-gl kernel module. The &amp;quot;virtio-gl&amp;quot; module is responsible for data communication between client OS and QEMU host for GL acceleration. The README in below link could be followed to build a new kernel and modules. The &amp;quot;kernel-netbook.config&amp;quot; should be used in step 8.c in README:&lt;br /&gt;
&lt;br /&gt;
http://meego.gitorious.org/meego-developer-tools/meego-emulator-virtiogl-x86/trees/master&lt;br /&gt;
&lt;br /&gt;
After those steps, the kernel is available in &amp;quot;/boot/vmlinuz-xxx&amp;quot; and modules are in &amp;quot;/lib/modules/&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Build qemugl addon ===&lt;br /&gt;
The addon package installed in above section could be built from source as well. This step is not needed if you have followed above steps to use the pre-built package already.&lt;br /&gt;
&lt;br /&gt;
Checkout stub libGL source code&lt;br /&gt;
 git clone git://gitorious.org/meego-developer-tools/meego-emulator-libgl-x86.git&lt;br /&gt;
Switch to chroot environment, or copy the source to a netbook running MeeGo, then run make&lt;br /&gt;
 make&lt;/div&gt;</summary>
		<author><name>Gvancuts</name></author>	</entry>

	</feed>