XS Community Edition/0.4/Installing

From OLPC
< XS Community Edition‎ | 0.4
Revision as of 22:35, 1 October 2013 by Jvonau (talk | contribs) (64 bit howto)
Jump to navigation Jump to search

This IIAB XSCE content does not reflect the opinion of OLPC. These pages were created by members of a volunteer community supporting OLPC and deployments.


Pencil.png NOTE: The contents of this page are not set in stone, and are subject to change!

This page is a draft in active flux ...
Please leave suggestions on the talk page.

Pencil.png

Thank you for testing as progress moves quickly reinforcing support across x86, XO-1.5, XO-1.75, XO-4, x86, Trim-Slice and Raspberry Pi towards our imminent release.

If you are installing on an XO, you may choose to install from an (1) Offline Image (preferred) or the more traditional (2) Online Install method.

If you are installing on a non-XO, please read our growing community-contributed collection of (3) Install Recipes.

(might also clone XSCE from one XO to another, see Firmware/Storage for the fs-save and fs-load commands, and Tiny Core Linux for tools to use Linux for the task, and Backup. --Quozl 08:31, 22 August 2013 (UTC))

Offline Install on XO's - download an image

Prerequisites

(On XO-1 laptops, XSCE remains highly experimental due to fundamental hardware limitations.)

Install Steps

  1. Download a .zd file from http://build.laptop.org.au/xsce/RC1/ and copy it to a USB stick with at least 2GB of free space.
  2. Download an additional zip file and unzip it onto a USB key from http://build.laptop.org.au/xsce/RC1/xs-repo.zip. This will enable completely offline installs
  3. Install with "fs-update u:\<file>.zd", (at the firmware "ok" prompt, you can list the contents of USB with dir u:\). see also How to install to SD card for instructions on how to install to an external SDcard.)
  4. Reboot with bye
  5. login (just press the enter key)

If you need to configure wifi access to the internet:

  1. telinit 5
  2. configure WiFi in the neighbourhood view
  3. open the terminal activity
  4. type su
  5. ping google.com
  6. reboot
  7. login (just press the enter key)

If you have internet access via an ethernet dongle:

  1. ping google.com

Then:

  1. Ensure your usb flashdrive that you unzipped xs-repo.zip to is inserted in the XO
  2. xs-setup or xs-setup <domain>
  3. Reboot and inspect

NOTES about Offline Installs

  • Stripped out content and a limited set of activities
  • ds-backup-client and olpc-update-query are disabled
  • TinyCore's xo-custom files
  • All of stats' dependencies pre-installed
  • Pathagar
  • Internet-in-a-Box (IIAB) e.g. partial dataset for testing: http://downloads.internet-in-a-box.org/IIAB_QuickStart_Sampler_20130809.tgz
  • IIAB, xs-extras, and release-0.4-fixes repo files are pre-installed nothing to add to get newer rpms.
  • For a complete list of rpms installed see the *packages.txt in the same directory. Now only 2 rpms (dhcpd and ejabberd) get installed later either online or from the optional usbkey. Warning the installed size is now ~2.4Gb up from ~1.9Gb.

Online Install on XO's

This is the traditional install method, variations of which supporting most all hardware running Fedora 18. It had been the only available install method for version 0.3, earlier in 2013.

Prereqs

This recipe installs XS Community Edition on an XO-1.5, XO-1.75 or XO-4 running OLPC OS 13.2.0. It assumes that the XO will have two network connections, one for the Internet and one for client XOs.

During the install process, your XS server must be connected to the Internet either via its built-in Wifi adapter/ears or through a USB Ethernet Adapter. This will be the way that the server talks to the Internet.

In order for the server to be able to talk to XOs it will need a USB ethernet adaptor connected to a separate Wifi access point (call it AP-LAN) so kids' XOs can later connect their XOs to the server.

Repeat any of the download steps below if they fail due to Internet/DNS glitches.

Install Steps

  1. If connecting to the Internet via WiFi, go to 'Neighborhood View' and select a wireless network to connect to the Internet.
  2. From the XO Home screen, go to Settings, select "Power," then uncheck "Automatic power management."
  3. Ensure one or two USB Ethernet Adapters are connected, see above.
  4. Launch Terminal Activity (unhide Terminal if necessary, clicking List View in the top right of Home View).
  5. Change to user root by typing su.
  6. Make sure the date and time are set correctly by typing date at the command prompt. If it is not, set it manually using date mmddhhmmyyyy where mm=month, dd=day, hh=hour, mm=minute, yyyy=year. This is required for yum to work correctly.
  7. Confirm your connectivity to the Internet by typing ping google.com
  8. Change directory by typing cd /etc/yum.repos.d.
  9. Download the needed yum repo by typing wget http://xsce.activitycentral.com/repos/xsce-rel4.repo.
  10. Ensure you can access all the repos with yum repolist (can be repeated if an error occurs.)
  11. Install xs-config-xo by typing yum -y install xs-config-xo. (If you are installing on an XO-1, type yum -y install xs-config-xo1). See Installing XSCE on an XO1.
  12. Type bootstrap-xo to configure the XO with software necessary to install the school server.
  13. When you are prompted, Press [Enter] to reboot.
  14. When you are prompted, Press [Enter] to log in as root.
  15. Type the command xs-setup. This generates a long list of "yum" install requests, similar to the normal adding of functions that you would do if you loaded a minimal "network" install CD from Fedora, and then added additional functions one at a time.
  16. At the end the install script will declare, "XS configured; Ready to reboot and use."
  17. Type reboot.
  18. Note that if during testing the networking seems not to be working (and you are sure that access points are set up correctly) it is possible to reconfigure the network by typing the command xs-setup-network.

Install Recipes for Non-XO Hardware

