< | >

Hacker's Diary

A rough account of what I did with Emacs recently.

August 31
This Is Spinal Tap was a hell of a lot of fun. I won't be buying it, but I had a few laugh-out-loud moments and the music was great even while it was being completely tongue-in-cheek. Definite recommend!

find has got to be one of the most non-intuitive commands ever built. I just spent ten minutes trying to figure out how to get it to list files newer than a target file that weren't CVS-related files.

The officebot now has Chatbot::Eliza support. Oh the humanity.

August 30
Converted some old GLUT-using code to no longer use GLUT. Doesn't improve performance, but it does cut back on the flicker, despite the fact that the GLUT stuff was using double-buffering.

August 29
Raikkonnen takes the race, but Schu gets his 7th World Championship title in a rather eventful Spa Grand Prix: no rain, but plenty crashes, safety car runs, and blowouts. Plus a few mechanical failures. Ultimately, Schu gained a late boost from a safety car incident, and lost the advantage when the safety car was brought out again with just five laps to go.

Thirteen Days was actually a pretty good movie, helped by the fact that I was interested in the subject matter and didn't know a whole lot about it. And, apparently, they've not messed with the facts a whole lot.

August 28
Oddball weather at Spa has Schu on grid slot 2, something like 0.004 of a second slower in qualifying than Trulli.

August 27
We rearranged the office today. That was fun. The inflatable sofa is now inflated, too.

August 26
With some minor abuse I got the XMMS AudioScrobbler plugin working. Seems like I have a version of curl that uses free() rather than curl_free().

August 25
Yay, sorted epiafb. Also sorted homemade intltool-like thing. Damn I'm good.

August 24
Looked at intltoolize and friends. Decided I didn't quite feel up to converting my project to autoconf just for the sake of using it. Wrote a tool to manage my multiple translation files instead. Yay me!

Also finally got around to writting a bit of Perl to log into my online banking and fetch a balance for me, since the website that I have to endure to do same manually is a pain to use.

Oh, and I got my epiafb back, but other stuff is still broken. WTF?

August 23
Somehow, I broke the epiafb-kernel-from-boot I'd built somewhere in the process of figuring out what other things should be attached to it, so now I've got to find out what I broke, exactly, and unbreak it. D'oh.

August 22
Woo, 7.3 upgrade more-or-less hitch-free. Some weirdness due to the fact that I'd installed an up-to-date version of OpenSSH which linked against a version of Kerberos that'd been yanked, but that aside it appears that everything is intact.

Of course, I did very little of the stuff that needed doing.

August 21
Most of the breakage now repaired, so I'm back to working on the buildfarm itself. It's not really a buildfarm, just a bunch of net-based projects that I'm tracking and doing nightly builds of because, you know, I'm just that mad.

As a sort of incentive to do other stuff, I'm upgrading blimp (my fileserver) to Red Hat 7.3. This means all my MP3 files, buildfarm, etc. will be inaccessible for the next while, which may spur me into doing stuff around the house that needs doing. Or possibly getting out into that bright yellow stuff outside. Sun, I think it's called.

August 20
Messing about with various Fedora Core packages on my RH9 boxen has lead to some minor breakage. Unbreaking has proven to be a bit of a pain, alas. I've so far uninstalled my complete compiler toolchain and rolled back a libc version.

The League of Extraordinary Gentlemen was not quite the pile of fetid donkey rot I'd been led to expect, but it wasn't High Art either. Probably it helped that I'd had some beer before watching it. The underwater CGI stuff was awful, actually.

I added bylines to the RSS toy, in part so I could tell which Boing Boing contributor was irritating me. Now Boing Boing is running bylines as part of its RSS feed.

August 19
Much dinking around with <redacted> reveals that my Perl code is just fine, it's the gimpy hardware on the other end of the cable that's not conforming to spec. Bah.

August 18
Tweaked the evil cd-thing a little more, then played with OBEX for a bit. Oh, and my net.connection vanished for 45 minutes, but no big deal.

Wahey, a SourceForge update, finally:
( 2004-08-18 13:35:13 - Project CVS Service ) As of 2004-08-18 the current estimate on when the outstanding pserver/ViewCVS/nightly tarball issues will be resolved is on 2004-08-20. Until then, you may want to consider generating your own snapshot for your end users, as documented in the site docs (do note that since cron is disabled on the shell server you will have to kick off the cron job from a non-SF.net host).

August 17
Sourceforge's AnonCVS servers for certain projects have been on the blink since Thursday:

( 2004-08-13 07:16:12 - Project CVS Service ) As of 2004-08-13 the CVS issue documented yesterday has not been fully resolved. As such, we had to disable pserver based CVS for those letters again to further look into the issue and resolve it. We anticipate this service to be back up sometime later today.

