Saturday, July 14, 2007

Gimp, AbiWord, Firefox and Emacs

I have setup Xserver, so now I want to have fun with some of those X applications.

GIMP,
is the GNU Image Manipulation Program,

# ipkg install -d loop0 gimp
# ipkg-link add gconf-dbus ; ipkg-link add gimp ; ipkg-link add gnome-vfs-dbus ; ipkg-link add gnome-vfs-plugin-file ; ipkg-link add libart-lgpl-2-2 ; ipkg-link add libexif9 ; ipkg-link add libpopt0 ; ipkg-link add libxmu6 ; ipkg-link add libxt6 ; ipkg-link add tiff
GIMP is really slow to start up, and slow on use.

AbiWord,
AbiWord is a word processing program similar to Microsoft® Word,
# ipkg install -d loop0 abiword # ipkg-link add abiword ; ipkg-link add aspell ; ipkg-link add enchant ; ipkg-link add glibc-gconv-cp1252 ; ipkg-link add glibc-gconv-ibm850 ; ipkg-link add glibc-gconv-iso8859-15 ; ipkg-link add libaspell15 ; ipkg-link add libfribidi0 ; ipkg-link add libgnomecanvas-2-0 ; ipkg-link add libgnomeprint-2-2-0 ; ipkg-link add libgnomeprintui-2-2-0
Firefox
# ipkg install -d loop0 firefox
# ipkg-link add firefox ; ipkg-link add libbonobo ; ipkg-link add libgnome ; ipkg-link add libidl-2-0 ; ipkg-link add orbit2
and ipkg install again, to fix the postinst errors.
When I tried to start firefox it hanged and I had to reboot - so firefox does not work and I removed it.

Emacs
# ipkg install -d loop0 emacs
# ipkg-link add emacs
this is a very big installation (15MB), and rather lengthy.

Thursday, July 12, 2007

Changing the default shell to bash

The default shell can be changed in /etc/passwd, by changing /bin/sh to /bin/bash for the root entry, to look like this:

root:DJa2sk3j82das:0:0:root:/home/root:/bin/bash
but this will break the default dropbear ssh server, to fix it install the openssh server,
# ipkg install -d loop0 openssh-sshd
# ipkg-link add openssh-sshd
and ipkg install again to fix the errors

Wednesday, July 11, 2007

X and OPIE - the saga continues

I decided that the proper way to make X work along side with OPIE is to follow the HowTos/OPIE and GPE.
So after changing -terminal 2 to -terminal 3 in /etc/init.d/opie

I first installed gpe-dm thinking (wrongly) that this will solve the problem,

# ipkg install -d loop0 gpe-dm
# ipkg-link -d loop0 gpe-dm

then ipkg install again to fix the errors. gpe-dm started X which I had to stop from command line by /etc/init.d/gpe-dm stop

I installed gpe-task & gpe-base-depends
# ipkg install -d loop0 gpe-task-base gpe-base-depends
# ipkg-link add bl ; ipkg-link add gpe-base-depends ; ipkg-link add xcursor-transparent-theme ; ipkg-link add detect-stylus ; ipkg-link add esd ; ipkg-link add gpe-autostarter ; ipkg-link add gpe-conf ; ipkg-link add gpe-confd ; ipkg-link add gpe-login ; ipkg-link add gpe-screenshot ; ipkg-link add gpe-soundserver ; ipkg-link add gpe-task-base ; ipkg-link add gpe-theme-industrial ; ipkg-link add gtk-engine-industrial ; ipkg-link add gtk-engine-mist ; ipkg-link add gtk2-theme-angelistic ; ipkg-link add hotplug-dbus ; ipkg-link add ipaq-sleep ; ipkg-link add libfontconfig-utils ; ipkg-link add libgtkstylus ; ipkg-link add libxsettings0 ; ipkg-link add libxss1 ; ipkg-link add matchbox-themes-gtk ; ipkg-link add rxvt-unicode ; ipkg-link add startup-monitor ; ipkg-link add suspend-desktop ; ipkg-link add teleport ; ipkg-link add ttf-bitstream-vera ; ipkg-link add xst
then ipkg install again to fix the errors.

