ZipIt Adam Software

Jump to: navigation, search


I haven't had a lot of time for Zipit development lately, but I've just posted my ROM images to my website, in case anybody wants to play around with them.

Included are the "elinks" browser (no SSL yet, although I am working on it), ssh/sshd, some battery monitoring tools, the "dialog" tool for writing text-based menu-driven scripts, and various other utilities I've found useful. These are all built using shared uclibc libraries.

The ROM images are set up with my 'mtd' r/w flash modules, which allow you to customize the install without the danger of a full re-flash.

There are 3 flash partitions, with the first serving as a read-only "rescue" image. The other two partitions are user-writeable, which should make it easier to compile/install your own code. The utilities on the rescue partition should be sufficient to recover from any foul-up of the other two.

Rough installation notes are included in the 'readme.txt' file. More detailed instructions can be found in the HOWTO at ZipItAdamHOWTO. I will happily accept additions or corrections.

WARNING: while I haven't had any problems with this s/w load over the past several months, and have re-flashed countless times, you could conceivably turn your Zipit into a doorstop if something goes wrong. Either have the serial port mod in place, or be prepared to install it after something goes wrong.

You should also be somewhat familiar with Unix/Linux before attempting this upgrade, or be quite brave :-), as there is no hand-holding provided.


The files are at:

First read the 'readme.txt' file before downloading!

-- Adam

Here's a rough listing of what's in the root/initrd filesystem, and what's included under /opt.

Note that most of the hard work getting this together was done by Ken/cynfab and ZipItPet - all I've done is write a few missing apps, and compile a few others.

I'll package up source code and buildroot configs at some point, but please email me if you'd like it sooner.

-- Adam root initrd ( / ): 760KB

* wireless-tools: all
busybox: bunzip2 gunzip gzip tar basename cal cat chgrp chmod chown chroot cmp cp 
cut date dd df du echo env expr false head ln ls md5sum mkdir mknod mv printf pwd rm
rmdir sleep sort stty sync tail tee test touch tr true tty uname uniq usleep wc yes 
chvt clear deallocvt dumpkmap loadfont loadkmap openvt reset setkeycodes sed vi find 
grep xargs init halt poweroff reboot getty login passwd su vlock crond crontab time 
insmod lsmod rmmod arping hostname ifconfig nc nslookup ping route telnet telnetd 
traceroute wget udhcpc free kill ps top uptime sysctl ash syslogd klogd logger dmesg
freeramdisk losetup more pivot_root rdate mount nfsmount umount
uClibc-0.9.27: all shared libraries (no locale)
Other utilities:
*/bin/chgscancodes: Change BURN3 kernel's scan codes to support addt'l keys (major 
change is that big "Z" key switches VT's)
*/bin/batlvl: Estimate current battery level
*/bin/lid: Detect whether lid-closed switch is pressed down
*/bin/chglcdmul: Change BURN3 kernel's LCD palate to be darker
*/bin/lcdpal: (Same thing, but updates hardware directly, and changes are lost when 
 VT is switched.)
*/bin/mkcramfs: Makes a cramfs; useful for rebuilding /mtdpref on the fly.
*/etc/init.d/S00emergterm: If 'lid' button pressed during startup, drop to shell 
 before mounting /opt and /mtdpref
*/etc/init.d/S10mtd_rwdev: Load 'mtd' flash block device modules
*/etc/init.d/S11cramfs: Load 'cramfs' drivers
*/etc/init.d/S12mtdpref: Mount /mtdpref, copy files on top of /
*/etc/init.d/S30i2c: Load i2c drivers
*/etc/init.d/S40networkdev: Set up network
*/etc/init.d/S70keymap: Install new keymap
*/etc/init.d/S80chglcdmul: Install new LCD palate
*/usr/share/misc/empty.ext2.4MB.img.gz: empty 'ext2' images, smaller
*/usr/share/misc/empty.ext2.64k.img.gz: than including 'mke2fs'
*/mtdpref: Mount point for 64KB partition, see /etc/init.d
user initrd ( /opt ): 618KB
*/opt/sbin/dropbear: includes ssh, dbclient, server
*/opt/bin/elinks: The text mode browser
*/opt/bin/dialog: A text-mode menu-driven interface tool
*/opt/lib/ needed for elinks
sample mtdpref( /mtdpref ): 64KB
*/mtdpref/etc/init.d/S45wireless: scan for local SSID, and set up IP address based 
 on location
*/mtdpref/etc/init.d/S50opt: mount /opt