Find all your DIY electronics in the MakerShed. 3D Printing, Kits, Arduino, Raspberry Pi, Books & more!

Xo-Laptop-X11

The XO laptop continues to be very hackable. If you haven’t ordered one already, you really should because you only have a few days. I’ve owned some pretty sweet devices in the past, but nothing compares to this. At every turn, I find something new and cool about it, and there always seems to be a way to do the things I want to do. The only thing I need to worry about is using up all my flash drive space, but that’s what USB drives are for, I guess.

Because the Sugar interface includes an X11 window manager, you can’t fire up your favorite window manager without killing Sugar… unless you run a nested X11 server. The Xephyr server is available in the XO’s default package repository, and it can run as a client and a server at the same time: as a full-screen client of the XO’s X11 server, and as an X11 server that can contain its own session, window manager and all. (Xephyr is similar to Xnest, but supports more X extensions.)

To get it up and running, I started the Terminal activity, used su to become root, and installed Xephyr and blackbox (a nice lightweight window manager):

$ su
# yum install xorg-x11-server-Xephyr blackbox
Next, exit out of the root shell, and create a file in your home directory called xephyr.xinitrc that launches the window manager of your choice:
# exit
$ echo exec /usr/bin/blackbox > ~/xephyr.xinitrc

Now, each time you want to run Xephyr, use xinit to start up Xephyr on display :1 (if you want to run more than one Xephyr session at once, use :2, then :3, etc):

$ xinit ~/xephyr.xinitrc — /usr/bin/Xephyr :1 -ac -screen 1200×900

You should see your window manager start up; the screenshot above shows blackbox with a few clients running. I ran into a few oddities that will eventually send me running to X11 documentation; for example, arrow-up and arrow-down don’t bring up my history in the bash shell (but Ctrl-P and Ctrl-N work fine). And the screen is pretty hard to read except in reflective mode… but wow, it’s nice to have 1200×900 pixels on such a small screen!!!

Brian Jepson

I’m a tinkerer and finally reached the point where I fix more things than I break. When I’m not tinkering, I’m probably editing a book for Maker Media.


Related

Comments

  1. Motoma says:

    Fantastic tip!

  2. thanks says:

    …add “-dpi 200″ to the command line and it becomes much more readable.

  3. Ed says:

    From

    bash-3.2# yum install xorg-xll-server-Xephyr

    I get some messages ending with

    No package xorg-xll-server-Xephyr available.
    Nothing to do

    Do I need somehow to make yum look in another repository? blackbox seems to have installed fine.

  4. Ed says:

    OK I think I have to edit file
    /etc/yum.repos.d/olpc-koji-ship2.repo
    to remove the line
    [olpc_koji-ship2]
    &/or uncomment a baseurl line; I’ll try these tomorrow…

  5. Brian Jepson says:

    Hi Ed,

    That should be xorg-x11-server-Xephyr… two ones, not two lowercase Ls. Sorry I didn’t point that out in the post–it’s even more of an issue for us because of the difficulty in cutting and pasting into the Terminal activity.

    If you don’t want to retype stuff, check out this tip: http://blog.makezine.com/archive/2007/12/copy_and_paste_sort_of_into_th.html
    - Brian

  6. N. Holzschuch says:

    Great tip!
    In my case (YMAMV) “yum install Xephyr” worked.

    It’s the best way to make multi-window programs (such as aMSN) work on the XO.

  7. Ed says:

    Hi Brian,

    It works fine for me when I type what you wrote. Thanks for a good tip.

    - Ed

  8. John says:

    It appears that the arrow keys to the left of the screen steal the functionality of the actual arrow keys on the keyboard when blackbox is loaded. How exactly would one either tell X to look for two keyboards or tell it to ignore the first one it finds (since this appears to be the “on-screen” keyboard)?

  9. -Sparky says:

    It is up running on the XO. I can toggle
    between XO activities, but I cannot get
    them to appear in windows on the Xephyr
    screen all at once like your screen shot. The only window I get is the
    terminal screen. Totally new with this
    window manager. Any help would be nice.
    The man pages don’t get this basic.

  10. Brian Jepson says:

    Hi Sparky, unfortunately, activities won’t show up on the X11 desktop, but you can start applications in one of two ways:

    1) Type the name at the terminal prompt followed by & and press enter, as in:

    xeyes &

    2) right-click on the desktop and choose a program from the menu. The menu has entries for programs that are not installed (such as Star Office), so this may be hit and miss.

    - Brian