Hacker's Diary

A rough account of I did with Emacs recently.

April 30
Sigh. Ready to roll out some Samba stuff and I find problems in the ACL handling. Not showstoppers per se, but they do make access control all but useless, and there are some files that are best kept locked up.

I found a tool to make Windows icon files from Gimp. So I created a file, saved it, then decided I wanted to edit it again, and Gimp can't open it now. Duh.

April 29
Left the dead drive in the freezer overnight, then fired it up this morning. Nothing. Tried booting with Knoppix, tried a Red Hat rescue disk, then just as I was giving up on it the drive lit up long enough for me to copy my home directory off it. Unfortunately in whatever state it was in I couldn't get at the Windows partition, and on rebooting again the drive was once more unresponsive, but at least I've saved the email and such. Incidentally, I also couldn't get an NFS mount going, otherwise I'd just have dumped the disk partitions onto Gonzo for forensic recovery.

Got a few more boots out of it, but not enough to get more data off. So I've tossed it back in the freezer. Most of what I wanted from the Linux side is already recovered and just needs to be merged into the backup; the Windows side, well, I don't want to write it off, but if I have to, I have to.

An inadvertent part of the recovery process is that I'm now running Red Hat 8, which I hadn't really intended putting on a real system. I guess I could roll it forward to 9 and watch things explode...

April 28
Argh. Qaz decided to eat its own hard drive today. Fortunately, I had a backup from April 22nd, and I'd flushed a bunch of stuff up to the website only last night, but I've still managed to lose about a week's worth of email and assorted bits unless I can get the drive to stay working for long enough to grab any surviving blocks off it. I've also lost anything that was knocking around on the Win2K partition, which includes all my Midtown Madness high scores, among other things. Wah!

Ironically, this happened while there was a discussion on laptop longevity going on on geeksrv. Talk about tempting fate... Needless to say, I've reinstated the nightly backup job that used run when I used Klortho as my main machine.

April 27
Hmm. Hits on my website were only marginally higher after Danny O'Brien linked to my linkfarm toy. Just as well I'm not trying to sell advertising or something...

YAY. Fixed what looks like the last bug in non-schannel RPC traffic, at least against NT4; now to see if it works for schannel.

Fixed up some more bugs in films.pl, including one particularly silly one related to disagreement in how to format the time...


April 26
Didn't do a whole lot of anything today, other than watching crap TV. I'm running RPC tests on Samba to try and isolate the problems there, because I really want to roll it out this weekend. Basically, my code is better than what's in CVS, but there's still a point of failure that I don't quite understand.

Made a minor tweak to Gronk to cope with some files I have that don't have matching CDDB data. I used use fake CDDB entries for 'em, but I'd rather have Gronk simply not explode if it can't find the bits.

April 25
Another tweak to cddb-mode.el; it can now turn a Grip multi-artist file into a CDDB file. Also put together some validation stuff and made it smarter about setting the coding-system for the file. I hadn't realised that CDDB allows either Unix or DOS line endings.

Hmm. I wonder what constitutes "native" line endings on a MacOS X box?

April 24
Spent most of the day doing my slides & notes for my presentation on Clustered Linux Systems.

Alas, for all my efforts there was a pretty miserable turnout. Bah. However, I did discover MagicPoint, probably the best presentation tool for Linux I've seen to date. I mean, it works on text files!