( 2004-08-12 12:42:49 - Project CVS Service ) On 2004-08-12 at about 10:00 Pacific the pserver based CVS server that hosts projects that have a first letter of c,d,g,a,w,x and u had a hardware malfunction that is currently being worked on. Projects whose letters match those previously mentioned will not be able to have their pserver CVS repositories or ViewCVS interface functional until the issue is resolved. We anticipate this issue to be resolved by sometime tomorrow.

It's now 5 days since the problem was first noted, 4 since it was last updated, and it's still broken. The status page doesn't even link to any associated trouble tickets, and the only tickets I can find have a canned response giving no information on progress, if any. Now, before you point out that you get what you pay for with a free service (yes yes, thank you for stating the obvious), compare with the status/maintenance page of another free service. Perhaps SourceForge should consider hosting a similar livejournal?

Did a little work on cd-thing.pl, a nasty piece of work that attempts to identify a MP3 file based on existing tags and the filename - no fingerprinting, just a little searching in FreeDB and some heuristics. It's actually pretty damned good. Noisy, though; I need to switch off a ton of debug stuff. It currently spits out a command line for mp3name.pl if there's only a single match; ideally the two would be merged - indeed, there's a precursor to cd-thing still in mp3name.pl. I also need to have mp3name.pl check the quality of files in a namespace collision and give precedence to higher bitrate, more precise length match, etc.

Oh, and no, there are no good uses for this sort of thing. Because all your ripped-from-your-own-CD-tracks are properly labelled, right?

Happy Birthday, Orla!

August 16
I gave up on the Gtk2 stuff for XMMS. I'm running into too many other problems with having Qt 3.2 installed (Skype and mplayer are unhappy, for example) so I've gone back to Qt 3.1, which removes the need for a ported XMMS. I've moved the patches to my patches page for now. Note that the XMMS patches are against 1.2.9.

À Bout de Souffle (Breathless) lacks many of the features of a modern movie: colour, clean cutting, special effects, and a large budget. However, the dialogue is fantastic, and delivered believably by the suitably gallic-looking male lead and his rather cute leading lady (who bears a pretty strong resemblance to Sharon Stone). I think I rented this because it made it in some random "Top 100 Movies", possibly for the closing scene which is verging on being inscrutably French; the rest of the movie has far more going for it. As with last night's unintended viewing, definitely one to watch.
August 15
And w00t, Schu takes the win. 12 wins in the season, a new record. Ferarri have now accrued enough points to run off with the constructor's championship, and Herr Driver Boy is apparently torn over the choice of winning the Driver's Championship in the next race or the one after it.

Stayed up later than I'd intended because I started watching Wild About Harry and discovered it was engaging and entertaining. Definitely one to see if it comes your way!

