XOpup-1.0

Following the XOpup-vX  beta series, this is the first release of XOpup, the Puppylinux OS for the OLPC XO-1 and XO-1.5 laptops.
On the XO-1, XOpup-1.0 is stable and fairly well  customized and tested, thus "1.0". 
However, this is an early build for the XO-1.5, e.g. an alpha build for this hardware. Please test, report and fix, if possible, so we can improve it.

XOpup-1.0 is developed by mavrothal and 01micko
Mitch Bradley was instrumental in booting Puppy on the XO-1.
Anna, Paul Fox, Edie Owens  and ttuuxxx helped with key steps in the development process, and of course the Lucid Puppy developers that made the Ubuntu Lucid-compatible, Puppylinux.

The build is based on PuppyLinux 5.1.1 and modified OLPC kernels, and is customized for the OLPC hardware. See the building log for details. 

XOpup-1.0 has an even more reliable boot media auto-detection, a new kernel for XO-1 and XO-1.5, more reliable suspend, new airplane mode and battery monitor, a new 3G modem utility and other under the hood changes. See here for more details

To install,  download XOpup-1.0.tar.gz, expand it at the root of standard (vfat) or etx2/3 formatted USB stick or SDcard (see Note 7 and Known Issue 3 below, before you decide on vfat vs ext2/3). Load it on the XO-1 or XO-1.5 and boot. Thanks to Mitch Bradley's new custom olpc.fth, will recognize the hardware and the media and boot accordingly, very reliably even with poor USBs/SDcards!

Attention For the XO-1, you need to have a developer key and permanently inactivate security at the OFW prompt, to run unofficial/unsigned/development builds, as this one .
XO-1.5s are generally unlocked so you do not need any key, unless it is part of a deployment.

Attention 2 You must update your firmware to q2e45 (XO-1),  q3a54 (XO-1.5) or latter. The program will check during boot and warn you about it if you don't.


Notes
1) You can alt-boot to the internal drive (Sugar) by pressing the 'O' game key during power-up.

2) XOpup supports "aggressive" power management. The default settings are very conservative. To reset the timeouts for sleep, dim and blank, enter "powerd-config" in the terminal and adjust to your preferences. When you finish type "powerd-config =restart" to take effect.

3) On XO-1, after you set your timezone through Menu->Desktop make sure that you also set the "hardware-clock type" to UTC and the "software: to match hardware". On XO-1.5 you do not need that step

4) You can further speed up your XO by turning off services  from Menu->System-> BootManager-> Manage System services.

5) XOpup-1.0 can use the lupu_devx_511.sfs  development tools, while kernel source, headers etc are here

6) XOpup runs in RAM (thus considerably faster than other XO builds). However, if you keep adding programs and SFS files you'll run into troubles soon on the XO-1 (the "freeramdaemon" will let you know ;). A swap partition is strongly advised. If you have a USB stick/SDcard with a swap partition just attach it to your XO-1. Puppy will auto-detect it and use it.
Alternatively you can set up a swap file in your XOpup stick/card by the relevant button in the welcome screen, or by typing "mkswap-file.sh" in the terminal
The XO-1.5 with its 1MB RAM, is OK without it.

7) In vfat formatted media you can only save your data into a lupusave.2fs/3fs file.
"Saving into a file" may result in long shutdown times that depending on the size of your lupusave file, can be minutes!
Saving into the "entire partition" is now OK for both SDcards and USB sticks as long as they are etx2/ext3 formatted. However, even then data are saved into the USB at the end of the session by default, resulting again in long shutdown times. In contrast, data on SDcards are saved immediately so shutdown is prompt. It takes longer to boot though, as data accumulate on the card. In any case make sure that you get a card that "plays well" with the XO and/or a decent quality USB stick

8) The XO-1 could by overclocked to 500MHz CPU/200MHz Bus speed, by removing the backslash ("\") from the beginning of lines 20-22 of the /boot/olpc.fth file (XO-1 overclock section). Be warn however that overclocking may decrease reliability and longevity of your XO-1, while decreases use per battery charge due to increased consumption.

9) The "Airplane mode" on the XO is a software block, not a hardware block.
If you reboot your XO, the wifi will come up! It might also come up if you suspend and resume the XO. Test with your preferred connection application.
If you would like to block wifi at startup make a symbolic link or move /usr/local/bin/XOwifi_off.sh in /root/Startup. Even then however wifi will work for few seconds during startup. Remove the XOwifi_off.sh symlink/file and deactivate airplane mode from the widget, to go pack to normal.
You must take your XO off the airplain mode to be able to reconnect resuming from suspend
There is no warranty that some other event/application will not restart the wifi, when in "Airplane mode". So, if it is vital to have wifi off, just turn off your XO!


Known issues
1) Screen rotation does not work properly. Rotates but does not re-sizes for the XO-1 screen. Test by "olpc-rotate". The openchrome XO-1.5 driver does not support screen rotation. The rotation button is left inactive.

2) The Luvcview webcam application does not work. The camera is OK on the XO-1 with other apps (eg Skype, Mplayer), but not on the XO-1.5

3) If you use the lupusave file setup, you might get corruption during wake-up from suspend.
Though this is very much improved in XOpup-1.0 it might still happen if you run XOpup from bad quality vfat formatted media, since powerd does not play well with vfat.
If you rather not have power management in your setup, and the even minimal probability of corruption, comment-out by "#" line 33 in  /etc/rd.d/rc.local (/usr/sbin/powerd &)

4) Because of (more general) aufs and snapmergepuppy issues you may get occasional loss of sound. To recover sound, boot in Sugar, loop mount your pupsave file and remove the whitespace files (.wh.*) from /dev and dev/*. Look here for more details


XO-1.5 specific issues
The XO-1.5 has several video-driver/xserver-configuration related issues

1) The camera light comes up during X start-up and stays ON! To turn it off go through a suspend cycle with the power button !?!

2) Using the xorgwizard results in a "garbage" screen.
If for any reason get a "garbage" display, drop to console (Ctrl+Alt+Del) and type:
cd /etc/X11
cp -a xorg.conf.XO-1.5 xorg.conf
xwin
Should get you back to your desktop

3) Alternative screen resolutions are not supported.

4) Video playback (mplayer, vlc) freezes the computer. Flash is almost OK though ;)

5) Re-connection after suspend often fails because because sd868_helper fails to load the firmware (mmc1: unexpected value 0)