F11 for 1.5
OLPC is developing a Fedora 11 Remix for the XO-1.5. The aim is to ship this software release with the XO-1.5 laptop as it begins to ship, later in 2009. We aim for the release to reach a suitable quality for immediate release to OLPC deployments.
Requirements
The release is primarily [[Has objective:: targeted at the XO 1.5]], and must be ready in time for that hardware to ship. Because of the new kernel work required, no previous distribution will work on the XO-1.5 without modification. As a result, we must prioritize creating a shippable XO-1.5 build over creating a build that works well on both XO-1.5 and XO-1.
To be decided: status::nascent
- Release date:target date::? (Target month?)
- Support features. (How long will OLPC support the release for?)
Hardware status
A small number of XO-1.5 A-test boards have been manufactured and distributed to the core developers. In July, we anticipate having a larger stock of B-test boards for distribution to more developers and testers through the Contributors program.
Software status
Most of the system is functional, but there are many rough edges. It boots into gdm, offering a choice between Sugar and GNOME.
Bugs and outstanding work
This trac query shows current bugs for the XO-1.5. Look in the distro, kernel and x window system components for the software-related tickets.
Build system
We are using Fedora's standard livecd-creator to produce LiveCD images of our release. We then run a script on the output .iso which makes it an "installed" (non-live) image and repacks it in a format suitable for flashing onto the XO-1.5.
The code is at git://dev.laptop.org/projects/fedora-xo in the xo-1.5 branch (web interface).
Download
Builds are here: http://dev.laptop.org/~cjb/f11-1.5/
Installation
- On a Linux PC, download osX-tree.tar.lzma
- Decompress:
unlzma osX-tree.tar.lzma
- Take a 2GB (or larger) USB disk, plug it in and format it as ext2, e.g.
- Note that you must used a partitioned disk as in the example below.
- /dev/sdb1 must correspond to the USB disk that you have plugged in -- if you get this parameter wrong then you might erase all the data on your hard disk.
mke2fs /dev/sdb1
- Mount the partition and extract the tarball
mount /dev/sdb1 /mnt/tmp tar -C /mnt/tmp -xpf osX-tree.tar
- Modify /mnt/tmp/boot/olpc.fth
- Change "root=/dev/hda1" to "root=/dev/sda1"
- Change all occurrences of "c:\" to "u:\"
- Copy the filesystem image over
cp osX-tree.tar /mnt/tmp
- Unmount
umount /mnt/tmp
Now you have a USB disk that you can boot the XO from. For future installs, you can simply reuse this disk (with a new filesystem image copied over, as in the penultimate step).
To install on XO-1.5:
- Insert USB disk and turn on.
- Format the XO's flash memory as ext2:
mke2fs -O dir_index -L OLPCRoot /dev/hda1
- Mount and extract filesystem image
mkdir -p /mnt/tmp mount /dev/hda1 /mnt/tmp tar -C /mnt/tmp -xpf /osX-tree.tar
- Unmount and reboot
umount /dev/hda1 reboot
Mailing list
- We talk to each other on the fedora-olpc-list mailing list.
Modifications to Fedora
We're trying to work as close to Fedora (and the upstream projects which Fedora distributes) as possible; however, we also have the pressure of having to build a laptop and its software on a fixed timetable, so our priority remains on making things work.
We'll keep this list updated as modifications come and go. Most of the changes can be found in the source RPMs found here: http://dev.laptop.org/~dsd/xo1.5-rpms/
dracut
We add dracut to our build which is used for generating the early-boot initramfs. Dracut is unreleased software but suits our needs perfectly: we are going to implement our boot animation and initramfs-level security system as dracut modules.
Hopefully dracut will see a release soon, then it can be included in Fedora 11 and we would not have to ship an unofficial package of it. It should be possible to either get OLPC's special modules upstream, or installed through a separate package (dracut is impressively modular).
kernel
We maintain our own kernel based on Linux 2.6.30 at git://dev.laptop.org/olpc-2.6 in the xo-1.5 branch (web interface). These kernels get built into RPMs which can be found at http://dev.laptop.org/~dilinger/xo-1.5/
We aim to get much or all of this work upstream, but at the same time there are various challenges associated with that, and we need somewhere to develop and test our changes before they are ready.
The main modifications in our kernel include:
- Various patches to VIA drivers to support the brand-new VX855 chipset which the XO-1.5 is based on
- Support for OpenFirmware, the XO equivalent of a BIOS.
- We build the initramfs using dracut, not mkinitrd.
openchrome video driver
We add patches to this driver to support the brand new video hardware that is present in the XO-1.5. These patches will be going upstream soon, and hopefully we can get them included in Fedora 11 updates.
See also
- Rawhide-XO, Fedora builds for the current XO.
Standard information
Build number and URL: Build number::999