Here are notes on

1. various programs I've used, or
2. programs that I haven't used, but which look interesting.

Altho the notes are short, the information therein may have taken me hours to discover. Therefore others might find this useful. My preferred environment is linux and C++, supplemented by commercial tools that are good enough to be worth the hassle of license management etc.

This page describes publicly available SW written by others. For my SW, see my Research page.

1.  Linux

Note: Some things, that are not necessarily intrinsically linux, are in a separate top level section.

1.1  Booting with old grub

1. Grub disk naming when booting
1. Assume you have a laptop with two disks: the original one and a second in a caddy replacing the DVD drive.
2. In the BIOS, you specify the order in which the BIOS is to try booting from them.
3. That is the order that grub uses when numbering disks (hd0), (hd1) etc.
4. Note that the disks' positions on the bus is irrelevant here.
5. If you exclude a disk from the boot order, then grub doesn't give it a number.
6. Later, grub and linux name the disks according to their bus addresses.
7. Up to SuSE 10.1 (approx), including older versions of Knoppix, the main disk is /dev/hda and the caddy disk /dev/sda
8. From SuSE 10.2 on (approx), the main disk is /dev/sda and the caddy disk /dev/sdb.
9. You can use these names later in grub, e.g., in the kernel command.
10. Does /dev/sda correspond to (hd0) or (hd1)? It depends on the BIOS boot order.
11. In the BIOS statup list disk (S1) is the builtin disk, and (PM) is the caddy disk.
12. scsiinfo -s /dev/sda lists the disk's serial number that is printed on the disk itself.
13. If /etc/fstab disagrees with the root= option on the grub kernel command, then the root= option determines what partition is mounted, but /etc/fstab determines what df shows. If they are inconsistent, then df's output will be wrong. (10/19/2007)
2. Grub setup/install weirdness: The command  grub-install /dev/sda  can produce a different result than
    grub
> setup /dev/sda

The former reused an old location for message. (approx; this is from memory). 10/19/2007

1.2  Booting with grub 2

There are many incompatibilities and problems. (Why does linux make official a package that calls itself 'beta' and that lacks much documentation?) Here are some useful pages:

1.3  Linux multimedia incl video

1. If there is no sound when playing an mp3, say with mplayer, then turn off the line jack sense and headphone jack sense in kmix (or krecord).
2. Kmix settings for recording:
These are probably correct.
1. Input » capture must be set. Level irrelevant.
2. Input » microphone maybe set. Level relevant.
3. Switches » mix maybe irrelevant
4. Output » pcm set. Level 1/3.
5. Disable everything else, else feedback loop.
6. OK to mute output. Maybe better.
Another time, this worked:
1. Input » red mic set
2. Input » capture set
3. Switches » mix NOT set. Setting it unsets Input » red mic.
3. Kmix settings to play input sound
1. Output » master set, and reasonable level.
2. Input » green mic set, and reasonable level.
3. Switches » mic boost does that.
4. Nothing else seems to matter.
4. Kmix settings to play audio file
1. Output » master set, and reasonable level.
2. Output » pcm set, and reasonable level.
3. Switches » line jack sense not set.
4. Switches » headphone jack sense not set.
5. Nothing else seems to matter.
5. Other interesting pages
1. http://www.thinkwiki.org/wiki/Problem_with_audio_clipping
2. Gnome-sound-recorder is another recorder.
3. Alsasound can restart things if they are messed up.
4. gnome-sound-properties looks useful.
5. Converting wav to mp3
2. Do: notlame -h in.wav out.mp3
6. Converting realaudio to wav
1. Use mplayer.
2. The realaudio format changes frequently.
3. The current version of realaudio cannot play very old realaudio formats. Mplayer can.
7. Mplayer low quality: The output from mplayer (in linux) seems to be worse quality than that of windows programs.
8. Converting an AVI video to MPEG4 (from SCOREC)
9. http://www.ubuntugeek.com/ubuntu-tip-simple-way-of-making-a-stop-animation.html
10. Video tools from Philippe Dreuw.

1.4  Using an ipod with linux

This is not about installing linux on the ipod.

1.5  MS Office in linux

1. antiword (for reading MS Word) - often all you need. What it omits, like gratuitous images, is often content-free.
2. openoffice - formerly much worse than MS Office, but getting better. However it is not compatible with Office 2007. (12/1/2009).
3. codeweaver's crossover office. This was excellent. However it cannot handle Office 2007 properly. Office will often crash under crossover. (12/1/2009).
4. vmware (excellent)

1.7  Encrypted partitions

Setup

1. cryptsetup create FOO /dev/sdXX
2. mkdir /FOO
/dev/mapper/FOO /FOO ext3 defaults 0 1
FOO /dev/sdXX none none
5. mke2fs -j -L CHOSEN_PARTITION_NAME /dev/mapper/FOO