Now reboot, gpe and opie will run after reboot...
Ok, now there is some kind of a problem with fluxbox, so I changed the x-window-session symlink to point to the matchbox-session,
# ln -s /usr/bin/matchbox-session /usr/bin/x-window-manager
Now everything runs fine (but with the matchbox windowmanager).

To disable the the login screen, set AUTOLOGIN to true in /etc/sysconfig/gpelogin

After fixing ~/.profile (removing the exec command from .profile and fixing passwd - see the following post) and linking x-window-manager,
# ln -s /usr/bin/matchbox-session /usr/bin/x-window-manager
fluxbox starts ok.

To prevent from GPE to start on boot remove it from the boot sequence,
# rm /etc/rc5.d/S99gpe-dm

Saturday, July 7, 2007

A new SDL library

zodttd is working on a new version for psx4all for the Zaurus, he has released a new version which includes also a new and improved DSL library. I tried the new library and I saw a noticeable improvement in performance. With the new SDL library the arrow keys are in the right direction.

I installed it manually to /media/loop0/packages/user/lib and then linked,

# ln -s /media/loop0/packages/user/lib/libSDL-1.2.so.0.7.2 /media/loop0/packages/user/lib/libSDL-1.2.so.0
I checked the files thay uses libSDL:
  • VBA - still can't run sound but there is an improvement in performance.
  • snes9x - I saw an improvement in the performance, but the screen flickers with the new library.
  • gpsp - still couldn't use it.
  • ScummVm - The menu bug is back - it seems that the fn key is mapped to alt in this version of SDL and ScummVm wouldn't accept any key combination as F5.
  • mplayer - works fine.

X and OPIE

The original idea was to setup the X according to endors mini how-to X/Qt on OESF, and then to use Xqt2 as an Xserver. the first part worked fine, but I couldn't convince the Xqt2 server work properly. Then something corrupted the boot sequence and I had te reflash. I installed X again, with some success, but not Xqt2.
The situation after the installation process is that fluxbox hangs during startup in such a way I have to soft-boot the Zaurus (Alt-Home-B). It seems that if I stop OPIE start the X from the command line and go back to OPIE X will start up fine. I thought the problem was memory so I created a swap file -but this didn't solve the problem.
I have found a little bit more about this problem, it seems that in the cases fluxbox hangs it goes into "uninterruptible sleep" ('D' status under top or ps - someone said that D stands for 'Dead'). Apparently there is no way to kill those processes apart of reboot.

first add the X11 feed to /etc/ipkg.conf,

