XO

From LXDE.org
Jump to: navigation, search
OLPC XO-1
OLPC
Developer OLPC, Gnu/Linux Community
Manufacturer Quanta Computer
Type Subnotebook (Netbook)
Media 1 GB flash memory
Operating system Linux
Power NiMH or LiFePO4 removable battery pack
CPU AMD Geode LX700@0.8 W + 5536
Memory 256 MB DRAM
Display dual-mode (backlit color/direct-sunlight grayscale) 19.1 cm/7.5" diagonal TFT LCD 1200×900
Input Keyboard. Touchpad
Microphone
Camera built-in video camera (640×480; 30 FPS)
Connectivity 802.11b/g /s wireless LAN

3 USB 2.0 ports MMC/SD card slot

Dimensions 242 mm × 228 mm × 32 mm
Weight LiFePO4 battery: 1.45 kg [3.2 pounds]; NiMH battery: 1.58 kg (3.5 pounds)

The XO-1, previously known as the $100 Laptop, Children's Machine, and 2B1, is an inexpensive subnotebook computer intended to be distributed to children in developing countries around the world, to provide them with access to knowledge, and opportunities to "explore, experiment and express themselves" (constructionist learning). The laptop is developed by the One Laptop per Child organization.

Fedora on the XO with LXDE

Components

  • PCManFM: File manager, provides desktop icons
  • LXPanel: Feature-rich desktop panel
  • LXSession Lite: Standard-compliant X11 session manager with shutdown/reboot/suspend support via HAL and user switching with gdm
  • LXSession Edit: Tool to manage freedesktop.org compliant desktop session autostarts.
  • LXAppearance: Feature-rich GTK+ theme switcher to change GTK+ themes, icon themes, and fonts
  • LXTask: Lightweight task manager derived from xfce4 task manager
  • LXTerminal: Desktop-independent VTE-based terminal emulator
  • LXLauncher: Open source replacement for the Asus Launcher on the EeePC
  • LXNM (still under development): Lightweight network manager for LXDE supporting wireless connections
  • LXRandR: Monitor configuring tool.
  • Openbox: Lightweight, standard-compliant, and highly-configurable window manager. This can be replaced by any other window manager like icewm, fluxbox, metacity, ...etc.
  • GPicView: A very simple, fast, and lightweight image viewer
  • Leafpad: Lightweight and simple text editor
  • XArchiver: Lightweight, fast, and desktop-independent gtk+-based file archiver

LXDE uses a modular approach: Each component of LXDE can be used independently, so you don't need to install the whole Desktop, if you don't like it.

Installation

The following installation instructions cover migration to LXDE on an OLPC OS build. An alternative is to use DebXO LXDE OS builds.

Get Root

Establish a connection to the internet. You will need the ability to connect to the internet to retrieve and update files from the OLPC's repositories. yum is the command that will retrieve the files you request and it will automatically install them. You will need to have root access to use yum.

If you can't get an internet connection first because of missing WPA encryption, follow WPA instructions first. These even work with Sugar.

Get "root": Use the Terminal Activity and type su at the prompt and press the [enter] key. Your command prompt will now end with "#" this means you have "root" and can change any file on the computer.

$ su
#

Install Packages

Install lxde, this will give you a very basic desktop environment and the ability to customize it. This will download about 25MBs to RAM then install the files automatically. Make sure, no other Activity is running. Otherwise during installation you will get 'error: can't allocate memory'. To proceed, stop Terminal Activity, reboot, restart the process. If you get a "Socket Error" that returns you to a prompt, use the up arrow to restore your original command and enter to restart the process.

# yum install lxde-common

This will install the LXDE core components: lxde-common, lxpanel, lxsession, pcmanfm and openbox.

Optional packages:

# yum install gpicview leafpad lxappearance lxlauncher lxsession-edit lxtask lxterminal obconf xarchiver

SLiM (Simple Login Manager)

if you want to have your own login screen (users acounts)

simply do this

# su 
# yum install slim

let it install after it installs do this

# nano /etc/sysconfig/desktop

replace DISPLAYMANAGER with

DISPLAYMANAGER=/usr/bin/slim-dynwm

do this now on the keyboard

# CTRL-ALT-ERASE

to restart X, starting SLim.

To reboot or halt, login in as special username "reboot" or "halt" - using the root password.

To get a console prompt use username "console", and to switch sessions use F1, screenshot F11.

Alternate Installation on the Fedora OS8.img

This solution is a bit hackish, but it's for getting LXDE onto an XO 1.0 in a hurry. Using the XO 1.0 image presents a few issues, not enough memory for yum and gnome to run at the same time, lack of olpc-switch-foo for LXDE and a few other quirks.

This guide assumes you have the latest Fedora image on, for instructions see Rawhide-XO

The first thing to do is to get the system online, to download lxde. Since yum has a tendency to crash on some transactions, getting OOM errors, this can be fixed in multiple steps.

  • Switch to GNOME and set up the wireless network
  • Set the wireless network available to all users in Network Manager