Explicit mount

1. cryptsetup create FOO /dev/sdXX (if necessary)
2. mount /dev/mapper/FOO /FOO

New (LUKS) way

Setup

1. cryptsetup --verbose --verify-passphrase luksFormat /dev/sdXX
2. cryptsetup luksOpen /dev/sdXX FOO
3. mkdir /FOO
/dev/mapper/FOO /FOO ext3 defaults 0 1
FOO /dev/sdXX none luks,check=ext2,retry=5
6. mke2fs -j -L CHOSEN_PARTITION_NAME /dev/mapper/FOO

Explicit mount and unmount

1. cryptsetup luksOpen /dev/sdXX foo
2. mount /dev/mapper/foo /foo
3. umount /foo
4. cryptsetup luksClose foo

1.8  Linux other

1. Who owns a given open file? fuser -v FILE

1.9  Firefox

1. Why firefox got slower and slower:
1. Noscript and probably other addons seem to have quadratic time performance. They record URLs in a list and apparently linearly search it.
2. The only solution that I've found is to run firefox inside vmware and regularly restore the VM. Even deleting files that Firefox wrote seems not to work.
3. Firefox 3 is faster, but didn't print, for the following reason: The firefox 3 designers decided to use a feature of some other SW that had never been used before. It didn't work. Firefox said that's not their problem that the other SW failed. Meanwhile, users like me, who just wanted to get our work done, watched this temper tantrum and started thinking about using Windows.
2. Calling an existing firefox from the command line:
firefox yahoo.com
   firefox -new-tab "file:///tmp"


3.  Converting a VM from VMWare to KVM

This doesn't yet work for me.

4.  Linux mail user agents - comparisons, advantages and problems

This is based on personal experience. It contains detailed info that I've not seen in other reviews, and also not seen in the documentation.

This emphasizes the negative because a package's limitations are often more important than its advantages in deciding whether to use it. Also, the limitations are rarely mentioned in the documentation.

4.1  Kmail

1. The whole KDE project is designed by enthusiasts for enthusiasts. It adds whatever new features the designers consider fun. Users are expected to help debug it. KDE is not intended to be a turnkey system for people who just want something that works w/o thinking about it.
2. The kmail documentation is several years out of date. If that's a problem for you, then fix it yourself. The KDE developers have more fun things to do than write documentation.
3. Can lose mail when internal db gets corrupted. Symptom: folder shows a message with no subject or body.
4. Cannot search mail by date. It is impossible to search only within all mail from the last week. The lack of searching by date has been listed in the features request list for several years, but nothing has happened. This is still true of the current 1.9.51 version, as of 7/18/2008.
5. Searching large folders within kmail is so slow as to be useless. It is much slower than searching the directory directly.
6. Kmail has very specific requirements for imap, and will not talk to servers that don't have the same hi standards.
7. Kmail wouldn't talk to gmail, the last time I tried. This may work now.

Good

1. The addressbook is sophisticated. It is a complete contact program, useful for addresses, phone numbers, etc.
2. Retrieving messages can be stopped by the user. This is useful if a large imap folder is being scanned.

4.2  Claws-mail

1. Retrieving mail from several mailboxes is single threaded. Only one mailbox is checked at a time.
2. Retrieving from a large imap folder cannot be stopped, short of killing claws-mail.
3. The addressbook is minimal, lacking features in competing addressbooks. E.g., it is useless for storing phone numbers.
4. This is a stand-alone mail program, not a component of a PIM. There is no integrated calendar.

Good

1. claws-mail allows mail to be sorted depending on the specific address book containing the sender or recipient. This really convenient feature appears unique to claws-mail.
2. You can search and filter on arbitrary headers.
3. You can assign colors to messages and then search by color.
4. You can watch the connection handshaking.

4.3  Evolution

1. You cannot search by arbitrary headers.
2. If a header is duplicated, only the first occurrence is used, unless you write a regex. This makes it very hard to search for mail that flowed thru a specific relay.
3. You can filter on whether the sender is in any addressbook, but not whether he is in a specific addressbook.
4. Internal database inconsistencies can arise:
5. Cannot usefully read an IMAP server from multiple machines, which is the point of IMAP. Specifically, processing a message on one machine is not always seen on others.

Good

1. You can check for supported types of authentication.

4.4  Thunderbird

Good

1. http://nic-nac-project.de/~kaosmos/
2. Importing from evolution:
1. http://maketecheasier.com/how-to-migrate-from-evolution-to-thunderbird-in-ubuntu-intrepid/2008/12/04
2. http://patrick.wagstrom.net/weblog/2007/01/19/migrating-from-evolution-to-thunderbird/
4. http://www.stuermer.ch/blog/the-end-of-evolution-and-how-to-migrate-on-thunderbird.html
5. http://blog.agdunn.net/?p=225
7. Importing problems:
1. All messages marked 'read' and tags are lost.
2. Recommended calendar program, lightening, is version <1.0 and its development team lacks resources.
3. Mailing lists don't import with addresses.
4. Addressbook fields are not completely compatible.

