< | >

Hacker's Diary

A rough account of what I did with Emacs recently.

September 30
Took a half-day from the office in order to go home, pack, and fly to Stockholm. On the plane, managed to lose a few files and get irritated by a persistent X/APM crash. GAH. Also found and fixed a bug in the APM monitor toy.

Going by the BBDB's original criterion of "can't tie your shoelaces without it", both my linkfarm and diary hacks are damned insidious.

September 29
Set up LTmodem once more (I keep forgetting to do this every time I upgrade my kernel) and was both amused and pleased to discover I can dial analogue numbers successfully through the ISDN box. I wasn't sure that that was possible, given the problems I've had with dialing through digital phone exchanges in offices and hotels. Anyway. The reason for this ensuring of modem operation is that I'm off to Sweden tomorrow for up to two weeks, depending on how the project goes. So I want to make sure I've got plenty options open to me for getting online. Next stop: the free ISP list for a free Swedish ISP... hmm, not so good. Especially since my Swedish amounts to being able to say "Thanks".

September 28
I've come to realise that a CD burner is one of those things that you have absolutely no use for until you buy one. Then EVERYTHING has to be burnt to CD.

Of course, I still feel reluctant about putting a mere 81MB on a 650MB disk. Hmm. Wonder how well Linux copes with the concept of "rewritable"?

Installed a new version of the W3C validator. Gerald writes some pretty ghastly Perl... Needless to say, I broke everything. Now I have to glue all these pieces back together somehow.

Hurgh. Seems like my fairly simple front page is enough to give Netscape 4.79 the heebie jeebies. At the other end of the scale, I'm looking at some of the stuff that's possible with CSS when you have a browser that can actually cope with it, and, well, it's giving me the heebie jeebies.

Went back hacking at Intermezzo again, and got it working this time. It's complicated in a few ways: So, in order to make this stuff work, you'll first need to reconfigure the kernel sources; copy the appropriate file from /usr/src/linux-2.4/configs to /usr/src/linux-2.4/.config, edit the Makefile and remove the word "custom" from the version, and do make oldconfig dep. Then go to the Intermezzo source directory and do ./configure --with-linuxdir=/usr/src/linux-2.4, followed by make and make install. Now you've got all the kernel bits; the next step is to use mkizofs to create a filesystem on a spare drive somewhere: mkizofs -j -r filesetname /dev/hdwhatever. Then mount it: mount -t intermezzo /dev/hdwhatever /wherever. Then create /etc/sysconfig/intersync, containing one line: CACHE=/wherever, and do service intersync start. At this point, your server is working. Hopefully.

To get the client working, you'll need to do all the kernel nonsense and the mkizofs stuff again; it's possible to make this work on an existing filesystem, but it looks nontrivial and I don't want to make things more complicated than necessary just yet. The client gets the same setup as above, except that the /etc/sysconfig/intersync file should contain a second line: CLIENT_OPTS=--server="servername". Once you start the intersync process, you should be able to create files on the client and see them appear on the server, and vice versa.

September 27
(early hours of) Finally got the kernel built and not crashing; I'll leave it build new RPMs overnight and hand 'em out in the office in the morning (we have several of these laptops). Hurrah! Note, enabling DMA on my own laptop at least boosts disk performance from 6.7MB/sec to just over 20MB/sec, so it's not like I'm merely bumming a few cycles.

Whoopsy. Gonzo appears to have hung up rather heavily. Oh well.

Bwahah. I made NTK again, this time for a tshirt suggestion that I made AGES ago.

Cleaned up a few more pages. If you're not running a browser that understands HTML 4.01 with CSS, you're probably doomed. Just upgrade already.

Also tweaked the cleanup.pl script to use RPM::Header and Getopt::Long. It's a bit more sane now.

September 26
Tracked down a patch for the problem that stops my work laptop from enabling DMA on the hard drive. It's an Alan Cox kernel patch, though. I'd have preferred something a little smaller...

