Enlightenment (E17) on openSUSE-Raspberry Pi



Lately, I was translating the great tutorial by Nelson Marques, about XBMC kiosk. I was trying to install E17 on openSUSE version of Raspberry Pi that Bernhard maintains. Everytime I was failing. I didn't know why though. This time I followed couple of steps from Nelson's tutorial and voila...

Let's start from scratch. I'll give you the commands used also for creating the SD card:

1. Create the SD card.
First of all, you have to download the image from Bernhard's website. The current ISO is raspberrypi-opensuse-20130110.img.gz.

* Decompress it.
* Open a terminal inside the folder you decompress it.
* Find the partition that your SD card is mounted using the command
cat /proc/partitions


* Unmount the partition using the command (eg your SD is sdb)
umount /dev/sdb1


* Now create the SD with the command (as super user):
dd if=raspberrypi-opensuse-20130110.img of=/dev/sdb bs=1M;sync


* Now you can boot your pi. You can do all the work using ssh:
ssh root@YOUR_PI_IP

user: root
pass: linux


* You have to replace the repositories of the image (Bernhard didn't have time to do it, so do it manually):

Remove the repo:
zypper removerepo 1
Add new repo:
zypper ar \
http://download.opensuse.org/ports/armv5tel/factory/repo/oss/ oss


* Do an update:
zypper up


2. Installing the Software:

I installed gdm as display manager (according to Nelson's tutorial, not sure if I needed it) and e17 (NOTE: There are 2 repos. One is for higher ARM processors. So just Abord everytime you prompted).
zypper install gdm e17


3. Configuration

* Configuring the Display Manager
nano /etc/sysconfig/displaymanager


and make sure you have the following lines:
## Type: string(kdm,kdm3,kdm4,xdm,gdm,wdm,entrance,console)
## Default: ""
#
# Here you can set the default Display manager (kdm/xdm/gdm/wdm/entrance/console).
# all changes in this file require a restart of the displaymanager
#
DISPLAYMANAGER="gdm"

## Type: string
## Default:
#
# Define the user whom should get logged in without request. If string
# is empty, display standard login dialog.
#
DISPLAYMANAGER_AUTOLOGIN="root"

## Type: yesno
## Default: no
#
# Allow all users to login without password, but ask for the user, if
# DISPLAYMANAGER_AUTOLOGIN is empty.
#
DISPLAYMANAGER_PASSWORD_LESS_LOGIN="yes"
* Configuring the Window Manager
nano /etc/sysconfig/windowmanager


and make sure you have the following lines:
## Path: Desktop/Window manager
## Description:
## Type: string(gnome,kde4,kde,lxde,xfce,twm,icewm)
## Default: kde4
## Config: profiles,kde,susewm
#
# Here you can set the default window manager (kde, fvwm, ...)
# changes here require at least a re-login
DEFAULT_WM="enlightenment"
NOTE: The value in the key DEFAULT_WM enlightenment should be used in the same file that defines the X Session of E17 (/usr/share/xsessions/enlightenment.desktop).

* Create .xinitrc file
Now comes the tricky part. I found out the solution here.
Create the file inside root's directory using the command:
nano ./xinitrc


and add the line:
exec /usr/bin/ck-launch-session /usr/bin/enlightenment_start


Now everytime you use startx, it'll open the following environment:
openSUSE's Enlightenment (E17) on Raspberry Pi