August 14
Friends visiting from the US, so I spent the first part of the day dragging them around the Dublin Mountains (including lunch at Johnny Fox's) and the second part of the day dragging them around Temple Bar.

Apparently while I wasn't paying attention, Schumacher put himself on pole again.

August 13
Build new GCC. Install. Use new GCC to build new glibc. Install. Pray that RPM-vs-2.6 issues go away, because I'll have burnt a lot of cycles needlessly if they don't.

August 12
Attempting to create a kernel config matching a prebuilt kernel by frobbing options, rebuilding and diffing the symbol maps is not hugely exciting. It does strike me that there's possibly an automation tool to do this. Of courses, it sort of goes away with 2.6 due to the /proc/config interface.

August 11
Tooling around with some Palm stuff in lieu of doing any of the 101 other things I could be doing.

August 10
Hurf. I rebuilt gcc34 from the Fedora Core SRPM, but the libstdc++ stuff is complaining about a missing linker symbol and there were, uh, issues with libgcc - no RPM was built, but according to rpm -qi on my FC2 box, libgcc is supposed to come from a gcc34 build. *shrug* The only thing it really affects is that I can't build lufs with the new compiler. Writing kernel modules in C++ should be some sort of crime, anyway.

I discovered Mail::Webmail::Gmail today, and thought, "cool, I can script up a quick POP-to-Gmail proxy with that". Enh. Don't bother. It doesn't automatically pick up your proxy settings (Hint: if you use LWP::UserAgent, use env_proxy. If you don't use LWP::UserAgent and you're dealing with the Web, I don't even want to touch your code, thanks) and it doesn't use any of the Mail::Tools stuff to handle the messages, so you're left with having to manhandle them into that before you can do anything useful with them. I'm torn between fixing it and throwing it away in disgust.

Minor update to mailman.pl: it now supports a --dryrun flag so you can see what it wants to do (caution: this will update your SpamAssassin Bayesian database(s)) and it doesn't feed a From_ header to SA 2.4, which SA 2.4 seemed to be upset about.

August 9
w00t! I've managed to bolt the abandoned epiafb framebuffer driver onto a 2.4.22 kernel, giving me a framebuffer from boot that's not all wacked out on an LCD screen. Go me!

August 8
In which Waterford are defeated through insufficient ability to stand up and a rather slack defence. Bah.

Made a few changes to makerpm.pl, the most notable of which is to add a --groupwith parameter so you can tell it to use the same group as some other package.

August 7
Parents visited. Dad brought me a copy of Linux magazine which features an article on scponly, a rather nifty tool I can use for the office. Thanks, Dad!

August 6
I'm annoyed with xauth. I've done a before-and-after ifup comparison of my .Xauthority file, and there's no difference. Yet after I've done ifup on a live X server, clients can't connect because the xauth info is hosed. This is a non-trivial problem, particularly if I wanted to, say, bring my laptop from home to the office without powering down. I am assuming it's in the client-side xauth libs, but, GRR.

Enter The Dragon: how to comment on a movie that was made in all earnestness when Blaxploitation was the norm? The dialogue is laughable, or maybe it's the delivery that makes it so. The fighting is awesome. The storyline is pretty much stock thriller material. It's worth watching if only to see Bruce Lee in action.

August 5
<Brad Pitt>If I'm reading this right — and I'd like to think I am...</Brad Pitt> the epiafb stuff - which is derived from the tridentfb stuff - calls fb_find_mode during module initialisation. Which is an __init function, meaning that it gets thrown away when the kernel is reclaiming memory. So, er, wtf?

Further investigation reveals that the other framebuffer drivers appear to operate in the same way, so I'm a bit confused at this point. If I call an __init function after the kernel's done reclaiming memory, what gets called, exactly?

KLANG. I just found out where the default mode is coming from, at least. And it suxx0rs.

August 4
Because it may not be immediately obvious where to find it: RealPlayer 10 for Linux. I eventually resorted to googling for this, since the process of going to Real's website, then clicking on the Free Player tab, then attempting to find a version that wasn't 8 built for Red Hat 6.2 was simply not working. In fact, I can't trivially find a way to get from the Real homepage to the Linux subsite.

Ok. The constantly changing input channels thing seems to be an artifact of the order in which modules get loaded. For one ordering, the input I want is Television. For some other ordering, it's tuner.

W00t. Finally managed to get all the bits marching in the same direction at the same time: patch your Linux-WLAN sources for Linux 2.4. I am aware of the, uh, potential uselessness of this, before you point it out...

August 3
Many odd things.

gocr, an optical recognition tool, is interesting but is flummoxed by JerkCity, even doing a little preprocessing on the images to stop it from picking out boxed frames as single characters.

The v4l2 interface to the TV card in the PVR (got all that?) seems to be unable to change channel.

convert -monochrome for some reason turns the JerkCity images into negatives, and using -negate doesn't appear to help.

pbmclean breaks with a non-intuitive error.

Cleaned out a bunch of old emails. Lots of things I should've bookmarked, or at least investigated and dumped. Some notes on image-frobbing from AjD which are no longer relevant to anything I'm doing. Random reminders to myself of geeky ideas that need implementing some time before the heat death of the universe.

I've been tooling around with a buildfarm concept not dissimilar to Dag Wieers'; it's an interesting exercise in trying to encompass the wide variety of what passes for packaging in the Open Source world. Adding generally unpackaged products as I am doing leads me to discover rather painfully why it is they're currently unpackaged, viz. sanity of the would-be packager.

PVR still not working. DAMMIT. And this sort of thing doesn't help:
2357 root 15 0 291m 174m 12m S 0.0 71.8 23:20.35 python

WEP started working at home. I did nothing different. I don't understand computers.

August 2
I've got a new wireless doohickey courtesy of Bob's Unused Hardware, but it seems somewhat marginally incompatible with my laptop's wireless card - I had to completely disable WEP to make it all work, which I just know I'm going to forget to switch on when I'm back in the office tomorrow. On the plus side, I've finally managed to get Fozzie back into booting condition with a 2.4 kernel and WLAN drivers that actually load and don't crash. Next step is, of course, to make the damn thing work... what I don't quite understand is that I build a kernel, depmod works fine, then I reboot into that kernel and depmod turns up a bunch of unresolved symbols. Gah.

The Guru was light, predictable, cheesy, and a whole lot of fun. Some great lines, a sprinkling of slapstick, and hey! There's that guy from Office Space whose name noone can pronounce!

August 1
Hmm. Somehow I manage to keep building kernels for Fozzie that are missing the IDE drivers. Which, er, is a little unsuccessful in the booting department. Aside from that, I think I tracked down the missing line from the WLAN drivers that was causing a kernel panic, so once I have a working kernel again I'll try it out.

Haha. I was about to hack up an audio ping toy to assist in rough coverage testing for wireless networking in my house, and discovered that I'd not only already created one but I'd even given it the same name as I was going to call the new one - sonar.pl.

previous month | current month | next month

Sunshine? Here? Surly you're kidding...