April 23
Today I did this:
(let ((map (make-sparse-keymap "Projects"))
      maps currmap)
  (mapcar (lambda(proj)
            (let ((initial (upcase (substring proj 0 1))))
              (setq currmap (if (assoc initial maps)
                                (cdr (assoc initial maps))
                              (let ((newmap (make-sparse-keymap initial)))
                                (setq maps (append maps (list (cons
                                                               initial
                                                               newmap))))
                                newmap)))
              (define-key currmap (vector (intern proj))
                `(menu-item ,(purecopy proj) ,proj))))
          (reverse (sort project-list 'string=)))
  (mapcar (lambda(kmap)
            (define-key map (vector (intern (car kmap)))
              (cons (car kmap) (cdr kmap))))
          maps)
  (nth 1 (x-popup-menu t map)))
It makes a nice pop-up menu with items sorted under submenus by initial letter. Took me a couple of hours to make it work, though.

April 22
Started testing my Samba fixes with Tim Potter's RPC echo client/server gadget; definitely looks like my patches are the right thing, but I really need to try getting a W2K box to run the client against a NT4 server and see what it does with the Raw Pipe write stuff I've been digging at. I'm pretty sure that NT4 requires this for large RPC traffic, but it's not like I can pop open a source file and read it to find out.

Did a Micromail tweak, too, for good measure.

Got a new toy for office stuff today: a B&B Electronics serial port to ethernet convertor. Alas, it doesn't quite work the way we'd like, so I'm waiting to hear back from B&B to see if they'd be willing to give us some modified firmware or at least some assistance in making it do what we want. Of course, we could also try persuading the server-side people to help out, which I'll be doing on Friday morning.

Temporarily disabled file deletes on the FTP push toy until I implement some sort of exclusion list for it, so that I don't go deleting important files like the web counter or people's shopping trolleys when I'm updating the site. Because that would be BAD.

April 21
Mostly picking at Samba stuff again. I've managed to clone the server I'm trying to clone, except that there's a bug in the printer code that causes the client side spooler service to keel over and die. I wonder if it's exploitable?

April 20
Wahey! Ferraris 1st and 3rd, and only a stuck wheel preventing poor beleaguered Rubiño from being 2nd. Both Jordans blew up, alas. It wouldn't surprise me if 10 points is all they get for the entire season.

Went poking through my source code junk heap and discovered a perl script I'd written to clean up my Mozilla bookmarks file. Ye gods. I'd forgotten about that.


April 19
Caught the tail-end of the F1 qualifying session; looks like the Ferraris might be on form for the weekend. Top marks to Mark Weber, though, for getting his Jag into the top six.

April 18
I've put my Snafooz toy for XScreenSaver up in the workshop area for now, despite not having touched it in about a month due to having my head stuck in Samba instead. You'll need the XScreenSaver source to build it; put the file in the hacks/glx directory, make what seem like appropriate mods to the Makefile, and away you go.

Put the Red Hat 9 kernel and XFree86 bits on my Red Hat 7.3 laptop (with some abuse, obviously). And yay, I now have accelerated X without risking the thing blowing up randomly.

April 17
Micromail update. Also lots of rebuilding-from-source, ick. There's a kernel compile going on as I type this.

Made a few more tweaks to my Perl "push mirror", which I use to upload stuff to Micromail's website. It occurred to me that for Micromail, at least, the smart thing to do would be to turn it into a module and bolt it into the rest of the update system, since there are a couple of files that need to be updated in two places.

April 16
Submitted some of the more sane patches to the Samba guys for consideration.

Working on some timesheet-related stuff for the office, I discovered that for some time now I've had a stupid bug in the diary-helper code. Related to the fact that I can never remember which way around the parameters for ">" go in elisp.

April 15
Amazingly, I appear to have survived the last four days of revelry.

Wahey! Finally I got the Samba stuff working, in the process digging up bugs in several different areas. It's still not 100%, but at least I know I'm on the right track.

Had a very brief look at Kismet, a network sniffer for wireless networks. Was most surprised to discover it's a text-mode application, as opposed to having a shiny GUI...

April 14
Final day of birthday celebrations. I only get to be 30 once, I may as well enjoy it.

April 13
Aaaaand another day of birthday celebrations.


April 12
Birthday day 2. No, really. I did poke randomly at Samba during the afternoon, but not with much energy.

April 11
Happy Birthday to ... ME!

Brief trip to an office to relaunch a busted VPN box only to discover it was already up and running. Keen!

April 10
I'm right on the edge of sorting out what I charmingly describe as the Large RPC Bug in Samba. At least, I think I am, and I think it's a bug. It's a pain in the ass having to go through packet traces to try and figure out what's up, though.

April 9
More customer, more Samba. Machine what vanished off network turns out to have had a duff cable, and is once more on the network again. Oh, and my car got a free dose of fire-retardent chemicals due to fire warden training at the office. Yay, not.

April 8
La la la. Still running around Samba. Met a potential customer today; one of my selling points was that, well, I've dug inside Samba, so I'm probably one of the better people to talk to about it locally!

April 7
Awful hack to fix a Samba problem. Doing it right would have taken too long, and someone else is working on the proper fix, so.

Trying to figure out a sane way of making sure I've moved all the data from an NT server to a Samba server; it's not helping that you can use ACLs to lock your "root user" out of access to a file. I was trying to use the backup privilege to get around that, but I'm beginning to suspect that's local to the machine, i.e. you can't remotely access files that you don't have ACLs to even if you're in the backup group.

Found bugs in the films.pl script. Fixed them, and broke something else. Sigh.

April 6
Built a Red Hat 9 box to see what it looks like. Damn slow install, for starters, although the fortune cookies are amusing... ironic, since fortune-mod has been removed from the list of distributed packages.

Aha, slowness appears to be caused by my choice of an upgrade rather than a clean install, fair enough. Did a clean install after determining I'd done enough damage to the Red Hat 8 setup on the guinea pig box to prevent RH9 from working. Doesn't look much different, but there are some improvements under the hood apparently. No DRI support for my crappy Mach 64 card, mind.


April 5
Saturday morning coffee turned into a dawdling visit to Waterstones, Saturday afternoon coffee, and Saturday evening F1 qualifying and pizza. Rubens on pole for his home race, yay!

April 4
More food, drink and conversation with Mark.

April 3
In which Mark Jason Dominus shows up, gives a talk, and then joins the company for dinner, drinks, and conversation.

Mark's Unix Internals talk was well-received, which was cool. Hopefully we the company will get a decent crowd for next week's Doolin Tech Talk.

April 2
Spent more time than intended running my car through the NCT, largely due to the fact that the service department at Windsor Deansgrange are a bunch of lying suckweasels - which I will have to Take Steps over, but enough of that. The car passed with a minor hiccup, so that's okay.

Dropped in on the ICT Expo as well. It felt a little grubby, to be honest; there seemed to be a sort of desperation about the whole thing, a sort of "please buy our stuff" vibe. The one site I did look up later, a sort of Irish variant on NetFlix, had a site that was so poorly built that I couldn't use it. Great going, guys. <span onclick="foo.html"> is not how you do a hyperlink. AjD had some more choice things to say about it, concerning validity and that sort of thing, but it amounts to the same sentiments. The linux.ie stand was a little off-putting; I stood at the edge of it for a minute and a half talking with a friend of mine who was browsing the show with me, and not one person on the stand even looked our way, much less approached us. Ain't gonna persuade people to use Linux that way, folks...

April 1
Red Hat's servers are a little overloaded at the moment, due to their early-access provisions for Red Hat 9. Makes it kinda hard to recognise you're a privileged customer when you can't get access to the downloads...

The nice thing about picking up a project like BBDB is that you don't have to come up with this huge list of features that you'll never bother implementing because hey, someone's already doing it better. Of course, stagnant code isn't a good idea either. I really need to make some time for BBDB at some point!

previous month | current month | next month


Waider Eep. 30.