Posted in Linux, Tutorials/Tips

ArchLinux Arm on Rasbperry Pi with Enlightenment windows manager a.k.a E17

Steps to get this done on Rasberry Pi are very similar to normal architecture, however keep in mind that variety of software is limited, because raspberry is ARMv6 architecture using device, while your laptop or desktop computer is mostly i386 or amd64 architecture and software needs to be made for each architecture. Any way, in order to complete this you will need:

Rasbperry Pi
SD Card which is bigger then 2GB (because in this tutorial we will burn image to SD and then expand it in order fully utilize it)
USB Keyboard
USB Mouse
Ethernet Cable
HDMI cable and monitor
Working Linux computer

Let’s begin.
First we need to get Raspberry Pi Arch Linux ARM image, you can do that from here (installation tab), personally used latest build:
http://archlinuxarm.org/platforms/armv6/raspberry-pi
Then extract zip file, in order to get .img file.
Once that is done, place your SD card in to Linux computer and use this command:
dd bs=1M if=/path/to/archlinux-hf-*.img of=/dev/sdX
In my case it was SDC (easiest way, without any command to check storage device letter is to use gparted), so I used this command from root terminal (not sure if that is a must):
dd bs=1M if=/home/vaidotas/Downloads/archlinux-hf-2013-11-14.img of=/dev/sdc

Terminal did not showed any progress, but it was working, so you will need to wait a bit until you are informed about results

shot-2013-12-08_12-35-12

In the beginning of this so called tutorial I mentioned that we will need SD card which is bigger then 2 GB. Here is info why I said that. When we used this command above SD card was partitioned for us using default values, which means if you had 2GB SD card you will have it still, and mostly about ~340MB of free space left. Keep in mind that we only have base now, nothing more. if you used SD card which is not 2 GB but bigger, in my case 8 GB we can expand it in order to utilize it fully.

In order to do so, launch gparted and select your SD Card. You will see similar screen as I did, only number which might by different is unallocated.

shot-2013-12-08_12-40-49
As you can see 5.71 GiB is not used at all and if you boot in to ArchARM you will not be able to set this space for root, only for separate partition, which is  good, but not as good as it could be.
Firstly unmount all partitions if there are any mounted. Then right click on word extended and select “Resize/Move” input maximum amount of size. Then right click on actual partition which original was 1.66GB and was bellow extended and input again maximum value possible. In the end apply changes. In case you get error double check that ALL partitions are unmountd from SD card. In case you missed it (like I did), take SD card out, then insert back and repeat process. Here are results, keep in mind (that is not important) letter changed because I unplugged SD card and external HDD.

sd
Now finally we can put SD card in to our Raspberry Pi and begin part 2.

Once Raspberry has booted it will ask to login, default login and password is root
Once you have logged in I highly recommend to update whole system before doing anything more, in order to do so:

pacman -Syyu
For me there were 23 packages to update, total ~35 MB.

Not sure what keyboard you used in order to type commands, but I used the one from tablet, which was AWFULLY uncomfortable, that is why I set up remote connection as soon as I could:

ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key

Then from your first Linux computer:

ssh -p 22 root@192.168.1.4 (at-least that was my IP)

Enter your credentials and you are ssh’ed in to Raspberry. Now we can start setting up windows manager and some other tweaks. If you used decent terminal, you now will be able to paste commands straight from clipboard to terminal, which is linked to Raspberry:

pacman -S enlightenment17 xf86-video-fbdev xf86-input-synaptics xorg-server xorg-server-utils xorg-xinit mesa xf86-input-keyboard xf86-input-mouse xterm xrdp

systemctl enable xrdp.service
systemctl enable xrdp-sesman.service

ssh

When packages are installed you need to set which windows manager to load after you log in and use startx, in order to do so:
nano ~/.xinitrc
Then type this text:
exec enlightenment_start
Click CTRL+X then Y and Enter
Now you can type startx to launch your E17 on device it self (not remote software), you could also use login manager  such as slim, but it loads quite slow I did not use it.

If you had a bit of knowledge before this tutorial, you might thing what about xrdp and thous systemctl. These were packages in order to connect to Raspberry Pi from windows remote software or Linux alternatives such as rdesktop.

rdesktop

And after you use redesktop YOUR_IP_OF_Raspberry you get log in screen, when you enter default info of root/root you will get in to terminal in which you could type exec enlightenment_start in order to launch it but…

Instead type:

nano /etc/xrdp/startwm.sh

And edit session list to enlightenment_start to look like this:

xrdpwm

Now store this same way we did before CTRL+X then Y and then Enter. Now reboot device (not sure if needed, but will not make it worse). Once device is rebooted rdesktop again and login again. You now should be greeted by Enlightenment windows manager. PS: for some reason login now works only from second time… Not sure still what’s the deal about it.

rdesktope17

And that is end of story, now you need to tweek as you want. PS: do not use mobile profile as it does not work. Result of all of this viewed remotely:

The_end

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s