Oh. That was scary. Laptop wasn't running its fan. Shut down pretty hard - as you might expect. I'm guessing the non-running fan is something to do with me using ACPI instead of APM. Annoyingly, this happened just as I was hacking on the above.

Argh. There's definitely some sort of irritating loop in Mozilla (still) whereby it sits there allocating memory and not letting go. Can't get at it from the UI, can't do anything except kill it off. Sorry, hope you weren't (for example) viewing a half-dozen tabs that you'd not bookmarked.

It's also kinda irritating that it doesn't remember your place in the folder view unless you've actually viewed a message. Switch folder, switch back, and the scrollbar's reset.

Finally built a patched kernel, only to have it explode all over the place. Oops.

September 25
Hacked a little on my HTML compliance convertor. I need to do a little more reading on CSS to find out how to replace a few of the silly things I've done with, for example, font tags.

September 24
Hooboy. Red Hat Cluster Manager is, to put it mildly, bleedin' rapid. Once I'd figured out what I was screwing up (can't go frobbing the partition table while you're holding open partitions on the device), I got the shared storage up and running, quorum, mobile IP, mobile NFS. Mad stuff. Kill one server, watch the client blip slightly and then continue as the second server picks up the load.

For those watching from Heartbeat land, this kicks Heartbeat into a huddled ball in the corner, and it's still free. Download the clumanager SRPM from Red Hat's site and build away.

You know what's really irritating with Mozilla right now? mozilla ./index.html doesn't work. That's pretty basic operation right there. How hard can it be? But that's okay, I've got links...

Added Getopt support to the linkfarm Perl script, and added a lookup command to it.

September 23
Aigh. I did it again. rm -rf into a directory with other crap NFS-mounted on it. Again, no major casualties other than the script I've already written twice to build a Red Hat install. Probably nuked a few RPMs as well. I'm supposed to be smarter than this.

Fun and games continue with RHAS: turns out that my modutils were somehow screwed such that insmod.static was compiled with the core-dump-on-exec flag. Didn't even know Linux had one of those...

I'm not just a computer hacker, you know:

For those of you who think clean laundry is something you get in exchange for dirty laundry and money, this is a washing machine. It's a pretty crap one, but it does the job. Well, it was doing the job, then it stopped, and now I've figured out why it stopped so it can get back to doing the job again.

September 22
Went back over the Gronk hacks to clean up one outstanding feature and clean up the changes so I can get a good diff. Which any kernel hacker will tell you is the first step to getting your patches accepted.

After that there's cajoling, bribery, who you know, and out-and-out threats, of course.

Guh. Two of the niggling Gronk bugs that I'd sorted out got lost in the cleanup, and I'm not sure why. Dammit.

Hmm. control-center does, in fact, build cleanly from SRPM if you've got a proper environment (as created with the abusive rpm command below).

Finally wrote the elisp side of the new linkfarm code which cuts the parse time down to practically zero, as the linkfarm is now fed to Emacs as a sexp. Now I gotta figure out how to make the load time faster... I also found a bug in it where it'd collect too much text for the link, which in turn led me to unclosed tags in two of my pages.

September 21
Found out what was wrong with the Red Hat disks - a stuffed-up comps file. I've now hacked a little Python (ick) to verify the file's integrity wrt the available packages. And I know a little more about Red Hat's installer. And I'm just a little more twisted as a result.

rpm --root /mnt/enterprise -Uvh *.rpm
Surgeon General indicates that this may be harmful to your diskspace.

This is so I can rebuild some packages, mind. The Red Hat install builder gets upset if you don't have i386 libs. Even if you do have i686 libs. Whoops. I'm building a nice stack of coasters here.

Bought some bits in PC World to bring to life the motherboard that Ralph gave me recently. Bought the wrong type of CPU fan (socket A instead of socket 462 - who names these things?) so the board will have to lie idle until I get to Maplin tomorrow. The fan was the only thing I had to get, but I decided to also get disk and memory for it and some CD-R blanks. Turns out the cheapest MB/€ disk they had was a 60GB Maxtor, so I now have a 60GB drive. Yow. I did manage to restrain myself from buying the half gig of RAM they had on sale, though, and settled for a mere 128MB instead. I think maybe if this machine gets up and running it can be my new Gronk box.

