The Caboteria / Tech Web / MiscNotes (14 Dec 2016, TobyCabot)

font config note that I should follow up on: looks very interesting. It's a framework for building intelligent agents. also looks more fully-developed.

Backspace and delete seem to give me problems. The config that seems to work for me (using Gnome terminal) is to select the "Swap Delete/Backspace" option and don't select the "Delete generates DEL/^H" option.

I had a strange problem with Java - JBoss could start up but not shut down. It hung after shutting down the mail service but before any JMX RMI messages. Turns out that I had moved my machine and the network config was FUBAR: my hostname's entry in /etc/hosts didn't match any of the IP's that I had configured. D'oh!


RFC2945 - Secure Remote Password protocol

At some point when I get a tape drive I should check out AMANDA:


It took a little bit of fiddling to get my Gateway computer's MS IntelliMouse 1.2A to work with both GPM and X, but in the end the config is pretty straightforward. /etc/gpmdata looks like:


which ends up running gpm like so: /usr/sbin/gpm -m /dev/psaux -t imps2 -Rraw .

X's XF86Config "Pointer" section looks like:

Section "Pointer"
   Protocol        "IMPS/2"
   Device          "/dev/gpmdata"
   Buttons         3

NOTE: I don't have the mouse wheel working (yet).

The pass-through device for GPM is /dev/gpmdata.

The Tulip network driver 0.92 on my Gateway box would stop working, usually when I was sending a large block of data. It would put this in the log:

Jun  4 19:30:29 tobypc kernel: eth0: Transmit timed out, status fc664010, CSR12 00000000, resetting...
Jun  4 19:31:04 tobypc last message repeated 7 times

Upgrading to Donald Becker's latest driver (version 0.92t) seems to have fixed things.

Global Search and Replace

I end up re-implementing this once every couple of years, so here's what I did last time:


# run sed on a file in place.
# first arg is filename, second arg is sed script

if [ -f "$1" ]; then
        cp "$1" "$1.bak"
        sed --expression="$2" "$1.bak" > "$1"

Then use find to run that script:

$ find . -type f -exec grep -q INDENTIFIER {} \; -exec gsed {} "s/INDENTIFIER/IDENTIFIER/g" \;

The -exec grep ensures that the script only runs on files that it needs to modify.


Debian GNU/Linux uses apache suEXEC by default, which means that cgi scripts in user's home directories will run as that user rather than the webserver user. suEXEC is very picky (which it should be) about things like file and directory permissions, but it emits really crappy diagnostics. If you get messages in the apache error.log about "premature end of script headers" when you run a cgi script it's worth it to look in the suexec.log to see if there's something more descriptive.

X Windows Fonts

I had to enable type1 fonts in order to get Abiword to work, but then fonts in other programs started to look like shit. It turns out that you need to make sure that the type1 fonts are loaded last (i.e. the FontPath     "/usr/X11R6/lib/X11/fonts/Type1/" line in /etc/X11/XF86Config-4 should be after all of the other FontPath entries).


I did some work with a MS deployment environment once. While the project was fun the platform was a PITA, but if I did another I might want to check out the Tamber Project which looks like the equivalent of phplib for ASP. On the other hand, Arrowhead aims to make ASP code run on Java platforms.


Windows is annying, but with Cygwin it looks enough like unix that I don't get an itchy rash when I use it. is a nice little tool that can fix some annoying shortcomings such as lack of tab completion in cmd.exe.


The computer for the 1%. The most annoying thing about macs is the keyboard - if you're used to a PC keyboard the "mac key" will drive you nuts. - allows you to make the keyboard shortcuts more PC-like.

Dynamic DNS

run from ~/.ipcheck:

tobyc@phoenix:~/.ipcheck$ python ~/bin/ -l -8 {router_pw} -c tcabot {easydns_pw}

you can force an update using -f.

All of this is moot, though, because fscking RCN blocks incoming ports 25 and 80 for their dynamic IP customers. You need to pay $20/mo for a "static" IP to get those ports unblocked.

ALSA Problem

I had a problem where sound just stopped working one day. This is odd since this sort of thing rarely happens in GNU/Linux; my experience has been that it's hard to get things configured but once you do it's solid). I'm not sure how, but it looks as if the sound chips got into some strange configuration, and then that configuration gets saved and restored when you shut down and come back up. The saved state is in a file in /var/lib/alsa so I deleted the file, rebooted, and things worked OK.


I don't see the need for a site logo, but on the other hand my error logs were getting filled with requests for favicon.ico so I made a cheezy one. In the gimp, crop to 16x16, save as .ppm, it will ask you if you want to export, then raw or ascii (choose ascii). Then

$ ppmtowinicon favicon.ppm > $WEBHOME/favicon.ico


Want to add a "gnu only" help wanted query page.

Project located at:

help wanted pages are in frontend/php/people. index.php is probably what we care about. It calls utils_get_content() which (apparently) gets the data from the database. It's defined in frontend/php/include/utils.php.


I had a problem that caused mutt to use strange characters to indicate message threads:


Turns out that newer Debian installs have UTF-8 enabled using the /etc/default/locale file whereas older installs don't. I set up my server using the etch-vintage installer whereas my workstations were installed years ago and have been incrementally updated since then. To fix the problem I just needed to set up a /etc/default/locale file for my workstations (the contents are just LANG=en_US.UTF-8). It appears that Fedora core 4 (and probably newer) also set their default locale to en_US.UTF-8.

In Fedora 25 the command is "sudo localectl set-locale LANG=en_US.utf8".

GNUCash Balance Column Width

I had a "champagne problem" where the balance column in GNUCash was too narrow and I couldn't figure out how to make it wider. It turns out that there's no user interface gesture to do so, so you have to change a configuration parameter in a settings editor:

Kindle Mass Delete

It's a drag having to delete old Instapaper articles from your kindle library one at a time, especially since Amazon's lame ajaxy implementation slows the process down. is a forum discussion that includes a bookmarklet that will bulk-delete all of the items on the page. Note: you need to be on the "Personal Documents" page for it to work.

Topic attachments
I Attachment Action Size Date Who Comment
PNGpng Screenshot.png manage 87.4 K 28 Feb 2007 - 07:46 TobyCabot screenshot of mutt with a broken locale setting
Edit | Attach | Print version | History: r26 < r25 < r24 < r23 < r22 | Backlinks | Raw View | Raw edit | More topic actions
Copyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding The Caboteria? Send feedback