1. It is not possible to to useful spam filtering, or to call out to an external spam program, in Thunderbird. Thunderbird assumes that messages were already tested for spam by the mail server, which added a header with its findings. Thunderbird lets you examine headers and filter the mail. However this filtering sometimes fails. Thunderbird does have a Bayesian spam tester, but it's pretty bad.
2. Cannot search the bodies of IMAP mail, even if the bodies have been downloaded.
3. Cannot automatically filter more than one IMAP folder.

4.5  Gmail

1. All your mail is conveniently centralized, available for search warrants, legal or illegal fishing expeditions, disk crashes, and security failures.

4.6  Mulberry

Good

1. Extremely powerful
2. The best documentation I've ever seen for a mailer.

1. A one-man operation, hasn't been updated since 2007.

5.  Zsh

done


1. pdfcrop

13.6  Combine a directory of PDF files into one file

 pdftk image*pdf cat output onebigfile.pdf


1. extract an info file: pdftk file.pdf dump_data > info
2. edit info
3. pdftk file.pdf update_info info output file2.pdf

13.8  PDF to RTF (good for MS Word)

PDF to MS Word

http://www.hellopdf.com/ - To try.

13.10  Complete (fill in) a PDF form

2. http://www.pdfescape.com/pdf/open/
3. acroread now works in linux.

13.11  Linux PDF w embedded multimedia

The following links are interesting, but I haven't checked most of them.

14.  Talk (Presentation) Slide Tools

1. Summaries
1. Screen Presentation Tools by Michael Wiedmann
2. LaTeX beamer is newer than prosper is newer than seminar. Use beamer (for now).
1. http://latex-beamer.sourceforge.net/
2. http://www-i6.informatik.rwth-aachen.de/~dreuw/latexbeamerposter.php
3. http://www.ctan.org/tex-archive/macros/latex/contrib/powerdot/
4. http://sourceforge.net/projects/prosper/
5. http://ctan.org/tex-archive/macros/latex/contrib/movie15/ - incs videos
6. powerdot - replaces ha-prosper replaces prosper, but is beta.
7. pdfslide
3. Html: These are at the mercy of the browser. Formerly, all browsers (firefox, explorer, konqueror, opera) were surprising bad and mutually incompatible. I used to say, avoid, However, things may now be improving.
4. Misc
1. http://member.wide.ad.jp/wg/mgp/ - MagicPoint - looks interesting
2. http://gmpg.org/xfn/and/
3. http://www-user.uni-bremen.de/~skupin/pdfanim/ - incorporates files of frames - wait for more mature version
4. http://impressive.sourceforge.net/manual.php - looks good, does PDF
5. http://www.swftools.org/

15.  Other Words

15.2  Speak words

1. http://spokentext.net/

16.  Geo

16.3  Rendering terrain with povray

1. povray-terrain-1.tz shows how to render images of terrain in povray.
2. povray-terrain-2.tz has more test data and the corresponding images.

16.4  GPS, specifically Garmin 60csx

1. Track vs Active Track
SFAIK, the only difference is that the active track has the time of each point. That is deleted when the active track is saved.
2. Tracks saved on data card
gpx files saved to the data card do have the times. There is one file per day. The GPS doesn't list them all (?!). They don't show on the GPS display. Get them by putting GPS in USB mode, mounting it, then copying.
Ref: http://freegeographytools.com/2007/garmin-microsd-card-tricks
3. gpsbabel - great program for processing tracks in linux

17.  VMWare - shrink pre-allocated disk on windows client

Preallocated disks are faster and don't get larger with more writes (they start large) but you have to pick the size at the start. What if you later want to shrink (truncate) it?

1. Create a new preallocated disk file of the desired size on the host.
2. Install partition magic on the client
3. On the client, copy and resize the partition from the old disk to the new.
4. Halt the VM.
5. In the VM settings, delete the old disk, and update the IDE bus address for the new disk from 0:1 to 0:0.
6. Reboot; you're done (with luck).

19.  Web fonts

1. http://typekit.com/ Commercial fonts with nice free preview.
2. http://www.typetester.org/ lets you see a demo paragraph in 3 user-settable fonts, side by side.
3. http://textpattern.com/ GPL CMS (to explore)
4. http://articles.sitepoint.com/article/anatomy-web-fonts - good tutorial with lots of links.
5. http://www.upsdell.com/BrowserNews/res_fonts.htm - lots of info
6. http://web.mit.edu/jmorzins/www/fonts.html - compares many fonts, written in 2006
7. http://www.goodwebfonts.com/ describes several good free fonts