This is a project by Tasos Varoudis and arch+ech.
Please note: Some parts of this setup will only work, if you exactly duplicate other parts of the setup. For example, if you use the provided ~/.slrnrc for the slrn newsreader, it will only work without further tweaking, if you also install the pico editor. I have tried to sort the setup items in an order that you do not have to jump around. But it may be that a required software package X for software Y is mentioned _behind_ software Y here. So if you have a problem which may be due to a missing package, first go on and install the remaining things, then it may work.
sudo ln -s /hdd3/Documents/bin/* /usr/bin/
cr<define key="Space"> <modifier Shift="On"/> <map key="Space"/> <map_modifier Shift="Off"/> <map_unicode char=" "/> </define>
<modifiers> <!-- enable shift key to toggle --> <define key="Shift" type="Shift" toggle="True"/> <!-- enable fn key to toggle --> <define key="Fn" type="Fn" toggle="True"/> <!-- enable ctrl key to toggle --> <define key="Control" type="Control" toggle="True"/> </modifiers>
in <modifiers>: <!-- define right Japanese key --> <define key="F21" type="Alt"> <release key="F25"/> </define>
ln -s /etc/rc.d/rc.local /etc/rc.d/rc0.d/S99rclocal ln -s /etc/rc.d/rc.local /etc/rc.d/rc1.d/S99rclocal ln -s /etc/rc.d/rc.local /etc/rc.d/rc2.d/S99rclocal ln -s /etc/rc.d/rc.local /etc/rc.d/rc3.d/S99rclocal ln -s /etc/rc.d/rc.local /etc/rc.d/rc4.d/S99rclocal ln -s /etc/rc.d/rc.local /etc/rc.d/rc5.d/S99rclocal
In order to use text files created on other systems (Windows, DOS), it may be necessary to convert these files. The scripts given here can be called from command line with the fileto be converted as the argument, or they can be embedded into the "Send to" menu in Tree!Explorer QT Plus as a command. To do the latter, use "Add command" and enter as the command the script name followed by "%1", e.g. dos2unix %1 As a name I suggest in this case: "FIlter: DOS2UNIX" You can then highlight the file in Tree!Explorer and choose SendTo / Filter: DOS2UNIX and the file will be converted. Some of the filter scripts create backups (if actual content may be modified), others don't.
#!/bin/bash # This script converts CRLF # line breaks to LF-only used in most Linux environments. tr -d '\015' < $1 > dos2unix.tmp &&\ mv $1 dos2unix2.tmp &&\ mv dos2unix.tmp $1 &&\ rm dos2unix2.tmp
#!/bin/bash # This script converts ASCII files created under MS-DOS CP850 # to charset ISO-8859-1 as used in most Linux environments. # Saves a backup of the old file under FILENAME.dos # If .dos file exists, conversion is not done (to avoid # accidental second conversion) # Needs iconv if [ ! -f "$1" ]; then echo "Input file does not exist ($1)" exit 1 fi if [ ! -f "$1.dos" ]; then iconv -c -s -f CP850 -t ISO-8859-1 $1 | tr -d '\015' > iconv.tmp cp $1 $1.dos cp iconv.tmp $1 rm iconv.tmp else echo File has been converted before! fi
#!/bin/bash # This script converts ASCII files using charset ISO-8859-1 # to charset UTF-8. # Saves a backup of the old file under FILENAME.latin1 # If .latin1 file exists, conversion is not done (to avoid # accidental second conversion) # Needs iconv if [ ! -f "$1" ]; then echo "Input file does not exist ($1)" exit 1 fi if [ ! -f "$1.latin1" ]; then iconv -c -s -f ISO-8859-1 -t UTF-8 $1 > iconv.tmp cp $1 $1.latin1 cp iconv.tmp $1 rm iconv.tmp else echo File has been converted before! fi
#! /bin/bash TRY_IP="130.149.4.20" echo Connecting to Internet... qcop "QPE/Network" "connectRequest()" > /dev/null 2>&1 ping -c 1 "$TRY_IP" > /dev/null 2>&1 while [ $? -ne 0 ] do sleep 5 echo waiting for network... ping -c 1 "$TRY_IP" > /dev/null 2>&1 done
This environment only works if al files are installed under /mnt/card/devel So you need an SD card formatted with ext2 file system, or you mount it (loopback) to this location. The latter should work even on a vfat-formatted SD card. I choose and describe the option of installing the files on an ext2 SD card, as this is probably the more robust solution.
#!/bin/bash # This script converts ASCII files created under MS-DOS CP850 # to charset ISO-8859-1 as used in most Linux environments. # Saves a backup of the old file under FILENAME.dos # If .dos file exists, conversion is not done (to avoid # accidental second conversion) # Needs iconv if [ ! -f "$1" ]; then echo "Input file does not exist ($1)" exit 1 fi if [ ! -f "$1.dos" ]; then iconv -c -s -f CP850 -t ISO-8859-1 $1 | tr -d '\015' > iconv.tmp cp $1 $1.dos cp iconv.tmp $1 rm iconv.tmp else echo File has been converted before! fi
#!/bin/bash # This script converts ASCII files using charset ISO-8859-1 # to charset UTF-8. # Saves a backup of the old file under FILENAME.latin1 # If .latin1 file exists, conversion is not done (to avoid # accidental second conversion) # Needs iconv if [ ! -f "$1" ]; then echo "Input file does not exist ($1)" exit 1 fi if [ ! -f "$1.latin1" ]; then iconv -c -s -f ISO-8859-1 -t UTF-8 $1 > iconv.tmp cp $1 $1.latin1 cp iconv.tmp $1 rm iconv.tmp else echo File has been converted before! fi
The reason is: mutt uses the file properties "last access date" and "last modified date" and compares them in order to determine if there is new mail in a mailbox. On a vfat file system there is only one date field in the properties for a file, so the new mail detection of mutt will not work. Another reason is: If you keep your mail files on the hard disk (Microdrive) of an SL-C3x00, mutt will be slower than if the files are on flash memory, such as an SD card. Every cursor movement in mutt, selecting another message in the message list, will cause the microdrive to spin up. This costs time and probably shortens the lifetime of the microdrive. Another one: If you work with email a lot (like I do), using SD instead of mIcrodrive as storage will save power!
mutt supports mailboxes in maildir format (one file per mail, folder structure), and mbox files (one file for an entire mailbox, can also be stored in subdirectories). I have chosen mbox due to the high compatibility with other mail programs and because it was easier to migrate my old HP 200LX Post/LX mailbox files to mbox than to maildir. I have written a simple program POST2MBX for that task.
Sloppily following the directions on http://www.gentoo.de/doc/en/guide-to-mutt.xml or http://www.gentoo.de/doc/de/guide-to-mutt.xml
liapoll pop.isp.com protocol pop3 user "username" password "password" to zaurus
-k keep messages on server -v verbose -a fetch all emails -m forward messages to procmail
MAILDIR=/mnt/card/Mail LOGFILE=/mnt/card/Mail/.procmaillog LOGABSTRACT=no VERBOSE=off FORMAIL=/usr/bin/formail NL=" " #Spam filter :0 * ^Subject:.*(credit|cialis|viagra|sex) $MAILDIR/spam #Mailing list in list folder :0 * ^List-Id:.*hplx-zaurus $MAILDIR/hplx-zaurus #Mailing list in list folder :0 * ^List-Id:.*hplx $MAILDIR/hplx #All other emails into default folder :0 * .* $MAILDIR/default #EOF
# ============== Adapt to your needs: ==================== set from="firstname.lastname@isp.de" #set to your from address set realname="Firstname Lastname" #set to your name # *** Directory and file settings: *** set folder = /mnt/card/Mail set tmpdir = /mnt/card/Mail/.tmp #don't forget to create this first! set record = /mnt/card/Mail/sent #sent mail is saved here (this is an mbox file) set postponed = /mnt/card/Mail/send_postponed set signature = /mnt/card/Mail/.signature #don't forget to create your signature! set editor="pico" #or set vi, vim, emacs... mailboxes =default #set names of your mailboxes in mail folder mailboxes =hplx #(the same ones as the filter targets in .procmailrc) mailboxes =hplx-zaurus #take care about the space in front of the equal sign! mailboxes =dabeta mailboxes =spam #take care these files exist (empty) in "folder" (see below) mailboxes =backlight_preview mailboxes =mutt-users mailboxes =mutt-announce mailboxes =slrn-user subscribe hplx@fred #subscribed to these mailing lists subscribe hplx-zaurus@fred subscribe mutt-users@mutt.org subscribe mutt-announce@mutt.org subscribe dabeta@ subscribe slrn-user@lists.sourceforge.net subscribe backlight@fred # ====== From here do not touch unless you know what you are doing: ======= # set correct mail addresses for mailing lists, use M for m: folder-hook . 'bind index m mail' bind index M mail folder-hook '=mutt-users' 'macro index m "<mail>n<kill-line>mutt-users@mutt.org" folder-hook '=hplx' 'macro index m "<mail>n<kill-line>hplx@fred.eberl.com" folder-hook '=hplx-zaurus' 'macro index m "<mail>n<kill-line>hplx-zaurus@fred.eberl.com" folder-hook '=backlight_preview' 'macro index m "<mail>n<kill-line>backlight@fred.eberl.com" folder-hook '=slrn-user' 'macro index m "<mail>n<kill-line>slrn-user@lists.sourceforge.com" # do not save messages to myself or to mailing lists in main # sent file fcc-hook '~t ^windows_pc@online\.de$' '/dev/null' fcc-hook '~l' '=sent_to_lists' set mime_forward = ask-yes #set sort_browser=date #set implicit_autoview = yes auto_view text/html # use .mailcap for these mime types # *** For SENDING mail: *** set use_from = yes set envelope_from = yes set sendmail="/usr/bin/msmtp-enqueue.sh" #for queued sending (recommended for Zaurus) #needs mstmp-runqueue for actual sending #set sendmail="/usr/bin/msmtp" #here mail is sent immediately from mutt. #only posible if internet connection is active #while hitting "y=send" in mutt #macro generic S ":unset wait_key\n!msmtp-runqueue.sh\r" #run msmtp-runqueue when hitting key S # *** For RECEIVING Mail: *** #macro generic G ":unset wait_key\n!/usr/bin/fetchmail -k -m '/usr/bin/procmail -d %T'\r" #macro index G ":unset wait_key\n!/usr/bin/fetchmail -k -m '/usr/bin/procmail -d %T'\r" #run fetchmail by hitting key G macro generic G ":unset wait_key\n!/usr/bin/muttonline.sh\n" macro index G ":unset wait_key\n!/usr/bin/muttonline.sh\n" # *** Appearance: *** set status_format=" %r %b %f %n Del %d Msgs %m %l %> (%P)" set pager_format="%-10.10i %[!%a %b %d %R]" set date_format="!%H:%M %a %d %b " set index_format="%4C %Z %[%b%d] %-15.15F %s" set folder_format="%2C %t %8s %d %N %f" set pager_context=1 set pager_index_lines=5 #show a mini-index in pager set menu_scroll set pgp_verify_sig=no #dont show pgp in pager set status_on_top #put status line at top set sort=date #sort by message date in index #set allow_8bit #set pager="less" #you can set an alternative pager #set locale=\"de_DE\" #you may set this to your local locale set ascii_chars #use ASCII characters for threading in index #set delete=yes #delete without prompting set include=yes #quote msg in reply set fast_reply=yes #no prompting on reply set beep=no #no noise set markers=no #no + on wrapped lines set confirmappend=no #no prompt for save to =keep #set to_chars=" +TCF" #no L for mail_list set mark_old = no #do not mark unread messages as old when leaving mailbox set charset="us-ascii" #set charset="iso-8859-1" set send_charset="us-ascii:ISO-8859-15:utf-8" save-hook .* =archive #default mbox to (s)ave mail is "=archive" bind pager h display-toggle-weed #toggle headers with h key # simulate the old url menu macro index \cb |urlview\n 'call urlview to extract URLs out of a message' macro pager \cb |urlview\n 'call urlview to extract URLs out of a message' # default list of header fields to weed out when displaying mail #ignore them all and then unignore what you want to see ignore * unignore Date To From: Subject hdr_order Date To From Subject # Including the file where you can store your aliases # format: # fl firstname.lastname@isp.com (Firstname Lastname) source /mnt/card/Mail/.aliases source ~/.muttrc_colors # End of file...but it can go on and on and on....:)
color hdrdefault cyan default color quoted green default color signature cyan default color attachment brightyellow default color status brightgreen blue color tree red default color markers brightred default color tilde blue default color header brightgreen default ^From: color header brightcyan default ^To: color header brightcyan default ^Reply-To: color header brightcyan default ^Cc: color header brightblue default ^Subject: color body brightblue default [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+ color body brightblue default (http|ftp)://[\-\.\,/%~_:?\#a-zA-Z0-9]+ # my own messages color index brightyellow default ~P # new messages color index yellow default ~N # deleted messages color index red default ~D # tagged messages color index black green ~T color indicator black cyan
#!/bin/bash # netconnect script: See Zaurus Productivity Setup by Daniel Hertrich: netconnect.sh echo Sending mail... /usr/bin/msmtp-runqueue.sh echo Fetching new mail... /usr/bin/fetchmail -k -m '/usr/bin/procmail -d %T'
account GMX host mail.gmx.net logfile /mnt/card/Mail/.outgoing_queue/msmtp_log from yourmail@isp.com auth on user username password password protocol smtp
#!/bin/bash ps -x | grep "mutt -y" | grep -v "grep" > /dev/null if [ $? -ne 1 ]; then echo "Mutt is already running!" exit 1 fi export set TERM=linux unset LC_ALL export set LC_CTYPE=../../../hdd3/tmp/de_DE mutt -y
text/html; links -dump -assume-codepage UTF-8 %s; copiousoutput
#!/bin/bash # netconnect script: See Zaurus Productivity Setup by Daniel Hertrich: netconnect.sh slrnpull -d "/hdd3/Documents/News/spool" -h "your.news.server"
#!/bin/bash ps -x | grep "slrn -f" | grep -v "grep" > /dev/null if [ $? -ne 1 ]; then echo "slrn is already running!" exit 1 fi export set NNTPSERVER="your.news.server" slrn -f /hdd3/Documents/News/.jnewsrc
If your news server requires authentication, generate this file and put the login name into the first line, password into the second line.
# field 1: newsgroup name # field 2: how many articles are pulled at most # field 3: articles expore after x days (* for never) # field 4: 0 : pull bodies, 1 : Pull headers only # if a newsgroup lacks values, the default values are used default 300 14 0 de.test 10 7 0 alt.comp.os.unix.linux.misc comp.sys.palmtops
%Onekey-score macro for easy thread watching set macro_directory "/hdd3/Documents/News/macros/" interpret "onekey-score.sl" setkey article OneKeyScore->watch_subthread "^W" setkey article OneKeyScore->ignore_subthread "^K" set scorefile "/hdd3/Documents/News/scorefile"
needs addition to /etc/pcmcia/wlan-ng.conf: card "Ovislink" version "INTERSIL3", "Generic-Flash" # manfid 0x000b, 0x7100 bind "prism2_cs" then restart PCMCIA using /etc/rc.d/init.d/pcmcia restart
see also http://www.users.on.net/~hluc/myZaurus/custom.html#java
#!/bin/bash # This backs up hdd3 leaving out some files and directories which do not have to be # backed up (listed in the nobackup file): tar -X/mnt/card/Backup_Files/nobackup -cvf - /hdd3 \ | gzip > /mnt/card/Backup_Files/hdd3.tgz # This backs up important SD card data to the internal hard drive. Make sure to # avoid redundant backups by elaborate usage of the nobackup file! tar -cvf - /mnt/card/Mail | gzip > /hdd3/Documents/Backup_Files/mail.tgz tar -cvf - /mnt/card/devel/projects \ | gzip > /hdd3/Documents/Backup_Files/devel_projects.tgz
#!/bin/bash cd / gunzip -c /mnt/card/Backup_Files/hdd3.tgz | tar -xvf -
*.swapfile */Install_Files* */Movie_Files* */Music_Files* */pocketworkstation
/home/system/var/spool/mail /home/system/var/spool/mail/zaurus
SSH key exchange so that password is not needed for homepage sync: On client (Zaurus): ssh-keygen -dsa cd ~/.ssh scp id_dsa.pub root@SERVER:~/.ssh (replace SERVER by IP or hostname) On server login as root and: cd ~/.ssh cat id_rsa.pub >> authorized_keys
first, for initial sync from server to Z: mkdir /mnt/card/homepage/ rsync -rv root@192.168.0.111:/srv/www/htdocs/ /mnt/card/homepage/ then, for syncing rsync -rv /mnt/card/homepage/ root@192.168.0.111:/srv/www/htdocs/ ATTENTION: /mnt/card must not be vfat, but ext2...
Put two "root" lines into the file, as these: root=/mnt/card/homepage root=ssh://root@hplx.mine.nu//srv/www/htdocs (self-explanatory: one points to a dir on the zaurus, one to a dir on the server, these two dirs will be synchronized).
site example server ftp.exampleserver.com username joesmith password thisiasecret local /mnt/card/homepage remote /homepages/myhomepage exclude *.bak
#!/bin/bash export SDL_QT_INVERT_ROTATION=1 cd "$1" snes9x -win "$2" exit 0 or if you want to replace the ok/enter key pause with L instead. L becomes the pause and start and ok/enter is null so your game wont be interupted, use the bottom code. #!/bin/bash export SDL_QT_INVERT_ROTATION=1 export S9XKEYS=27,100,99,115,120,97,122,108,32,103,106,117,110,121,98,105,109 cd "$1" snes9x -win "$2" exit 0
#!/bin/bash # This script converts GDB files created on HP 200LX palmtops # to CSV charset UTF-8 which can be imported into Portabase. # file.gdb is converted to file.gdb.csv and an additional # file nwmed file.gdb.struc is generated showing the # structure of the database, so that a matching database # can be prepared in Portabase for later import of the CSV. # Needs iconv, sed, tr and zgdbdump (special version of gdbdump) if [ ! -f "$1" ]; then echo "Input file does not exist ($1)" exit 1 fi zgdbdump -s $1 > tempfile iconv -c -s -f CP850 -t UTF-8 tempfile | tr -d '\015' | sed -e 's/\\r\\n/ /g' > tempfile1 cat tempfile1 | sed -e '1D' > $1.csv cat tempfile1 | sed -e '3,$D' > $1.struc rm tempfile rm tempfile1
############################################################### # bochsrc.txt file for DLX Linux disk image. ############################################################### # how much memory the emulated machine will have megs: 32 # filename of ROM images romimage: file=/hdd3/Documents/emulation/bochs/bios/BIOS-bochs-latest, address=0xf0000 vgaromimage: file=/hdd3/Documents/emulation/bochs/bios/VGABIOS-lgpl-latest # what disk images will be used floppya: 1_44=/hdd3/Documents/emulation/bochs/dos7.img, status=inserted #floppyb: 1_44=floppyb.img, status=inserted # hard disk ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14 ata0-master: type=disk, path="/hdd3/Documents/emulation/bochs/hd10meg.img", cylinders=306, heads=4, spt=17 #ata0-slave: type=cdrom, path="f:\win98.iso", status=inserted # choose the boot disk. boot: floppy # default config interface is textconfig. #config_interface: textconfig #config_interface: wx #display_library: x # other choices: win32 sdl wx carbon amigaos beos macintosh nogui rfb term svga # where do we send log messages? log: bochsout.txt # disable the mouse, since DLX is text only mouse: enabled=0 # enable key mapping, using US layout as default. # # NOTE: In Bochs 1.4, keyboard mapping is only 100% implemented on X windows. # However, the key mapping tables are used in the paste function, so # in the DLX Linux example I'm enabling keyboard_mapping so that paste # will work. Cut&Paste is currently implemented on win32 and X windows only. #keyboard_mapping: enabled=1, map=$BXSHARE/keymaps/x11-pc-us.map #keyboard_mapping: enabled=1, map=$BXSHARE/keymaps/x11-pc-fr.map #keyboard_mapping: enabled=1, map=$BXSHARE/keymaps/x11-pc-de.map #keyboard_mapping: enabled=1, map=$BXSHARE/keymaps/x11-pc-es.map
fsck.ext3 -c -f -v /dev/hda1 fsck.ext3 -c -f -v /dev/hda2 fsck.vfat -f -r -t -v -w /dev/hda3 fsck.minix -r -v -f /dev/ram1
Remove battery Hold D and B key while inserting battery, closing cover and switching battery switch to ON position --> Zaurus boots into emergency linux. Log in as root / no password
See http://www.oesf.org/index.php?title=C3000_Device_Specifics to understand what is happening