src/gz x11 http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/x11
src/gz x11-old http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4/feed/x11
src/gz upgrades-old http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4/feed/upgrades
Then install (don't forget to ipkg update) xserver-kdrive-fbdev and it's dependencies,
# ipkg install -d loop0 xserver-kdrive-fbdev
# ipkg-link add libxau0 ; ipkg-link add libxdmcp0 ; ipkg-link add libxfont1 ; ipkg-link add xserver-kdrive-fbdev
next, install xserver-common,
# ipkg install -d loop0 xserver-common
# ipkg-link add libexpat0 ; ipkg-link add libfontconfig1 ; ipkg-link add libx11-6 ; ipkg-link add libxcalibrate0 ; ipkg-link add libxext6 ; ipkg-link add libxft2 ; ipkg-link add libxrandr2 ; ipkg-link add libxrender1 ; ipkg-link add libxtst6 ; ipkg-link add xdpyinfo ; ipkg-link add xmodmap ; ipkg-link add xrandr ; ipkg-link add xserver-common ; ipkg-link add xtscal
install xbase-clients
# ipkg install -d loop0 xbase-clients
# ipkg-link add libxmuu1 ; ipkg-link add xauth ; ipkg-link add xhost ; ipkg-link add xrdb ; ipkg-link add xset
install libcairo1,
# ipkg install -d loop0 libcairo1
# ipkg-link add libcairo1 ; ipkg-link add libpixman1
install gpe-session-scripts (this will install GPE),
# ipkg install -d loop0 gpe-session-scripts
# ipkg-link add atd ; ipkg-link add blueprobe ; ipkg-link add bluez-utils-dbus ; ipkg-link add dbus-1 ; ipkg-link add gdk-pixbuf-loader-gif ; ipkg-link add gdk-pixbuf-loader-jpeg ; ipkg-link add gdk-pixbuf-loader-png ; ipkg-link add gdk-pixbuf-loader-xpm ; ipkg-link add glibc-gconv ; ipkg-link add glibc-gconv-iso8859-1 ; ipkg-link add gpe-announce ; ipkg-link add gpe-bluetooth ; ipkg-link add gpe-clock ; ipkg-link add gpe-icons ; ipkg-link add gpe-login ; ipkg-link add gpe-question ; ipkg-link add gpe-session-scripts ; ipkg-link add gtk+ ; ipkg-link add libatk-1.0-0 ; ipkg-link add libaudiofile0 ; ipkg-link add libcontactsdb0 ; ipkg-link add libesd0 ; ipkg-link add libeventdb0 ; ipkg-link add libglade-2.0-0 ; ipkg-link add libgpelaunch0 ; ipkg-link add libgpepimc0 ; ipkg-link add libgpevtype0 ; ipkg-link add libgpewidget1 ; ipkg-link add libice6 ; ipkg-link add libiw28 ; ipkg-link add libmb1 ; ipkg-link add libmimedir-0.3-0 ; ipkg-link add libschedule0 ; ipkg-link add libsm6 ; ipkg-link add libsoundgen1 ; ipkg-link add libsqlite0 ; ipkg-link add libstartup-notification-1-0 ; ipkg-link add libxcursor1 ; ipkg-link add libxfixes0 ; ipkg-link add libxinerama1 ; ipkg-link add libxpm4 ; ipkg-link add libxsettings-client0 ; ipkg-link add matchbox ; ipkg-link add matchbox-applet-inputmanager ; ipkg-link add matchbox-common ; ipkg-link add matchbox-desktop ; ipkg-link add matchbox-panel ; ipkg-link add matchbox-wm ; ipkg-link add pango ; ipkg-link add pango-module-basic-fc ; ipkg-link add pango-module-basic-x ; ipkg-link add xkbd ; ipkg-link add xstroke
to correct the errors:
# mkdir /media/loop0/packages/etc/gtk-2.0 # ln /media/loop0/packages/etc/gtk-2.0 /etc/gtk-2.0 -s
and then rerun,
# ipkg install -d loop0 gpe-session-scripts
remove gpe-login
# ipkg-link remove gpe-login
# ipkg remove gpe-login
fluxbox
To solve the "Interruptible sleep" I tried installing it to the internal memory,
# ipkg install fluxbox-gpe
mrxvt - more than rxvt,
# ipkg install -d loop0 mrxvt
# ipkg-link add mrxvt
OpenSSH
I'll install openssh for the X11 forwarding,
# ipkg install -d loop0 openssh-ssh
# ipkg-link add openssh-ssh

ROX-filer
this package seems to be problematic - the first time I installed it it cause corruption in the filesystem - after fsck.ext2 /media/card/images/loop0 and reinstalling the package for the Zaurus - not by ssh'ing it was installed okay.
# ipkg install rox-filer -d loop0
# ipkg-link add libxml2 ; ipkg-link add rox-filer ; ipkg-link add shared-mime-info
and to fix the errors rerun,
# ipkg install rox-filer -d loop0
In order for rox-filer to work propely the APP_DIR variable needs to be defined,
# export APP_DIR=/usr/share/rox/
startx.sh
I couldn't find the package that provides the startx script so I created one, which sets the DISPLAY and APP_DIR variables and runs Xserver, Xinit, rox-filer and fluxbox.

X/Qt 2
I'll try Xqt once more,
# ipkg install xqt2 -d loop0
# ipkg-link add xqt2
Runing Xqt failed with segmentation fault, when I changed the QWS_DISPLAY to "Transformed:Rot270:0" variable I managed to start Xqt but with the same problems as before (screen is rotated and doesn't get refreshed).

Wednesday, July 4, 2007

Corrupted

My last escapade was to install X, I managed to install the fluxbox window manager, then I installed the ROX-Filer file manager, and then things started to go wrong, my Zaurus halted couple of times, afterwards the boot process halted and I had to reboot several times before a successful boot. To be specific the boot sequence halted on "Starting the potmap deamon: portmap.". Pressing Ctrl-C resumed the boot sequence and it halted on "Starting OBEX Push deamon: opd." here nothing helped.

So now it looks like reflashing is inevitable...