View source for Debian/cs
From Openmoko
You do not have permission to edit this page, for the following reasons:
You can view and copy the source of this page:
Templates used on this page:
Return to Debian/cs.
You do not have permission to edit this page, for the following reasons:
You can view and copy the source of this page:
Templates used on this page:
Return to Debian/cs.
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 je používán na mnoha embedded zařízeních. Použití Debianu na FreeRunneru zpřístupňuje hromadu balíčků se softwarem z repozitářů Debianu, již zkompilovaných pro procesory arm. Navíc, každý si může postavit vlastní programy, aniž by se musel učit jak na to pomocí OpenEmbedded. Například nativní kompilace je v Debianu otázkou pouhého apt-get gcc&libc-dev.
Dříve bylo nutné, aby si každý nainstaloval Debian ručně. Nyní je již k dispozici instalační skript. "Oficiální" instrukce jak nainstalovat Debian na FreeRunner nebo Debian na Neo1973 jsou umístěny na Debian wiki. Tato stránka je o po instalačních nastaveních, a tipech speciálně pro FreeRunner. Pro podporu nebo nahlášení bugu si prosím přečtěte sekci podpora.
Přednastavené heslo pro uživatele root je prázdné. Měli byste jej změnit co nejdříve
# passwd
Pro "zasuspendování" stiskněte tlačísto power, nebo spusťte 'apm -s'- Ke změnění času pro ztmavení nebo vypnutí displeje, editujte
/usr/share/python-support/fso-frameworkd/framework/subsystems/odeviced/idlenotifier.py
sekci
self.timeouts = { \ "idle": 10, "idle_dim": 20, "idle_prelock": 12, "lock": 2, "suspend": 20, \
idle_dim je čas v sekundách ke ztmavení displeje (přičítá se k "idle" času), idle_prelock je čas, po kterém se displej vypne. Poté spusťte:
mv /var/lib/python-support/python2.5/framework/subsystems/odeviced/idlenotifier.pyc /var/lib/python-support/python2.5/framework/subsystems/odeviced/idlenotifier.pyc.old
Suspend můžete kompletně vypnout zakomentováním celé sekce "Idleness Brightness Handling" v souboru
/etc/freesmartphone/oevents/rules.yaml
Přednastavená časová zóna je UTC. Přenastavte ji spuštěním
# dpkg-reconfigure tzdata
Pro ruční nastavení času použijte něco jako
# date -s 00:33
Nebo pokud máte připojení k internetu, třeba takto
# apt-get install ntpdate # ntpdate-debian
Pokud si přejete synchronizovat hodiny s GPS časem, můžete použít takovýto skript
#!/usr/bin/env python # # Set the gps time # Be sure your GPS is active before to launch this script import dbus import subprocess import time proxy = dbus.SystemBus().get_object('org.freesmartphone.frameworkd', '/org/freedesktop/Gypsy') # bus name, object name interface = dbus.Interface(proxy, 'org.freedesktop.Gypsy.Time'); subprocess.call(['date',time.strftime( '%m%d%H%M%Y.%S', time.localtime(interface.GetTime()))])
Pokud se nechcete otravovat s konfiguračními soubory, a hledáte jednoduché GUI pro konfiguraci wifi, pak wifi-radar nebo wicd je právě to, co hledáte.
apt-get install wifi-radar wifi-radar
nebo
apt-get install wicd wicd-client -n
Pokud chcete víc, čtěte dále...
Ujistěte se, že máte nainstalovány následující balíčky:
apt-get install wireless-tools wpasupplicant dhcp3-client
Za předpokladu, že váš bezdrátový router používá WPA a DHCP, editujte /etc/network/interfaces
a vložte sekci podobnou této:
auto eth0 iface eth0 inet dhcp wpa-driver wext wpa-ssid "MyWirelessName" wpa-psk "MyWirelessPassword"
Kde pochopitelně místo MyWirelessName a MyWirelessPassword použijete název a heslo vlastní wifi sítě.
Můžete to otestovat pomocí
# ifup eth0
Můžete určit svou IP adresu pomocí
# ifconfig eth0
Problémy:
ifup eth0
Jakmile wpa_supplicant jednou začal řídit vaše wifi rozhraní, měli byste psát "wpa_action eth0 stop" namísto "ifdown eth0".
K nakonfigurování WPA k "potulování se" mezi bezdrátovými sítěmi, budete potřebovat vytvořit následující soubor:
/etc/wpa_supplicant/wpa_supplicant.conf
vzorový soubor (a více dokumentace) je dostupný v:
/usr/share/doc/wpasupplicant/examples/wpa-roam.conf
Nyní potřebujete do tohoto souboru přidat bezdrátové sítě. Například:
network={ ssid="MySSID" key_mgmt=NONE wep_key0="abcdefghijklm" # wep_key0=6162636465 # <- bez uvozovek, takže hex číslo wep_tx_keyidx=0 id_str="MySSID" }
network={ ssid="SomeNetwork" key_mgmt=NONE }
network={ ssid="Example WPA Network" psk="mysecretpassphrase" id_str="home" }
Dále budete potřebovat zeditovar /etc/network/interfaces. To vám umožní nakonfigurovat wifi, aby používala dhcp, nebo jiné odpovídající nastavení:
auto eth0 iface eth0 inet manual wpa-driver wext wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf # MySSID comes from an id_str above. iface MySSID inet dhcp # default is what's used if there is no id_str setting. # so the 'SomeNetwork' network will use DHCP. iface default inet dhcp iface home inet static # static interface settings, or whatever...
Nakonec, pokud chcete zkusit defaultní přístup na internet přes eth0 (a ne usb0), pak zakomentujte tento řádek v konfiguraci usb0 adaptéru:
gateway 192.168.0.200
Z nějakého důvodu jsem musel rebootovat, aby se projevilo nastavené id_str. Avšak, měli byste nyní být schopni použít "ifup eth0" k asociaci s přípojným bodem wifi sítě a "wpa_action eth0 stop" k vypnutí wifi adaptéru.
TODO: Which of the issues that single network configurations suffer from are addressed by WPA roaming mode? Would ifplugd / guessnet help, or just make things more complicated? (See: To-Do List) |
K využití všech možností wpasupplicant
jako roaming a automatické připojování na různé sítě byste si měli přečíst /usr/share/doc/wpasupplicant/README.Debian.gz
FreeRunner používá standardní Linuxový bluez stack, nainstalovaný pomocí
# apt-get install bluez-utils
There is also a module missing from /etc/modules, which is critical to getting your device recognized. (kudos to johnsu01 on irc.freenode.net:#openmoko-debian for the find)
# echo ohci-hcd >> /etc/modules
The first time you try this, you can also
# modprobe ohci-hcd
Jediná atypická část používání bluetooth na FreeRunnerovi je jeho zapnutí, které se provádí následovně
# mdbus -s org.freesmartphone.frameworkd /org/freesmartphone/Device/PowerControl/Bluetooth SetPower 1
Nyní by zařízení mělo být vidět
# hcitool dev
TODO: A co dále? (See: To-Do List) |
Můžete nainstalovaet dselect(~2.2MB) nebo aptitude(~12MB) pro vizuální prohlížení dostupných balíčků pomocí desktopové konzole.
Na GTK postavený správce balíčků synaptic(~15.7MB) po instalacilsb-release a hicolor-icon-theme také funguje, ale je velmi pomalý.
Nakonec, na omezeném systému, prostě použijte příkaz:
grep -e Package: -e Description /var/lib/dpkg/available|more
By default debian uses fbdev, but we can use Xglamo to get better performance:
apt-get install xserver-xglamo
after that edit /etc/X11/xorg.conf and change the line
Driver "fbdev"
to:
Driver "Xglamo"
and if you want to run xserver as normal user:
chmod u+s /usr/bin/XglamoYou may also want to force the X server to 96 dpi to have the same fonts as with fbdev. Add "-dpi 96" to the X_OPTIONS variable in /etc/init.d/nodm:
X_OPTIONS="vt4 -nolisten tcp -dpi 96"
with that you:
Using xglamo you must remember that:
1. Vytvořte nového uživatele
# useradd -m -G audio,dialout,floppy,video,staff username # passwd username
2. Editujte /etc/init.d/nodm a změňte v něm USER=root na USER=username. Then to make sure changes are not lost on upgrade, run
dpkg-divert --add /etc/init.d/nodm
This will make new versions of /etc/init.d/nodm be written to /etc/init.d/nodm.distrib
3. Edit /etc/X11/Xwrapper.config
and change allowed_users=console
to allowed_users=anybody
(Or use dpkg-reconfigure x11-common
)
4. Copy /root/.xsession into ~username/
5. Note that, if you ran zhone as root first, you may have to change ownership or remove /tmp/zhone.log, as a normal user is not able to write to a file owned by root.
6. If you have already configured to use Xglamo as a driver, chmod u+s /usr/bin/Xglamo (as can be read below)
If you want to make calls or interact with the gps daemon through a dbus interface, you user will have to have the rights to do that. One way of adding these rights is as follows:
Alternatively, replace all instances of 'user="root"' with 'group="messagebus"' and add your user to the messagebus group.
Musíte přidat vašeho uživatele do skupiny audio ("adduser <username> audio").
Pokud stále nemáte žádný zvuk, vyzkoušejte tyto stavové soubory: Talk:Manual_Debian#Sound
As a default the Matchbox keyboard is installed, which you can use to input characters into your neo. As an alternative you might want to install CellWriter. It is a grid-entry natural handwriting input panel. As you write characters into the cells, your writing is instantly recognized at the character level. It also features a full fledged onscreen keyboard.
Installation:
apt-get install cellwriter
More information can be found on the homepage.
When Debian is installed, the kernel is provided by the package linux-image-2.6.24-openmoko-gta02
. This package can be installed only in POSIX compliant filesystems, so it can not be used if your boot partition is a vfat one. Your kernel will be keep updated like the other packages of the system. You should use this way if you are unsure and you need an (almost) stable system.
Otherwise you can choose to manual install an OM kernel. But only do this if you know what you are doing. At the moment there is a little problem in the question which kernel to use. Hopefully it will be solved in the near future.
The original openmoko kernel works fine inclusive suspending and supports different really nice usb gadgets (not all working at the moment). :)
download stable: http://downloads.openmoko.org/releases/Om2008.9/
download testing: http://downloads.openmoko.org/daily/
The new FSO4 kernel works fine and suspend/resume is also possible. But this kernel still has no loadable usb gadget modules (10-Nov-2008). :/
download testing: http://downloads.freesmartphone.org/fso-testing/images/
download unstable: http://downloads.freesmartphone.org/fso-unstable/images/
mv /boot/uImage.bin /boot/uImage.bin.old
, then mv /lib/modules/2.6.24 /lib/modules/2.6.24.old
, then chown -R root.root /lib/modules/2.6.24
because the owner from the tar.gz is something else (for me).
depmod -a
.
echo g_ether >> /etc/modules
. I read in an email, that the module "ohci-hcd" is also needed for some bluetooth functions, but i don't know this for real. I inserted it to my modules file to be on the safe side.
It is not really a Desktop environment, but using fbpanel with Matchbox you can have a fast, lightweight, gtk2 desktop panel.
sudo apt-get install fbpanel
~/.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;
~/.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.
~/.gtkrc-2.0
sudo apt-cache search gtk2-engines sudo apt-get install gtk2-engines gtk-theme-switch DISPLAY=:0 gtk-theme-switch2Now choose your theme, font and save it. To see changes do 'killall fbpanel'.
In order to use killall, install the psmisc package:
apt-get install psmisc
Some of the icons rely on the hicolor-icon-theme:
apt-get install hicolor-icon-theme
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
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
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
accorence with startlxde
.
Arne Anka suggested trying the light-weight webkit-based midori browser:
apt-get install midori
Another light-weight browser is Dillo. It can be easily installed with:
apt-get install dillo
If you think the previous options are quite slow on Freerunner try Links2.
apt-get install links2
Run as:
xlinks2
Openmoko Freerunner has integrated a good AGPS chip that can be used to know in every moment the phone position. The most known free applications to use gps with graphical maps are:
(Attention: Navit is not yet present on Debian repository)
To read an E-Book you have diffent possibilities:
There is also an hack to convert drm protected adobe ebooks to .cbz files readable as mentioned on the mailing list.
Matchbox has an option, use_cursor
, that can be used to control whether to show the cursor.
For the default setup, edit /usr/bin/zhone-session
and change the matchbox command to
matchbox-window-manager -use_titlebar no -use_cursor no
Unclutter is a program that hides the cursor after a period of inactivity. To use unclutter, install it
and choose Yes to the question Start unclutter automatically?
. To change settings edit
/etc/default/unclutter
.
To make the cursor invisible create a file called empty.cursor with this content:
#define empty.cursor_width 16 #define empty.cursor_height 16 static unsigned char empty.cursor_bits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
Now you can execute: xsetroot -cursor empty.cursor empty.cursor and the cursor will be invisible. To make this permanent you have to invent something ;) It must be executed after zhone has finished starting up.
Sometimes it is helpful to have a big screen, keyboard and mouse. You can run X applications in a nested X server window. On your desktop install the nested X server application Xephyr (better that Xnest) apt-get install xserver-xephyr Run a nested X server as display=:1 Xephyr :1 -ac -br -screen 480x640 -reset -terminate & Now you are able to run apps on your Neo which will display on your desktop PC. Make sure to set the display, for example if "mydesktop" is your desktop hostname DISPLAY=mydesktop:1 xfce4-session &
To have the right click with stylus an easy way is to use the Sebastian Ohl's tslib patch: you can find it here until it will not enter in the official Debian package.
You can install it with:
wget http://www.ohli.de/download/xserver-xorg-input-tslib_0.0.5-1+fso1_armel.deb dpkg --install xserver-xorg-input-tslib
This patch makes it necessary to add a new line to your xorg.conf.
Option "EmulateRightButton" "1"
Just add it to you InputDevice section. Without this line the old behavior of the tslib driver is restored -> this means no right click.
Warning: this patch is external to Debian repository and is not (yet) supported by Debian comunity.
In this way, to get a right click you can simply tap and hold the stylus and after a while a right click will occurs.
Warning: tslib patch is incompatible with xserver-xglamo
. Use libgtkstylus
instead (see below).
apt-get install libgtkstylus
export GTK_MODULES=libgtkstylus.so &
If you are running Linux (or a similar xorg capable operating system) on your Desktop, you can export your xsession to the openmoko device and use your mouse and keyboard on the Neo screen. A little program called x2x makes it even possible to do this simultaneously on the fly. When activated you just move your mouse to the edge of your monitor and then the mouse cursor continues on the screen of your openmoko device. If you select a window on the OM, the input of your keyboard is automatically entered in that window. You can even use the clipboard to copy data from tour desktop to OM and in the reverse direction.
Configure your desktop computer to export your xsession: On your desktop (with root permissions): Make sure that sshd is installed and in /etc/ssh/sshd_config you have set X11Forwarding yes
In K/Ubuntu sshd is in the package openssh-server.
On your OM device install x2x (with root permissions) apt-get install xauth x2x Now open a new X terminal on your desktop computer. You MUST be the same user that is running the xsession on your desktop (i.e. do not su to root or another user in your x terminal!). Use the same username that is running an xsession on your OM device. Assuming that you have a usb networking connection to OM (with standard configuration) on the user prompt of your desktop type: user@desktop:~$ ssh -X openmoko@192.168.0.202 "/usr/bin/x2x -east -to :0.0" Hit return and enter your password. The xterm window will be unresponsive after that, but keep it open until you disconnect your OM device.
Now move your mouse cursor across the right edge of your monitor. It should enter the screen of your OM device from the left. Of course you can also use -west, -north or -south, depending on your preference where you place your OM.
If computer says: sh: /usr/X11R6/bin/xauth: No such file or directory X11 connection rejected because of wrong authentication. x2x - error: can not open display localhost:11.0
It means you haven't installed xauth on your OM. So on your OM (with root permissions) apt-get install xauth
With this method you can have the following functionality:
All devices/computers in question should be able to install synergy. Windows computers can use an installer exe. Debian devices have a package ready to be used.
apt-get install synergy quicksynergy
quick synergy will appear in your XFCE programs menu (Accessories->QuickSynergy). Run it, switch to the "Use" tab, enter the IP address of the computer with the mouse and keyboard you wish to use, and press Execute.
In the windows host, (or linux) run the synergy after installation, and configure it to share its keyboard and mouse(server), configuration is fairly simple, you add all the hostnames of the devices/computers that ever would be joined to the "screens" list, and create 2 links for each connection.
If your desktop's hostname is homepc, and the device's is debian_gta02, and i place the device to the left of the desktop, the links would look like this:
homepc is right of debian_gta02 debian_gta02 is left of homepc
Now move back to the main screen, and press Start.
That should be it, in windows you should have an icon with a yellow lightning in it when synergy is connected and working. Synergy supports connection of more then one screen so one could set up a full lab with only one keyboard and mouse :)
To have more information about Debian go to Debian homepage.
If you have some problems, you can find support in smartphone mailing list. Report your discovered bugs to this list but remember to put Joachim Breitner in CC.
If you'd like to help the packaging activities, you can join the fso mainteiner list.
Consider a swap partition [1] [2].
Pokud vytváření tabulky oddílů hlásí chybu, použijte následující patch:
--- install.sh 2009-01-19 17:36:26.000000000 +0300 +++ install_good.sh 2009-01-19 17:44:51.000000000 +0300 @@ -405,9 +405,9 @@ echo " * Waiting for partitions to appear" SLEEP_SECONDS=3 -while ! ([ "$SINGLE_PART" = "true" ] && test -e ${SD_DEVICE}p1) ||\ - test -e ${SD_DEVICE}p1 -a -e ${SD_DEVICE}p2; do - if [ "$SLEEP_SECONDS" = 15 ]; then +while ! (([ "$SINGLE_PART" = "true" ] && test -e ${SD_DEVICE}p1) ||\ + test -e ${SD_DEVICE}p1 -a -e ${SD_DEVICE}p2); do + if [ "$SLEEP_SECONDS" = 30 ]; then echo "E: Partitioning has failed, partitions have not been created" exit 1 fi @@ -598,7 +598,7 @@ rootfs / auto defaults,errors=remount-ro,noatime 0 1 __END__ -if ![ "$SINGLE_PART" = "true" ]; then +if [ "$SINGLE_PART" != "true" ]; then cat >> $INST_DIR/etc/fstab <<__END__ /dev/mmcblk0p1 /boot auto defaults,noatime 0 2 __END__
apt-get segmentation fault Kdykoli dostanete segmentation fault při používání apt-get nebo aptitude, vyčistěte databázi, a ta bude znova sestavena
rm /var/cache/apt/*.bin
Pokud nechce Zhone nastartovat je to nejpravděpodobněji kvůli chybě v balíčku python-evas [3] (fixed in new install). Nainstalujte balíček:
wget http://www.ginguppin.de/files/python-evas_0.2.1-2_armel.deb dpkg -i python-evas_0.2.1-2_armel.deb