-OR-

  • Set up Network Manager by hand in the Linux terminal to get online

-THEN-

  • edit /etc/sysconfig/desktop and comment out the DISPLAYMANAGER completely
  • reboot and you should be dropped at the linux console terminal
  • install slim and lxde as above

The above guide assumes you understand the documentation for slim-dm. If you need a quick and dirty way to get to lxde as soon as possible:

  • Setup ~/.xinitrc as the following

  1. !/bin/sh

/usr/bin/startlxde

Don't forget to create a user account if you need one, and it's a good idea to set the root password too.

Configuration

Appearance

Use lxapperance to configure the look and feel

  • reduce the font size to 6-8
  • set the GTK Window Theme to Sugar
  • set to icon theme to Sugar
  • Add Inherits=gnome after the [Icon Theme] line in /usr/share/icons/sugar/index.theme, so that sugar's theme properly pulls in the gnome filemanager icons (in ticket #7939 we suggest adding appropriate sugarized icons for folders, etc) (pilgrim patch)

Window Manger

Use obconf to configure the OpenBox window manager

  • reduce the font size to 6-8.
  • select a display friendly window manager theme like natura

Usage

Mounting Removable Filesystems

  1. Insert SD card or usb drive.
  2. Run pcmanfm, the LXDE File Manager.
  3. The removable media should appear in the left-hand column. Click on it to mount it. A df will show that it has been mounted in the appropriate place (/mount/VOLUME_NAME)
  4. To unmount, right click on the media name in the same place and choose unmount.

Change default desktop

Turn LXDE to default desktop

In /home/olpc/ create a copy of .xsession-example called .xsession:

# cp /home/olpc/.xsession-example /home/olpc/.xsession

Edit the .xsession file to launch LXDE on startup:

# nano /home/olpc/.xsession

Find the commented line that reads #exec xterm - below that line, add the following code:

exec ck-xinit-session startlxde
  • use CTRL+X to save and exit
  • use CTRL+ALT+BACKSPACE to restart X, starting LXDE

Turn back to XO Sugar desktop

To make the original XO Sugar desktop the default boot again, rename the .xsession file to anything other than .xsession (.xsession-lxde for instance). Applied changes, e.g. networking, may stay persistent.

  • Select Logout from the LXPanel menu and confirm to restart X, starting Sugar

Debian on the XO with LXDE

Install LXDE

LXDE on the XO (One Laptop per Child project, OLPC)

http://lunge.mit.edu/~dilinger/debxo-latest/images/jffs2/

Please follow the guide on installing Debian with LXDE.

The following is the way installing Debian + LXDE into an USB drive.

# mkdir -p lxde-olpc/lenny-root
# cd lxde-olpc
# ARCH=i386 debootstrap lenny lenny-root/ http://free.nchc.org.tw/debian
# cd lenny-root
# mount proc proc -t proc
# mount sysfs sys -t sysfs
# chroot .

== /etc/apt/sources.list
deb http://free.nchc.org.tw/debian lenny main contrib non-free
deb http://layer-acht.org/debian sid olpc
==

# apt-get update
# apt-get install olpc-base-ext3 lxde xserver-xorg-video-{geode,fbdev} xserver-xorg-input-{all,evdev}
# wget http://dev.laptop.org/~cscott/xorg.conf -O /etc/X11/xorg.conf

== /boot/olpc.fth # with USB disk
\ Boot script
 " ro root=/dev/sda1 rootfstype=ext3 rootdelay=1" to boot-file
 " disk:\vmlinuz" to boot-device
dcon-unfreeze
boot
==

== /boot/olpc.fth # with SD card
\ Boot script
" ro root=/dev/mmcblk0p1 rootfstype=ext3 rootdelay=1" to boot-file
" sd:\vmlinuz" to boot-device
dcon-unfreeze
boot
==

== /etc/fstab
sda1                    /                       ext3    defaults,noatime 1 1
devpts                  /dev/pts                devpts  gid=5,mode=620    0 0
tmpfs                   /dev/shm                tmpfs   defaults,size=15% 0 0
proc                    /proc                   proc    defaults          0 0
sysfs                   /sys                    sysfs   defaults          0 0
==

# exit
# umount proc
# umount sys
# tar cf ../lxde-olpc.tar * # and untar into the target ext3 disk

# # plug the media into OLPC with Developer Key and start Terminal activity
# cp -R /security /media/disk # the mount point of the media may vary

Issues

The issues below are found using LXDE packages in Debian Lenny for now:

  • Special keys such as Volume/Brightness control keys and Gamepad keys need to be configured by hands.
  • Small fonts, icons, etc. caused by high dpi display (in XO-1: 200dpi) needs to be looked into.
  • Battery plug-in won't fit OLPC: it displays "No battery found" (cf. gnome-power-manager works as usual)
  • The screen is freezed since boot, and needs to make the screen unfreeze after starting Xorg, or boot with the rightmost gamepad key holded.

External Links