Debian
From Openmoko
m (→Login to Freerunner with SHR) |
m (→Login to Freerunner with SHR) |
||
Line 37: | Line 37: | ||
Login to your freerunner with the booted SHR distribution: | Login to your freerunner with the booted SHR distribution: | ||
# ssh -X -l root 192.168.0.202 | # ssh -X -l root 192.168.0.202 | ||
− | + | and an [[USB Networking]] connection (e.g. IP-address 192.168.0.202 of your freerunner). Change the IP-address if your network settings differ from this IP-address. Prepare SHR so that you have a working internet connection from your freerunner. This is necessary because SHR will download the Debian packages. | |
=== Script Installation and Running install.sh === | === Script Installation and Running install.sh === |
Revision as of 22:50, 17 October 2010
Languages: |
English • العربية • Български • Česky • Dansk • Deutsch • Esperanto • Eesti • Español • فارسی • Suomi • Français • עברית • Magyar • Italiano • 한국어 • Nederlands • Norsk (bokmål) • Polski • Português • Română • Русский • Svenska • Slovenčina • Українська • 中文(中国大陆) • 中文(台灣) • Euskara • Català |
Debian is a universal operating system used on many other embedded devices, and also on home computers. Using Debian on the FreeRunner gives access to the Huge army of software packaged in the Debian repositories, already compiled for the Neo's arm(v4) processor. Moreover, one can build one's own source files for programs without having to learn the OpenEmbedded way. For example compiling natively is a snap with Debian, just apt-get gcc&libc-dev.
For an existing Debian/Ubuntu user, choosing Debian for Neo FreeRunner makes phone a very familiar, trustworthy and flexible place to hack in.
The bulk of information related to running Debian on FreeRunner is supposed to be at wiki.debian.org. For all installation, support or bug reporting needs please see DebianOnFreeRunner in the Debian wiki.
The current method of installation, install.sh, is not fail-proof. Work is progressing on a real debian-installer support. Please be sure Bash is installed before trying install.sh. The main reason why install.sh fails is because it installs debian unstable which is constantly in motion.
Contents |
Screenshot for Manual
It might be useful to improve this manual with screenshots. You can create screenshots on Debian with ImageMagick:
# sudo apt-get install imagemagick
Then you can take a screenshot of the full screen with the import-command:
# import -window root screenshot.jpg
If you take the screenshot with some delay you have to add the pause parameter (e.g. waiting for 10sec)
import -pause 10 -window root screenshot.jpg
Installation Debian on Freerunner
The following steps are a quick installation guide with and installed SHR on your freerunner and Qi as bootloader already installed on your freerunner. For further information refer to the Debian on Freerunner Wiki from which this short summary is derived from.
NOTE: The installation script for Debian, used in the following manual, stopped on SHR with errors. To run a complete Debian installation process it might be necessary to flash the FR with current minimal rootfs for SHR again. You could also try in your SHR distribution to remove some software packages with opkg (not tested). Recommended to flash memory with a minimal SHR. |
The following manual was successful with a fresh flash of SHR in NAND memory.
Installing Qi
The following manual needs Qi to be installed as bootloader. If you more options for using the bootloader usethe Debian on Freerunner Wiki for further details.
Switch off you freerunner (if necessary) and start NOR uBoot by pressing AUX and Power-On at the same time and then start dfu-util on your desktop computer with the following parameters for GTA2:
# dfu-util -a u-boot -R -D qi-s3c2442-master-hist_3b8513d8b3d9615e.udfu
See Flashing the Neo FreeRunner or Flashing the Neo 1973 for more details on flashing your phone.
Login to Freerunner with SHR
Login to your freerunner with the booted SHR distribution:
# ssh -X -l root 192.168.0.202
and an USB Networking connection (e.g. IP-address 192.168.0.202 of your freerunner). Change the IP-address if your network settings differ from this IP-address. Prepare SHR so that you have a working internet connection from your freerunner. This is necessary because SHR will download the Debian packages.
Script Installation and Running install.sh
Run the following commands from shell in SHR
# wget -O install.sh http://pkg-fso.alioth.debian.org/freerunner/install.sh # chmod +x install.sh # TASKS="ALL" QI=true SINGLE_PART=true sh ./install.sh all
The following commands above assumes that you have Qi installed and you want to use a single partition for Debian on freerunner. The SD card (2GB suggested) will be formated by the script. If you want to install Debian with different installation parameters please see Debian-Wiki for further details.
NOTE: The installation could take more than 50 minutes to complete and you will download approximately 250MB on your freerunnner. |
Debian Showcase: Desktop Environments And Applications
fbpanel + Matchbox
It is not really a Desktop environment, but using fbpanel with Matchbox you can have a fast, lightweight, gtk2 desktop panel.
Quick howto:
- Install fbpanel:
sudo apt-get install fbpanel hicolor-icon-theme
- Customize the X startup process:
~/.xsession
#!/bin/sh export GTK_MODULES=libgtkstylus.so zhone & xsetroot -solid black matchbox-keyboard-toggle & matchbox-window-manager -use_titlebar yes & # -use_titlebar yes to minimize & toggle between apps # fbpanel's taskbar does not work with matchbox-window-manager #~/bin/auxlaunch & while true; do fbpanel; sleep 1; done;
- Read http://fbpanel.sourceforge.net/docs.html#config
~/.fbpanel/default
mkdir ~/.fbpanel cp /etc/fbpanel/default ~/.fbpanel/default nano ~/.fbpanel/default
Remove section with 'taskbar' plugin - it's useless with matchbox-window-manager. You may add plugin 'cpu'
Plugin { type = cpu }
Also, plugin 'genmon' is useful:
Plugin { type = genmon config { Command = echo -e $(grep "MemFree" /proc/meminfo | \ awk '{printf "%0.2f", $2 / 1024}') "|"\ $(cat /proc/loadavg | awk '{print $3}') "|" \ $(apm | awk '{print $5}') PollingTime = 60 TextSize = small TextColor = darkblue } }
After 'killall fbpanel' it will show: free mem in megabytes | loadavg | battery % left. - Default theme is ugly. You can change it and / or make fonts bigger:
~/.gtkrc-2.0
sudo apt-cache search gtk2-engines sudo apt-get install gtk2-engines gtk-theme-switch DISPLAY=:0 gtk-theme-switch2
Now choose your theme, font and save it. To see changes do 'killall fbpanel'. (killall requires psmisc package to be installed)
Illume
Illume, the desktop environment used in recent openmoko distribution releases, is also available under Debian. It's part of the Enlightenment window manager version 17 (which is currently in the alpha stage of development), which the Debian FSO package maintainers have placed in their repository. If you have a Debian FSO system running, you can use the following commands to install illume.
apt-get install e17
Then use the following commands to ensure that it starts on boot.
apt-get remove zhone-session apt-get install nodm mv /root/.xsession /root/.xsession.backup cat << END > /root/.xsession #!/bin/sh zhone & enlightenment_start END
LXDE
I you want a really nice desktop enviroment but you think XFCE is too fat, you can try to install LXDE. It give to you the GTK comfort, but use only a fraction of the ram needed by XFCE.
To install it:
apt-get install lxde
to launch it create a /etc/init.d/lxde
script in the same way descripted for xfce4, replacing startxfce4
occurrences with startlxde
.
OpenOffice.org
Did we already mention you can install anything in Debian?
XFCE
The debian installation script installs by default the matchbox window manager. It doesn't feature a desktop environment. xfce is a small and lightweight desktop environment and so is quite fast for the FreeRunner.
apt-get install xfce4
Edit your .xsession to launch xfce4 at X startup :
#!/bin/sh xfce4-session
Edit section [Failsafe Session] of /etc/xdg/xfce4-session/xfce4-session.rc (or ~/.config/xfce4-session/xfce4-session.rc) to handle the auto-started apps. For example:
[Failsafe Session] Count=3 Client0_Command=xfce4-panel Client0_PerScreen=False Client1_Command=xfdesktop Client1_PerScreen=False Client2_Command=zhone Client2_PerScreen=True
Start XFCE !
/etc/init.d/nodm restart
The desktop takes a while to start but once up was snappy as can be expected. I've not yet looked at the reason for the seemingly too slow start for the desktop.
zhone is available from the "Office" menu in xfce. The matchbox keyboard is available in "Accessories".
If you want to display the screen on the long side (ie rotated, 4:3 aspect), add the following to the /etc/X11/xorg.conf in both the Device and InputDevice sections :
Option "Rotate" "CCW"
and then (re)start xfce.
If you want to be able to shutdown/restart the device, add the following line to /etc/sudoers (don't forget to replace username with your actual username):
username localhost = NOPASSWD: /usr/sbin/xfsm-shutdown-helper
Using matchbox-window-manager with XFCE
XFCE's window manager is poorly configured for use with the FreeRunner. Fortunately, matchbox's window manager is compatible with xfce. To use the matchbox window manager, modify ~/.xsession as follows:
#!/bin/sh exec matchbox-window-manager -use_titlebar no -use_cursor no & xfce4-session
Derivative Distributions of Debian
Several distributions are sharing Debian's infrastructure - this is long known. For the Openmoko,
- Fyp extends the basic Debian installation while avoiding the need of an SD
- Hackable1 focuses on GNOME Mobile integration
- Mer : based on Maemo ; see demo and download image at http://www.newlc.com/en/mer-best-maemo-debianubuntu-mobiles-watch-freerunner-demo
- QtMoko - Debian with Qt Extended Improved plus configuration changes put manually on top of it
- Telefoninux http://telefoninux.projects.openmoko.org/index.html