Differences between revisions 19 and 21 (spanning 2 versions)
Revision 19 as of 2005-03-29 18:50:11
Size: 8764
Editor: anonymous
Comment:
Revision 21 as of 2005-03-29 18:53:14
Size: 8745
Editor: anonymous
Comment:
Deletions are marked like this. Additions are marked like this.
Line 105: Line 105:
run: ln -s /dev/touchscreen/0 /dev/h3600_ts

run:
ln -s /dev/touchscreen/0raw /dev/h3600_tsraw
Run the following commands to help it find the touch screen:
{{{
    
ln -s /dev/touchscreen/0 /dev/h3600_ts
     ln -s /dev/touchscreen/0raw /dev/h3600_tsraw
}}}
Line 111: Line 113:
      modifying fbvnc 127.0.0.1 into fbvnc -hw       change fbvnc 127.0.0.1 to fbvnc -hw ipaq 127.0.0.1 near the end of the script
      change fbvnc "$@" to fbvnc -hw ipaq "$@" near the end of the script
Line 113: Line 116:
ipaq 127.0.0.1 near the end of the script{{{
      modifying fbvnc "$@" into fbvnc
}}}
-hw ipaq "$@" near the end of the script

PocketWorkstation runs in a chroot environment on a storage card, using the vendor's preinstalled native Linux system for most hardware access. GUI is based on Xf4vnc and the fbvnc framebuffer viewer.

See also DebianOnHandhelds for other related projects.

Runs on Sharp Zaurus handhelds: SL-5x00, SL-6000, and the clamshell models SL-C7x0, SL-C8x0.

http://pocketworkstation.org/ http://pocketworkstation.org/fbvnc.html

For general Debian issues on handheld computers, please use the debian-handheld mailing list. But please make sure to check out the "known bugs" section below first.

For discussions, please use the (low volume) http://lists.debian.org/debian-handheld/ mailing list.

This page is intended to be a community-editable forum to collect documentation, install instructions, tips and tricks.

Installation

NOTE: I haven't had time recently to update the installation software or instructions. Please take a look at these user-contributed instructions:

Get the most current zaurus-debian-*.tgz archive from the download section. The '-base-' package contains a minimal environment and needs 95 MB when unpacked, the '-big-' package contains additional software and needs 195 MB. You only need one of them, the contents of the 'base' package are completely contained in the 'big' one. See below for a full content listing. Alternatively, you can use chroot-debian-bootstrap to create a customized package yourself from the Debian FTP servers, but this is a lot more complicated and time-consuming.

If you can plug the target SD/MMC/CF card into a Linux computer (i.e. using a SD-to-PCMCIA adapter on a notebook, or a USB card writer), it's fastest to unpack it there. Otherwise transfer the archive to the Zaurus.

Make sure that the card is mounted using ext2 on the Zaurus (automatic mounting sometimes gets this wrong - edit /etc/fstab and use 'ext2' instead of 'auto' for the filesystem type).

Important: ensure that the filesystem is mounted with device files enabled - current ?OpenZaurus versions mount with the 'nodev' option which completely breaks the chroot environment. See 'known bugs' below.

Unpack the archive:

  cd /mnt/card    # SD/MMC card, Sharp or OpenZaurus ROM
  cd /home        # SD/MMC card, Crow ROM
  cd /mnt/cf      # CompactFlash or Microdrive
  # download and decompress GNU tar, busybox tar is broken in some
  # versions and messes up the archive contents
  wget http://pocketworkstation.org/files/gnu-tar.gz
  gunzip gnu-tar.gz
  # create the destination directory
  mkdir debroot
  # Unpack if you haven't done so already.
  # Don't forget the 'p' switch, or you'll get wrong permissions.
  ./gnu-tar -C debroot -xvzpf zaurus-debian-*.tgz
  # Configure and integrate into native system
  ./debroot/INSTALL.d/postinst.sh

Please read the fbvnc documentation for more information about the VNC-based GUI.

You can edit the file /etc/debroot.conf to control the integration into the native system and startup options. If you don't select automatic startup, just run the following commands on the text console to launch it manually:

  Vncserver   # it backgrounds, hit ENTER to get the prompt back
  Fbvnc

To get out of the Debian environment, use

  <Fn>-<Shift>-<Q> on the virtual keyboard, 

or

  ["Action"]-<Shift>-<Q> on the real keyboard. 

This quits fbvnc, which will return you to the command line, but Xvnc will keep running in the background. Kill the 'Xvnc' process to shut down all X11 applications.