Umm. It appears I also accidentally spent €15 on a sound card I don't need. Ich bin ein dork.

Rewrote my Red Hat distribution-building script, which is basically just sequencing for the five or six commands you need to build a distro from a heap of RPMs.

September 20
Well, new hardware showed up. It's rather neat. Alas, my Red Hat install disks were about 90% DOA, dammit.

Hee. I made NTK again.

Bob visited again. See previous entries on topic. Ow, my liver hurts.

September 19
Man. Every time Bob visits, I wake up with a hangover. I wonder why?

Hmm. Take 2, wherein I manually construct both the mkisofs command line and the cdrecord command line, has resulted in a non-bootable disk despite my putting a boot image on it. However, I can boot off floppy, so that's okay. I seem to have cracked the hdlist problem at least.

Slowly but surely reintegrating my hacks into the latest version of Gronk; I'm taking a slightly more sane approach this time that doesn't involve rewriting half of it.

Hmm. Seems like RedHat would like you to burn all your files from the same build-install set. Irritating, that.

Hurrah for ntl:; it only took them a month to process the change of name on the cable TV account, and they managed to spell my surname correctly this time. However, they didn't actually change the name on the account; they set up a whole new one and charged me €22.22 plus VAT for the privilege, and unless I'm reading this incorrectly my name is now "ATTN: RONAN WAIDE". Plus their site is broken. Idiots.

Ah, false alarm with the non-bootable disk. Turns out the CD drive was being picky. So yay, I can now script these complete builds.

GAH. mpg321 is built against libao which doesn't work unless you've preloaded a sound server such as arts or esd. And this new, improved command-line mp3 player (it replaces mpg123) seems to skip a lot easier than its predecessor. How complicated can you make "cat file " /dev/audio", I wonder?

Whoops. Minor rm -rf incident (mount --bind being what caught me out) wherein I nuked a bunch of CDDB data and my original modified version of Gronk. Bah. Of course, it does provide me with an incentive to finish off the newly hacked version.

September 18
The CD burner works nicely, hurrah! I used X-CD-Roast to do the work, and while it's a little non-intuitive, it certainly beats messing around with cdrecord on the command line. And as for mkisofs...

Hmm. That's irritating. nmbd disregards the bind instructions in the Samba config file, and just binds itself to all interfaces.

Hmm. Well, yes. The burner works. My brane, however, doesn't. I've found out the hard way why you should run genhdlist again after running splitdistro. Still, I think I can get away with just one coaster.

September 17
Poked at the BBDB some. I've got a working piece of code to handle TMDA addresses thanks to some folks on my.gnus.org, and I've decided to make some tweaks elsewhere to make it easier to attach it to whatever else you're doing.

Finally tried out the CD Burner. It's burning a Red Hat 7.3 disc at the moment. Bootable, too. If this works, then YAY!

Added support for netreport to the console, so I can spot when the network goes down or comes up. At least, I think that's what it'll do for me. Hmm. On closer inspection, it only tells me when the interface changes state, and that's not a whole lot of use because the PPP interface stays up all the time. It's just not physically connected all the time.

Hurrah! After copious oil and abuse, my swivel chair has unrusted enough for me to lower it to a more acceptable height. That's one less thing that needs replacing.

September 16
Installed the Proliant box from the weekend with a little fuss. You'd imagine a company that distributes and services computers would have a few spare KVM cables lying around, wouldn't you?

September 15
Wild Things is one very amusing movie. The last ten or fifteen minutes is full of twists. It's kinda like pulling back the curtain to see the wizard only to find another curtain. Also, I'm pretty sure they could have shot that scene with a body double for Denise Richards, given the camera angles and lighting. Also, why is the IMDb cover image that of the Spanish release?