Professional volunteers are strongly encouraged to reinforce support for other hardware platform running Fedora 18. For now we have:

32 bit Install

  1. Install Fedora 18. A minimal install such as the XFCE CD is fine. http://mirrors.kernel.org/fedora-alt/releases/18/Spins/i386/Fedora-18-i686-Live-XFCE.iso
  2. Log in as root and yum -y update
  3. Verify wget is present, if not, then yum -y install wget
  4. Disable SELinux: edit /etc/selinux/config from SELINUX=enforcing to SELINUX=disabled
  5. Reboot
  6. Ensure one or two ethernet devices are connected
  7. Ensure you are root
  8. Change directory by typing cd /etc/yum.repos.d
  9. Download the required yum repo by typing wget http://xsce.activitycentral.com/repos/xsce-rel4.repo
  10. Install xs-config by typing yum -y install xs-config
  11. Type xs-setup This generates a long list of "yum" install requests, similar to the normal adding of functions that you would do if you loaded a minimal "network" install CD from Fedora, and then added additional functions one at a time.
  12. When the install script is complete, it will declare, "XS configured; Ready to reboot and use" and then you'll be back at a prompt.
  13. At the prompt, type reboot

64 bit Install

  1. Install Fedora 18. A minimal install such as the XFCE CD is fine. http://mirrors.kernel.org/fedora-alt/releases/18/Spins/x86_64/Fedora-18-x86_64-Live-LXDE.iso
  2. Log in as root and yum -y update
  3. Verify wget is present, if not, then yum -y install wget
  4. Disable SELinux: edit /etc/selinux/config from SELINUX=enforcing to SELINUX=disabled
  5. Reboot
  6. Ensure one or two ethernet devices are connected
  7. Ensure you are root
  8. Change directory by typing cd /etc/yum.repos.d
  9. Download the required yum repo by typing wget http://xsce.activitycentral.com/repos/xsce-rel4.repo
  10. Install xs-config by typing yum -y install xs-config also type yum -y install xs-config-x86_64
  11. Type xs-setup This generates a long list of "yum" install requests, similar to the normal adding of functions that you would do if you loaded a minimal "network" install CD from Fedora, and then added additional functions one at a time.
  12. When the install script is complete, it will declare, "XS configured; Ready to reboot and use" and then you'll be back at a prompt.
  13. At the prompt, type reboot

Trim-Slice

  1. The internal ethernet is configured as external internet connection and wifi is enabled as lan connection, (a second USB adapter required for connection to additional wifi access points).
  2. Grab the Fedora 18 Trim-Slice image at http://fedoraproject.org/wiki/Architectures/ARM/F18/Trimslice -- use the armhfp version. (I needed to yum -y install xz to follow the xzcat <image> > <device> instructions).
  3. For a while I used a SATA hard drive adapter to initialize the hard drive. Later I have started to use the Trim-Slice kernel made for flashing the internal uboot loader, which installs on an SD card, and can write the SATA drive in place.
  4. I found it necessary, during installs, to use a serial to usb adapter, and an XO running minicom (for me this uses /dev/ttyUSB0 115200).
  5. edit the /boot/boot.scr as per instructions for USB/SATA, put the hard drive in the Trim-Slice, and boot
  6. Change directory by typing cd /etc/yum.repos.d.
  7. Download the needed yum repo by typing wget http://xsce.activitycentral.com/repos/xsce-rel4.repo.
  8. Change back to the root directory -- cd.
  9. Type the command yum -y install xs-config-ts.
  10. Then type bootstrap-ts 2>&1 <pipe using vertical bar> tee -a boot.log This generates a long list of "yum" install requests, similar to the normal adding of functions that you would do if you loaded a minimal "network" install CD from Fedora, and then added additional functions one at a time. In case there are problems, the file /root/boot.log will help with diagnosis.
  11. At the end the install script will declare, "XS configured; Ready to reboot and use."
  12. Type reboot.

Raspberry Pi

  1. Download the image from http://xsce.activitycentral.com/downloads/rpi-xsce-0.4-1.img.gz, and the rpi-xsce-0.4-1.img.md5sum (-1,-2,-3, etc will include more recent fixes).
  2. Gunzip the <xxxx.img.gz> file.
  3. Run md5sum on the expanded .img file and compare with cat < rpi-xsce...img.md5sum.
  4. Determine the /dev/<name> of the SD card you want to use with the Raspberry Pi.
  5. Use dd to write the image to the SD card: dd if=<file name> of=</dev/name> (probably /dev/sdb or mmcblk0). Don't include the "p1,p2" because the partition table gets written by the image.
  6. The image was created with an unprivileged user "admin" and a password of "12admin". If you don't have USB keyboard, mouse, and digital monitor, you can ssh in with these credentials. Sometimes you can view the IP addresses passed out by your router with a web browser to get the the Raspberry Pi's IP address.
  7. Root password is "fedora". Change this if you have pranksters in your vicinity by becoming root, and using command line "passwd".
  8. Change to user root by typing su. enter the password for root
  9. It's recommended to resize the SD card partition to it's maximum available size. GParted or a similar tool would do the trick.
  10. type xs-setup-network

To test the latest code:

  1. Change directory by typing cd /etc/yum.repos.d.
  2. type rm xs-devel.repo when prompted type y
  3. Download the needed yum repo file by typing wget http://xsce.activitycentral.com/repos/xsce-rel4.repo.
  4. Ensure you can access all the repos with yum repolist (can be repeated if an error occurs.)
  5. type yum update xs-config
  6. type xs-setup

CAVEATS: Raspberry Pi is armv6 architecture, and XO is armv7hl. Some rpm packages are not available in the required form and some functions will have incomplete support. i.e:

  1. Stats
  2. Internet-In-A-Box
  3. ejabberd