Tips and Tricks

  • The installation is configured with a default time zone. Run 'tzconfig' to choose the correct time zone for your location.
  • If you only have 32 MB RAM or less available, be careful not to run out of memory. You can put swap space on a microdrive, but swapping to flash devices is so slow that you might as well let the system crash instead.


Platform specific notes and gotchas

Sharp SL-5000D, SL-5500

These should work without special tweaking.

Sharp SL-5600, SL-6000

See the SL-C7x0 section, most of this applies for these as well.

Sharp SL-C7x0, SL-C8x0

The SL-C7x0/8x0 support is still somewhat rough, and needs some manual tweaking:

  • edit /etc/sdcontrol, uncomment and set FSTYPE="-t ext2"
  • The ["Action"] button is mapped to the <Fn> key. The Kana/Hira key (to the right of the <Fn> key) acts as <Control>, and the Kanji key to the right of that one is <Alt>.

  • If you're running the original Sharp ROM with no Qtopia shutdown function or console command line mode, you can't run the Debian GUI directly. However, you can reconfigure it to show a prompt at boot, so that you can choose between Qtopia and a text console. Run the following from a terminal window:
    • echo a > /home/sharp/etc/launch.default killall qpe

  • Run 'killall Xvnc' to kill all X11 applications and get back to the prompt, from where you can restart qpe.
  • The clock keeps losing the current time and switching back to 1970 if you're not running the Qtopia GUI. Use date to set the software clock, then run sethwclock to copy the current time to the hardware clock.

Compaq/HP iPAQ

Some brief notes on getting things working on an ["iPAQ"] from Alessandro Miele, more details needed...

Run the following commands to help it find the touch screen:

     ln -s /dev/touchscreen/0 /dev/h3600_ts
     ln -s /dev/touchscreen/0raw /dev/h3600_tsraw

Edit the Fbvnc script:

      change   fbvnc 127.0.0.1  to  fbvnc -hw ipaq 127.0.0.1  near the end of the script
      change   fbvnc "$@"       to  fbvnc -hw ipaq "$@"       near the end of the script

To suspend, run "cru apm --suspend", to toggle the light run "cru bl 1 1 0" or "cru bl 1 0 0" - these need to go into the "zsuspend" and "bl" shell scripts. The bl command is not included in the familiar 0.8 distro, but is present in the package http://familiar.handhelds.org/releases/v0.7/base/armv4l/h3600-utils_1.2.1_arm.ipk

Known Bugs

Current OZ versions mount the SD/MMC and CF cards in a secure mode with device files disabled, which unfortunately completely breaks the chroot environment. A symptom is that you get weird messages about devices such as /dev/null not working, and you may just get a blank X11 screen without any user interface, or terminal windows which open and close again immediately.

As a workaround, run the following from the command line:

        mount /mnt/card -o remount,dev,suid,exec

NOTE: This doesn't seem to valid for oz 3.5.2 pocket workstation worked out of the box for it.


On some machines, Opie and/or Qtopia crash when you launch it after previously running the Debian environment. This appears to be a power management conflict - try running /etc/rc.d/init.d/zdebian stop on the text console before launching Opie/Qtopia, and let me know if that makes a difference. An alternative on newer ["ROMs"] seems to be using the standard apm tool and not using zapmd at all.


On my Zaurus SL-5000D, operations that write lots of data to the MMC card often crash the Zaurus - it's still pingable, but the filesystem is dead. A typical symptom is "apt-get install" getting stuck at the "Getting package information..." stage. I think this is bug in the MMC/SD driver, everything works fine on a microdrive.

Mounting the SD/MMC card in synchronous write mode makes things very slow, but helps prevent these crashes:

        mount /dev/mmcda1 -o remount,sync,noatime

Don Leuenberger reported that running a background sync loop during the installation also helps prevent crashes:

        while true; do sync; sleep 1; done &


Since writes to flash memory are very slow, you'll need to be patient for many operations that would finish quickly on regular disk drives. apt and dpkg should be fixed so that they don't constantly write multiple identical copies of the package information files in various locations.


?OpenZaurus has a fairly weird startup sequence - Opie starts in the foreground, and the other startup scripts don't run until after Opie is shut down.


On the Compaq ["iPAQ"], Power and light management don't work out of the box, I haven't had the time to make the installer handle it yet. Send me mail if you care about this, and I'll fix it.


Oz 3.5.2 and pocket workstation seem to work well. To play mp3's install xmms and xmms-mad.