I have a standalone Enterprise box. Cool. It's a bit ramshackle, but it's working. Now to get it to rebuild itself, muahahah.

It'd be nice to know if the control-center RPM is supposed to be unbuildable out of the box. Maybe I just lost some files along the way or something.

WOW. Eddie Irvine finished in P3. Another Ferrari 1-2, a few stylish offs, and both Jordans came home albeit outside the points. Pfft.

Micromail update. I'm still doing too much of this manually.

September 14
Continuing to build Red Hat SRPMS. Giving thought to building my own compile farm at this point, except that it'd waste more time than I have right now.

Wow. Eddie Irvine qualified sixth for the Monza Grand Prix.

September 13
All manner of fun and games trying to install Linux on a recalcitrant Proliant 5000-series server. Problems such as "refuses to boot from bootable CD-R" and "estimates 10 hours for install over 100Mbit network". In the end, I took the server home. It's currently sitting downstairs on the skateboard I used to wheel it from the car to the house, and it's got Red Hat Linux 7.1 installed, and I'm looking at a 7.3 upgrade. The amusing part is that in a week's time I'll be installing on a piece of kit about the same size, except it'll be a twin-Proliant cluster with a shared storage unit and over 200GB of disk (this has 4 drives totalling about 50GB).

I'm increasingly alarmed at the fact that I'm running plain POP from my desktop. This alarm has been brought about by the little sniffer toy I wrote in Perl, which is happily displaying my cleartext password flying by on the wire. Eep. It's one thing to know that your password is sniffable, it's another thing to demonstrate it to yourself...

Here's the Proliant in my front room accompanied by laptop and hub.

September 12
Still hacking at Red Hat Advanced Server.

Started working on a console toy for the dialup server while I was waiting for compiles. What I'm thinking of is something that tells me why the dialup kicked up, why it's still up (last traffic, basically), maybe kill the dialup if the traffic is some loser port-scanning, monitor the current jukebox track (same machine!), maybe some other stuff. SETI@Home stats! A kill switch for the dialup! My phone bill, based on time spent online! Address of a cardiac doctor when I see the bill!

Right now it just figures out the lower protocol layers and hexdumps the data. Sort of like tcpdump with many -v flags.

September 11
Klunk. LiveJournal seems to have changed something that's stoppped the Emacs client I have from working. I should probably, like, write my own or something.

September 10
Continuing with the cluster fun. Actually, I'm currently building the Red Hat Advanced Server SRPMS. Slowly.

September 9
All set to cobble together some sort of Linux cluster when I got a call from The Other Office. Another power cut, another fux0red server. And it took me several hours to sort out. Apparently the only way to get past a Novell Login when the server is not fully communicating with the rest of the world is to plug out the network cable.

September 8
Trying to sort through an over-full mailbox again. Hotmail's abuse@ people are cretins. Apparently a MIME-attached copy of the spam is not any use to them, because they sent me instructions on forwarding mail after I'd forwarded them the mail. Hello, people. This is how Microsoft's own mail toys do forwarding. Idiots.

Which reminds me, the IEDR recently dropped the requirement to support an abuse@ address on Irish-registered domains. Further evidence of the decrease in quality since the service went corporate.

Which further reminds me, I tried getting my ex-InterNIC data updated. After four automated emails, I received neither confirmation that the attempt had succeeded, nor any indication that it had failed, but the data remains out of date. I'd be rather amused if ICANN stuck it to them like they're threatening to.

