Table of Contents

eeeXubuntu Development

eeeXubuntu goals and gotchas

(… all this is open to suggestion, of course)

Modified & Custom Packages

Modified MadWifi with Atheros AR2425 (AR5007EG) support

Description: This package is built from a Madwifi development snapshot (dated October 18, 2007) patched to support the Atheros AR5007EG chipset using the patch available at MadWifi Ticket #1679.

Download: madwifi-source_0.9.3.3+r2756.20071018-1_all.deb

Atheros L2 fast Ethernet driver

Description: Although Ubuntu ships with an atl2 driver in its generic module package, this driver is unstable on the eeePC for many users. eeeXubuntu includes a binary version of the driver compiled from the unmodified source code made available by Ben Armstrong in a post on the eeeuser forums.

Download: atl2-source_1.0.40.4-1_all.deb

Ideas for Improvement

Make the USB imaging script interactive

Full ACPI function key support

Economize the battery

/etc/fstab tuning

Implementing changes

Most of the good stuff is contained in /preseed/eeepc on the CD. I'm hooking the install process using a script in the casper filesystem which the Live CD boots. This process is somewhat poorly documented in general. However, it's relatively straightforward.

Ubiquity runs the install process, copies over the Live casper filesystem (mounted read-only), and removes unneeded packages at the end of the process. As a last step, the scripts in /usr/lib/ubiquity/target-config are run immediately before the system is restarted. The wrapper script /usr/lib/ubiquity/target-config/50eeepc is used to invoke the changes stored in /preseed/eeepc.

Currently, there are two methods for modifying the target Xubuntu install.

There should probably be a third type:

The 50eeepc script invoked by Ubiquity iterates through all the changes in /preseed/eeepc.

Note: Scripts must be absolutely silent. Any output can hang the reboot at the end of the install process (Ubiquity interprets this as an error condition). Currently I'm logging to the root of the target filesystem to aid in debugging.