Sorry for the delay. I am working on it and I think I will have it all ready in the next few days. I just have to fix ethernet issues and a few other bugs with the installation and it will be ready to go. Basically everything seems to be working in terms of serving rachel, but it breaks the internet connection of the pi after installing which makes it harder to install modules and update it. When it is fully working I will update the following instructions.Keep in mind this is buggy right now and ethernet won’t work after install.
This is not required, but one step that can greatly improve the performance is to boot from a USB drive instead of a MicroSD which is now available in Raspbian Stretch. This is the guide for that.. You can also do it with a Raspberry Pi 2 or Raspberry Pi 0 W which makes a big difference. I’ll explain how if you’re interested.
You can install this to Raspbian Stretch with Desktop or Raspbian Stretch Lite. I prefer to start from lite as it doesn’t include unnecessary packages.
Setting Up Raspbian Stretch Lite
- Install Raspbian Stretch Lite onto a MicroSD or a USB drive if you enabled booting from USB. You can get it here.. I use Etcher to flash it. Then plug it into your pi.
- Connect it to the internet ( ethernet is the easiest ).
- The following is done by the install script, so not required, but it might be best to do it beforehand.
- Run the command “sudo apt-get update -y”
- Run the command “sudo apt-get upgrade -y”
- Run the command “sudo reboot” and wait for it to reboot
- If you want to work from a desktop environment past this point,
Run the command "sudo apt-get install -y raspberrypi-ui-mods rpi-chromium-mods"
and then “sudo reboot” and wait for it to reboot.
- Run the command “sudo apt-get dist-upgrade -y”
- Run the command “sudo rpi-update -y”
- Run the command “sudo reboot” and wait for it to reboot
Rachel Preperation and installation
- It’s probably easiest to set this up on another system and then transfer the folder ot the pi.
- Download rachelpi from the rachel github and extract it. If you’re working from stretch lite with desktop, install xarchiver with “sudo apt-get install xarchiver” as this is not included in lite.
- Save the stretch install script here to the same folder you extracted master.zip to and name it installer_stretch.py.or something that stands out.
- If you’re not working from the pi, copy the folder onto your pi.
- In a terminal, navigate to the folder ( Example “cd /home/pi/Desktop/rachelpiOS-master” )
- run sudo ./installer_stretch.py and let it run.
Known things to look out for during installation and commands I’ll need to fix
- If the Ka-lite installation asks you if you have your own local content to install, hit y or yes. This will avoid downloading ka-lite.
- Infinite y loop. Not sure why this happens. You will see it continually showing y. If this happens hit ctrl + c to break the installation and then run sudo ./installer_stretch.py again. It should not happen twice.
- “Unable to restart apache service.” If the installation stops with this error, run the installation again.
- If any of these don’t work, try rebooting and running it again
As with other rachel installations, the modules are stored in /var/www/modules. By default this installation method won’t have any modules included. I am not sure if the admin interface works to install modules yet as the internet is broken after install. You can get modules from http://oer2go.org/ and place them in that folder manually. You don’t have permission by default to move things to /var/www/modules, so you will have to use a terminal with an mv command. For example “sudo mv /home/pi/Desktop/en-scratch /var/www/modules” and it should work.
If you want to copy modules out of the 64gb or 32gb rachel images, the best way I have found to do this is using 7zip on windows.
- Run 7zip file manager as administrator by right clicking it
- Extract the image from rachelpi_64EN_4.0.img.zip.
- Double click on rachelpi_64EN_4.0.img and extract 1.img from it
- Double click 1.img and navigate to /var/www/modules and you can drag them out.
I have tested ka-lite-ess, wikipedia for schools, and some other modules with no issues yet.
This might not even be required. I haven’t had issues without it. The installation command for the stem.so php extension gives an error with the old installer when it tries to compile it. This is due to a few bad lines in the file stem.c. There are two options to replace this.One is to extract it from the 64gb or 32gb rachel images and transfer it over. The other is to do afresh compile from the latest source. Keep in mind this is untested as I haven’t even seen where stem.so is used or had any problems, so I guess the third option is to ignore it.
Copy from the 64gb or 32gb Rachel
- Follow the same process as before using 7zip to open 1.img.
- Navigate to /usr/lib/php5/20131226 and extract stem.so to a new folder
- Copy this file to your pi’s /usr/lib/php/20151012 folder
To build the latest stem.so instead.
- Make sure you do this on your pi before running the installer ( so you have internet ) and so it targets the arm architecture.
- Download the package https://pecl.php.net/package/stem/1.5.1 to your pi and extract it.
- Open stem.c in a text editor or using sudo nano stem.c. If using Raspbian Stretch Lite with desktop, install LeafPad with “sudo apt-get install leafpad” which is a simple text editor.
- Navigate to line 222 and change RETURN_STRINGL(incoming, arglen,1); to RETURN_STRINGL(incoming, arglen);
- Navigate to line 339 and change RETVAL_STRINGL(z->p, z->l,1); to RETVAL_STRINGL(z->p, z->l);
- Save. If using nano do ctrl + x, y, ctrl+c.
- Install php7.0-dev using “sudo apt-get install php7.0-dev”
- Open a terminal and navigate to your stem-1.5.1 folder which contains the source
- Run command “phpize”.
- Run command “./configure”
- Run command “sudo make”
- Run command “sudo make install”
- It should be done. You can navigate to /usr/lib/php/20151012/ and look for stem.so to make sure it built.
I understand this is a complicated process right now. I’ll try and put something simple together. It would be much easier to just have a base stretch lite image ready to go once everything is fixed. I’ll update when I fix the ethernet and other issues. If you try this and have any problems let me know and I’ll try to help.