steptail.com

How many light bulbs does it take to change a penguin?

User Tools

Site Tools


guides:how_to_install_debian_on_olpc_xo-1

How to install Debian GNU/Linux on OLPC XO-1

This guide (updated 2024) will guide you through the steps of installing Debian GNU/Linux “etch” on an OLPC XO-1 in a dual-boot configuration, and get it online with functioning apt package system.

From there you can install a windowing system, or upgrade your edition of Debian.

There exists guides on the official OLPC website, but they are outdated and have broken links. This page aims to update the documentation from the official source, until the official document is updated. This page will link to local sources, so as long as this page is up, so are all the required resources for downloads etc.

This documentation assumes that you are running a clean install of OLPC XO-1 software, but should work on a system with at least 300 MB free space on the system disk. If you are having issues with any steps documented before booting into Debian, try reimaging the OLPC XO-1 software with version 8.2.0 (also known as build 767). Follow the instructions here under Offline upgrade to reinstall the operating system. All existing files on the OLPC will be erased!

Install Debian as a dual-boot OS

Follow the steps outlined here: Installing Debian as an upgrade mirror of aforementioned document. Please note the changes for some steps you may need to follow outlined below.

Changes to documentation

In Step 1, if you do not have a pre-existing Debian system, you may want to download a prebuilt bootstrap package: xo-debian.tgz Right-click the link and shift-click “Save As” if the file doesn't download automatically.

In Step 2, the TAR command will probably not work as documented. Use the following command instead:

# tar xvf /media/*/xo-debian.tgz

Connect to your WI-FI network

  • Boot into Debian and log-in as root.

Option 1: Unencrypted WI-FI network

  • Run the following commands:
$ modprobe usb8xxx
$ iwconfig eth0 essid "<SSID>"

Replace <SSID> and <PASSWORD> with respective values

Option 2: WEP encrypted WI-FI network

  • Run the following commands:
$ modprobe usb8xxx
$ iwconfig eth0 essid "<SSID>" key "s:<PASSWORD>"

Replace <SSID> and <PASSWORD> with respective values

Option 3: WPA or WPA2 encrypted WI-FI network

  • Copy to root of a FAT32 formatted USB stick the following files. You can download them from here or here.
1. wpasupplicant_05.5.5-2_i386.deb 
2. libdbus-1-3_1.0.2-1+etch3_i386.deb
  • Connect USB stick to OLPC and mount it:
$ mkdir /media/usb
$ mount -t vfat /dev/sda1 /media/usb
  • Replace /dev/sda1 with the location of the USB stick's filesystem
  • Install packages:
$ cd /media/usb/
$ dpkg --install wpasupplicant_05.5.5-2_i386.deb 
$ dpkg --install libdbus-1-3_1.0.2-1+etch3_i386.deb
  • Create wpa_supplicant.conf:
$ wpa_passphrase "<SSID>" "<PASSWORD>" | tee /etc/wpa_supplicant.conf
  • Replace <SSID> and <PASSWORD> with respective values
  • Add the following lines to /etc/network/interfaces:
auto lo
iface lo inet loopback
  • Connect to WIFI:
$ modprobe usb8xxx
$ wpa_supplicant -B -Dwext -c /etc/wpa_supplicant.conf -i eth0
$ dhclient eth0
  • Test by pinging 8.8.8.8 and www.google.com
  • If previous test worked, automate WIFI connection on startup by first creating /root/wifion.sh:
#!/bin/bash
#
wpa_supplicant -B -Dwext -c /etc/wpa_supplicant.conf -i eth0
dhclient eth0
  • Then make it executable:
$ chmod 770 wifion.sh
  • Create symbolic link to wifion.sh to run on bootup:
$ ln -s /root/wifion.sh /etc/rc2.d/S99wifion

Restore apt-get functionality for "etch"

  • Open /etc/apt/sources.list and replace the first line with the following:
deb http://archive.kernel.org/debian-archive/debian etch main
  • Run the following commands:
$ aptitude install debian-archive-keyring
$ apt-get update

From here you can install the rest of the system, windowing manager etc. Don't forget to set your root password!

To boot up back into Sugar OS, just hold the “O” game-key button when powering on the unit.

guides/how_to_install_debian_on_olpc_xo-1.txt · Last modified: 2024-09-25 04:45 by omolini