Emulating the XO: Difference between revisions
m (adding a latest release highlight) |
m (cosmetics) |
||
Line 1: | Line 1: | ||
<div style="float:right; clear:right; font-size:80%; max-width:60%; padding:0.3em; background:#c1fea1; color:#0a6c00; border:2px solid #8ad962; "><big>'''Latest Release:'''</big><br>Stable: [http://olpc.download.redhat.com/olpc/streams/development/build406/ '''Build 406'''] (May 7)<br>[[LiveCD]]: [http://olpc.download.redhat.com/olpc/streams/sdk/latest/livecd/olpc-redhat-stream-sdk-livecd.iso '''ISO-Build 385'''] (Apr 7) |
<div style="float:right; clear:right; font-size:80%; max-width:60%; padding:0.3em; background:#c1fea1; color:#0a6c00; border:2px solid #8ad962; "><big>'''Latest Release:'''</big><br>Stable: [http://olpc.download.redhat.com/olpc/streams/development/build406/ '''Build 406'''] (May 7)<br>[[LiveCD]]: [http://olpc.download.redhat.com/olpc/streams/sdk/latest/livecd/olpc-redhat-stream-sdk-livecd.iso '''ISO-Build 385'''] (Apr 7) |
||
</div> |
</div> |
||
[[Image:AP1_39.jpg|thumb|laptop-in-laptop]] |
|||
== [[Emulating the XO/Quick Start|Quick Start]] == |
== [[Emulating the XO/Quick Start|Quick Start]] == |
||
Line 9: | Line 11: | ||
One way to run oplc software is using an emulator on your pc. See [[Software]] for other options. Compared to using a [[Developer Images|developer image LiveCD]], it might be harder to set up, but easier to develop on. Compared to [[:Category:Installing_Sugar|installing sugar]], easier, but harder. |
One way to run oplc software is using an emulator on your pc. See [[Software]] for other options. Compared to using a [[Developer Images|developer image LiveCD]], it might be harder to set up, but easier to develop on. Compared to [[:Category:Installing_Sugar|installing sugar]], easier, but harder. |
||
== |
== Emulation for Development == |
||
The most common approach is to use [[QEMU]] with kqemu acceleration. See [[Emulating the XO/Quick Start|Quick Start]] for the basics. |
The most common approach is to use [[QEMU]] with kqemu acceleration. See [[Emulating the XO/Quick Start|Quick Start]] for the basics. |
||
Line 20: | Line 22: | ||
There are [[Emulation Limitations]]. |
There are [[Emulation Limitations]]. |
||
=== |
=== Development using QEMU === |
||
If you wish to develop software on an emulated image, you will usually want a connection between your host and the laptop image. |
If you wish to develop software on an emulated image, you will usually want a connection between your host and the laptop image. |
||
You need a "*-devel*.img" image, rather than a standard (non-devel) one. The -devel image has extra software like sshd and wget. |
You need a "<tt>*-devel*.img</tt>" image, rather than a standard (non-devel) one. The <tt>-devel</tt> image has extra software like <tt>sshd</tt> and <tt>wget</tt>. |
||
Get network working on the laptop. See [[Using QEMU for Troubleshooting#Network]]. A simple <tt>echo ifup eth0 >> /etc/rc.local</tt> , run as root on the laptop, should do it. You should now be able to surf with the laptop's web activity. Under QEMU the Laptop image can see the host as |
Get network working on the laptop. See [[Using QEMU for Troubleshooting#Network]]. A simple <tt>echo ifup eth0 >> /etc/rc.local</tt> , run as root on the laptop, should do it. You should now be able to surf with the laptop's web activity. Under QEMU the Laptop image can see the host as IP address 10.0.2.2 . |
||
Next, you have several alternatives: |
Next, you have several alternatives: |
||
Line 35: | Line 37: | ||
*##: Log into the image as root (no password needed yet!), type <tt>passwd</tt> , and then give it one. Complaints about "BAD" passwords won't stop things from working. |
*##: Log into the image as root (no password needed yet!), type <tt>passwd</tt> , and then give it one. Complaints about "BAD" passwords won't stop things from working. |
||
*##: Logging in as root is easy in qemu - you have a console window. Elsewhere...''(? someone else will need to fill this in)'' |
*##: Logging in as root is easy in qemu - you have a console window. Elsewhere...''(? someone else will need to fill this in)'' |
||
*# Whenever you run qemu, add the argument -redir tcp:2222::22 |
*# Whenever you run qemu, add the argument <tt>-redir tcp:2222::22</tt> |
||
*# You can now log into the laptop image, from your real machine, using ssh. And you can use scp, etc. |
*# You can now log into the laptop image, from your real machine, using ssh. And you can use scp, etc. |
||
ssh -p 2222 root@localhost # simple |
ssh -p 2222 root@localhost # simple |
Revision as of 15:00, 26 May 2007
Quick Start
To set up a "virtual XO", and get a taste of the XO software, see Quick Start.
Alternatives to emulation
One way to run oplc software is using an emulator on your pc. See Software for other options. Compared to using a developer image LiveCD, it might be harder to set up, but easier to develop on. Compared to installing sugar, easier, but harder.
Emulation for Development
The most common approach is to use QEMU with kqemu acceleration. See Quick Start for the basics. But we will use a different .img, one with a few extra utility programs. See OS images. Including the latest stable build.
Instead of qemu, you can run VMware, and there are addition options on a Mac.
Troubleshooting may help. Please report your experiences in User Feedback on Images.
There are Emulation Limitations.
Development using QEMU
If you wish to develop software on an emulated image, you will usually want a connection between your host and the laptop image.
You need a "*-devel*.img" image, rather than a standard (non-devel) one. The -devel image has extra software like sshd and wget.
Get network working on the laptop. See Using QEMU for Troubleshooting#Network. A simple echo ifup eth0 >> /etc/rc.local , run as root on the laptop, should do it. You should now be able to surf with the laptop's web activity. Under QEMU the Laptop image can see the host as IP address 10.0.2.2 .
Next, you have several alternatives:
- SSH using qemu -redir tcp:2222::22. (a good first approach)
- First-time setup
- Get the image's network working.
- Change the image's root password.
- Log into the image as root (no password needed yet!), type passwd , and then give it one. Complaints about "BAD" passwords won't stop things from working.
- Logging in as root is easy in qemu - you have a console window. Elsewhere...(? someone else will need to fill this in)
- Whenever you run qemu, add the argument -redir tcp:2222::22
- You can now log into the laptop image, from your real machine, using ssh. And you can use scp, etc.
- First-time setup
ssh -p 2222 root@localhost # simple ssh -o NoHostAuthenticationForLocalhost=yes -p 2222 root@localhost #avoids annoying warning
- SSH using a key. (if ssh passwords get annoying, you can try this)
- If you create an SSH server on your host and install a key on your Laptop image that has logon rights for that server, you can ssh from the OLPC to your host. This avoids password typing.
- Adding platform-specific instructions might be useful? MitchellNCharity 15:59, 21 May 2007 (EDT)
- Using a web server. (if you don't want to deal with ssh, and have a webserver)
- If you have a web server, you might simply download stuff onto the laptop using the laptops's web browser.