September 7
Spent most of the afternoon shopping AjD's panoramas around art galleries. Much to my amusement, it appears that Art Gallery Snobs refer to photographs as not being "original works". This was a source of much amusement to the non-Snobs I encountered, too. So. When you're in Dublin, visit Art Select in Meeting House Square (next to the Irish Gallery of Photography, but big enough that you're not likely to miss it), and Blackfort Organic on Crow Street. Skip Dalkey, though.

I spent the evening watching movies. I can't understand why people want to shell out extra for a movie channel when there are evenings like this - one movie after another across my basic channel set, and barely enough time between them to switch from one to the next. Sure, you get the new movies sooner, and if you missed it on Tuesday you can watch it on Wednesday, but the flipside of that is that they're showing the same five movies all week. Anyway. First up, RTÉ are trumping UTV's Star Wars season (4 movies makes a season, apparently) by showing each of the 4 movies about three days in advance of UTV. Ha. Nice to see my TV license being put to some good use for a change. Anyway, after watching the "remastered" Episode IV: A New Hope (don't the X-Wings heading to attack the Death Star look like they're straight out of, well, the X-Wing game?), I flipped around and found Rush Hour was half-over, so I watched that. Jackie Chan is always fun to watch, and more than makes up for Chris Rock. How Chris Rock became any sort of star I do not know. Anyway. After that, I flipped around again, and found another half-finished movie: She's All That. Kinda predictable movie in the John Hughes genre, not worth seeing but not worth turning off, either. Rachel Leigh Cook was kinda cute even before she took off the glasses, too. Finally, after discovering that Channel 4 was showing, deity help us, CRICKET from midnight until 00:30, I saw Bound, which was what the Wachowski Brothers did before they did The Matrix. A fun, fun movie, with a remarkably small cast - which only struck me when the credits were rolling and I was trying to figure out who the female characters were after I'd accounted for the two leads. Definitely one to watch.

September 6
Poked around with RedHat Advanced Server, but nothing significant.

September 5
Bob showed up. Beer was had. 'nuff said.

September 4
Snerk. I finally booted up the Mac on the network. I had to put it on the 10Mbit hub because it didn't like the 10/100Mbit (I seem to recall encountering this problem before), and I had to talk nicely to it for a bit, but it's working. Hee.

Updated the Macintosh a little. I'm going to have to find a new drive for it, because what's in it is a mere 250MB. I'm sure I have a 500MB Apple-branded SCSI disk somewhere that I can put in it.

Moved a few more things around. Ended up setting up the Korg in the middle of the room. Cabled it into the toybox (Blimp), since Blimp has a normal SoundBlaster card that Linux can stuff a plain MIDI driver into and it'll just work.

Hey, cool. I just clocked 3000 units on SETI@Home!

September 3
Hmm, something screwy with last night's correction. Poked around, wrote a half-assed push mirror script, then reupdated. There's a data bug, but I can't fix that myself.

September 2
Correction to the Micromail update.

September 1
Happy Birthday, Donal!

F1 in Belgium today; after six engine blowouts over the weekend, I think it's safe to say that Honda have some sort of engineering problem. Alas, one of the victims was Giancarlo Fisichella, who was holding onto a seventh place in the closing stages of the race when his engine let go in a most spectacular blowout that left him, as one commentator put it, looking like he was driving a jet-propelled car for a few hundred meters. Ferrari got the one-two, giving Schumacher another record - 10 wins in one season.

Been a bit lax in my "book-keeping" lately. I just finished All Tomorrow's Parties, having polished off Idoru and Virtual Light in pretty short order. Things I like about Gibson: the vague-but-present continuity between the three books; the backreferences to the current day that are suitably mutated because people forget and urban ledgends take over; and despite the backrefs, the constant "here"-ness of the stories, as if he's seeing the world next year rather than fifty, one hundred, one thousand years in the future. Even the Sprawl books read this way, despite being a good fifteen years out of date by now. Things I don't like: maybe I'm not as smart as I think I am, but sometimes I find Gibson's writing to be a little too opaque. Like I'm sure there's a point I'm supposed to be getting, but it's not happening. It probably doesn't help that I tend to read late at night and early in the morning and, occasionally, while drunk and sitting on the bus home.

My "too many computers" problem has sort of half-way resolved itself into a "too many monitors" problem. Having two laptops doesn't help this (I know, you're weeping for my pain right now) but I need to figure out a solution that allows me to stop using the Korg as a spare desk.

Micromail update, for good measure.

previous month | current month | next month

It's been September since 1994