Emulating the XO: Difference between revisions
No edit summary |
|||
(161 intermediate revisions by 50 users not shown) | |||
Line 1: | Line 1: | ||
{{translations}} |
{{translations}} |
||
{{emulation-nav}} |
|||
{{ Latest Releases | livecd = inline | devel = inline | extra }} |
|||
In the past, OLPC produced alternative software images which could be run in emulators such as QEMU and VMware. This meant that development and testing could happen to a limited extent without requiring an XO laptop. |
|||
[[Image:AP1_39.jpg|thumb|laptop-in-laptop]] |
|||
'''In 2013, please see Tom Gilliard's many [http://wiki.sugarlabs.org/go/Sugar_Creation_Kit virtual machine images ready-to-go].''' |
|||
== Quick Start - [[LiveCd|LiveCD]] == |
|||
Note, XOs are readily available to genuine volunteer contributors through the [[Contributors program]]. |
|||
For many, the [[LiveCd|LiveCD]] is the easiest way to try [[Sugar]]. It's easy to do, but your work is lost when you reboot. |
|||
[http://sugarlabs.org Sugar], the unique user interface of the XO laptops, is also distributed as a generic software project and can be developed and tested on "regular" computers as well as XOs. See [http://wiki.sugarlabs.org/go/Downloads Sugar Labs Downloads] for the full range of options, such as [http://wiki.sugarlabs.org/go/Sugar_on_a_Stick Sugar on a Stick]. |
|||
== Quick Start - [[Emulating the XO/Quick Start|Emulation]] == |
|||
'''[[Emulating the XO/Quick Start|Emulation]]''' is the other way to try [[Sugar]]. It can be harder to set up,, but work is preserved. |
|||
:Sound in [[TamTam]] may not be working at the moment. [[User:MitchellNCharity|MitchellNCharity]] 13:16, 5 June 2007 (EDT) |
|||
== Quick Start for Developers == |
|||
Developing on emulation is one alternative for developing software. |
|||
Get [http://olpc.download.redhat.com/olpc/streams/development/LATEST/devel_ext3/olpc-redhat-stream-development-devel_ext3.img.bz2 the latest image] |
|||
from [http://olpc.download.redhat.com/olpc/streams/development/LATEST/devel_ext3/ here]. ''(add link to tinderbox)'' |
|||
Install QEMU and kernel acceleration as described in [[Emulating the XO/Quick Start]]. See the [[/Help_and_tips]] "Development" section. |
|||
'''See [[#XO-QEMU boot broken - current workarounds]].''' |
|||
== Overview == |
|||
One way to run oplc software is using an emulator on your pc. See [[Getting started programming]] for other options. |
|||
Note '''[[:Category:Emulation]]''' and '''[[Emulating the XO/Help and tips|Help and tips]]'''. |
|||
For play, you can use [[LiveCd]] or [[Emulating the XO/Quick Start|Quick Start]]. |
|||
For development, you can use [[LiveCd]], or qemu (as in quick start, but with a different image), or perhaps one of the [[Developer Images]] other than the LiveCd. An alternate approach is to attempt [[:Category:Installing_Sugar|installing sugar]]. See [[Getting started programming]] for a comparison. |
|||
A common development approach is to use [[QEMU]] with kqemu acceleration. See [[Emulating the XO/Quick Start|Quick Start]] for the basics. |
|||
Though for development, we will use a different .img, one with a few extra utility programs. See [[OS images]], including '''[[OS_images#Latest_Stable_Build |latest stable build]]'''. |
|||
Instead of qemu, you can run [[Emulating the XO/UsingVMware|VMware]], and there are additional options on a [[Emulating the XO/Mac|Mac]]. |
|||
Please report your experiences in [[User Feedback on Images]]. There is a [[Virtualization Common Room]]. |
|||
There are [[Emulating the XO/Limitations of XO disk images|limitations with XO disk images]]. |
|||
The LATEST-STABLE-BUILD versus LATEST build distinction is mostly of interest to people running on actual XO's. In emulation, developers should usually use LATEST. And when STABLE is old, non-developers probably should too. |
|||
== Comparison of alternatives == |
|||
An OLPC laptop is custom hardware, running a stripped-down Red Hat linux, running [[Sugar]]. But what if you don't have a real olpc laptop? There are a several options, which can each be used in a couple of ways. |
|||
=== recomendations === |
|||
{| border=1 cellspacing=0 |
|||
|- style="background:lightgray; " |
|||
! platform !! purpose !! recommendation |
|||
|- |
|||
| Windows || development || emulated xo disk image; or emulated Ubuntu with sugar-jhbuild; (or develoepr CD or LiveCD)?. (''need your reports'') |
|||
|- |
|||
| Mac || development || emulated xo disk image; or emulated Ubuntu with sugar-jhbuild; (or developer CD or LiveCD)?. (''need your reports'') |
|||
|- |
|||
| Mac with Parallels || development || install Ubuntu 32-bit, and [[Sugar on Ubuntu Linux]]. See [[/Mac]]. |
|||
|- |
|||
| Ubuntu 32-bit || development || [[Sugar with sugar-jhbuild]] and [[Sugar on Ubuntu Linux]] |
|||
|- |
|||
| 32-bit linux || development || [[Sugar with sugar-jhbuild]] |
|||
|- |
|||
| 64-bit linux || development || xo disk images under qemu; or [[LiveCd]] once it gets updated (currently it's April) |
|||
|} |
|||
:I don't really believe the development option of Windows/Mac developer/live CD. I've not yet heard of it actually being used. They are months out of date (April). But [[User:Mcfletch|Mcfletch]] said (in May) it's an option, so I added it. [[User:MitchellNCharity|MitchellNCharity]] 09:19, 23 June 2007 (EDT) |
|||
=== background === |
|||
{| border=1 cellspacing=0 |
|||
|- style="background:lightgray; " |
|||
! option |
|||
! updated !! sound? !! camera? !! library? !! etoys? !! R/W? !! development software? !! net? !! comments |
|||
|- |
|||
| [[:Category:Installing Sugar|Installing Sugar]] |
|||
| continuous || yes || yes? || yes? || yes |
|||
| yes || your own || yes |
|||
| On some platforms, it takes time and space (hours and ~3GB), but "just works". On others, it is quite difficult to install. |
|||
|- |
|||
| [[:Category:Installing Sugar|Installing Sugar]], on a virtual 32-bit Ubuntu, running in an emulator (qemu, parallels, or vmware) |
|||
|- |
|||
| [[LiveCd]] |
|||
| April || yes(boot) yes?(qemu) || yes?(boot) no(qemu) || no || yes |
|||
| no || toolchain, Gnome || yes? |
|||
| Alternative Quick Start. Can both be booted from, and used in qemu. Problems: A. |
|||
|- |
|||
| colspan=10 style="background:lightgray; " | [[OS images|XO disk images]]: |
|||
|- |
|||
| colspan=10 | LATEST-STABLE-BUILD <span style="font-size:80%; "><tt>http://olpc.download.redhat.com/olpc/streams/development/LATEST-STABLE-BUILD/</tt></span> |
|||
|- |
|||
| ...development-ext3.img |
|||
| ~monthly || yes/B || no || yes || yes |
|||
| yes || no || after config |
|||
| Quick Start for getting a look at Sugar. |
|||
|- |
|||
| ...development-devel_ext3.img |
|||
| ~monthly || yes/B || no || no || yes |
|||
| yes || a little || after config |
|||
|- |
|||
| colspan=10 | LATEST <span style="font-size:80%; "><tt>http://olpc.download.redhat.com/olpc/streams/development/LATEST/</tt></span> |
|||
|- |
|||
| ...development-ext3.img |
|||
| ~daily || yes/B || no || yes || yes |
|||
| yes || no || after config |
|||
|- |
|||
| [http://olpc.download.redhat.com/olpc/streams/development/LATEST/devel_ext3/olpc-redhat-stream-development-devel_ext3.img.bz2 ...development-devel_ext3.img] |
|||
| ~daily || yes/B || no || no || yes |
|||
| yes || a little || after config |
|||
| Good for new developers (requires some command-line comfort). |
|||
|- |
|||
| colspan=10 style="background:lightgray; " | OTHER |
|||
|- |
|||
| [[Developer Images#Big Fedora Core 6 Build|FC6+Sugar]] |
|||
| April || yes? || ? || ? || no |
|||
| yes || Full Fedora Softare Dev. || yes |
|||
| 6GB (April version: no etoys) |
|||
|} |
|||
Key: |
|||
:library: A library of sample content is included (english version). Ie, pretty text to web browse without having to get network. |
|||
:R/W (writable): With an .img, you can save things between sessions. With a .iso, your environment is the same each time you start. |
|||
:development software: are development tools included? |
|||
:Net (network): does the network "just work" or "manual" steps are required? |
|||
Problems: |
|||
:A: LiveCd (April) on fc6 x86_64, kernel panics under kqemu. A squashfs problem. |
|||
:B: Tam Tam is silent (though EToys makes noise). Cause unknown. |
|||
Notes: |
|||
*re "does sugar-jhbuild support camera/mic?": "yes, if the camera uses v4l2 and 640x480, I'd suspect so." Can someone confirm this? (#olpc, now) [[User:MitchellNCharity|MitchellNCharity]] 00:16, 2 June 2007 (EDT) |
|||
Doables: |
|||
*Remove LiveCd's "?" above. |
|||
*Find out what's going on with Tam Tam sound. It would be nice for the xo disk images to all be sound-yes. |
|||
*Add a microphone column? Reconsolidate sound/camera/mic into a H/W column? |
|||
== XO-QEMU boot broken - current workarounds == |
|||
Build 445 was the last version which booted cleanly under qemu ([http://dev.laptop.org/ticket/1809 ticket]). |
|||
More recent builds require workarounds. Build 485 resolved one problem. |
|||
*When booting on qemu, add root=/dev/hda to the grub kernel line. This needs to be done every time. |
|||
*#When you start your xo disk image on qemu, you should see a blue grub screen, doing a "Booting .. in N seconds" countdown. Press space to interrupt it. |
|||
*#Press '''e''' (edit). This will show you 3 lines. |
|||
*#Move to the second, which begins "kernel". Press '''e'''. This will take you to the end of the kernel line. |
|||
*#Add <tt> root=/dev/hda1</tt> Then press enter. |
|||
*#Press '''b''' to continue booting. |
|||
:(This workaround avoids "WARNING: Cannot find root file system!", and being dropped into an emergency shell.) |
|||
Should add instructions to modify the image's grub config, so this doesn't need to be done every time you boot. [[User:MitchellNCharity|MitchellNCharity]] 12:04, 3 July 2007 (EDT) |
|||
It might be worth gathering the currently scattered notes, into a single list of step by step instructions, for getting from nothing, to a pair of qemu images running with Xephyr's and ssh. [[User:MitchellNCharity|MitchellNCharity]] 12:04, 3 July 2007 (EDT) |
|||
For emulation of extremely old builds, you may be able to come across "ext3 images" on some corners of http://download.laptop.org and http://xs-dev.laptop.org/~cscott/olpc/streams/ which can be loaded into emulators. You are unlikely to find support for them! |
|||
[[Category:OS]] |
[[Category:OS]] |
Latest revision as of 16:26, 30 July 2013
modify |
In the past, OLPC produced alternative software images which could be run in emulators such as QEMU and VMware. This meant that development and testing could happen to a limited extent without requiring an XO laptop.
In 2013, please see Tom Gilliard's many virtual machine images ready-to-go.
Note, XOs are readily available to genuine volunteer contributors through the Contributors program.
Sugar, the unique user interface of the XO laptops, is also distributed as a generic software project and can be developed and tested on "regular" computers as well as XOs. See Sugar Labs Downloads for the full range of options, such as Sugar on a Stick.
For emulation of extremely old builds, you may be able to come across "ext3 images" on some corners of http://download.laptop.org and http://xs-dev.laptop.org/~cscott/olpc/streams/ which can be loaded into emulators. You are unlikely to find support for them!