Love: strace. Hate: RedHat

Well, thanks to my second favourite debugging tool (after System.out.println), strace, I figured out what was going wrong in Rants and Revelations » Today’s Java puzzlement.

(Short aside: CentOS is actually RedHat Enterprise Linux with the proprietary stuff filed off. So any changes between versions are RedHat’s fault, not CentOS’s.)

I had a short program I wrote some time ago to print out the names of all the fonts that Java knew about. Today I straced it on my CentOS 4.4 and my CentOS 5.0 machines to see what was the difference. Both machines opened up /usr/java/jdk1.5.0_11/jre/lib/fontconfig.RedHat.bfc just fine. And both started opening up various TrueType font files. But what’s that? On the CentOS 5.0 machine, I’m getting ENOENT (file not found) for /usr/share/fonts/ko/TrueType/gulim.ttf. Oh, that’s not good, since I know the installer installs the “fonts-korean” rpm, which is the CentOS 5.0 equivalent of “ttfonts-ko”, which is what I’ve got installed on CentOS 4.4. Oh, but when the geniuses at RedHat renamed the rpm, they also renamed the directory the directory that the TrueType font files go, from /usr/share/fonts/ko/TrueType to /usr/share/fonts/korean/TrueType. And when they did similar renaming with Japanese and Chinese fonts, at least they had the decency to put symlinks at the old locations.

After that, it was a simple matter to copy the /usr/java/jdk1.5.0_11/jre/lib/fontconfig.RedHat.properties.src to /usr/java/jdk1.5.0_11/jre/lib/fontconfig.RedHat.properties, fix the directory names, and voila, I have Korean fonts.

Now I just have to figure out how to get this into the delivery RPMs.

Fuck pain

The pain in my knees is really getting out of hand. It’s been getting worse for decades, but for the last couple of weeks I’ve been getting a stabbing pain on top of the usual diffuse pain – I used to get that every few months and it would only last for a day or two. My tolerance for any sort of activity has gone way down, and Alieve isn’t doing as much as it used to.

I was planning to clean out the basement and my office this weekend, and hopefully get out kayaking for the first time of the season. Instead, all I managed to do was replace the locks on the garage and clear out the cardboard boxes that have been waiting to be flattened to go out to recycling for months. Oh, and walk around the block once looking at the garage sale. And for that, I’m paying in agony.

I guess if I recover enough, I’ll have to do the cleaning out in short chunks of time every evening instead of one big weekend project. And hopefully fit in the kayaking one of these days.

(And yes, I am going to talk to my doctor. Not that I have an iota of hope that he can do anything.)

Dear Boss

Three years ago, when I was asked to implement a DocumentCache class in the cinlib, I made a mistake so that first build that had it was actually horribly slower than before it was implemented. Yes, I admit it. But I fixed that problem in the very next build, and it actually did end up being a net gain.

So is it really fucking necessary that every time since then when there the slightest question about cinlib performance, the first words out of your mouth are “can we try disabliing the DocumentCache to see if that fixes it”? I mean, it’s been three years. Give it up, already.

A stupid idea, stupidly done

In amongst my podcasts, iTunes downloaded three “PDFcasts”, two from Make Magazine and one from PilotCast. Of all the ways that people on the Internet have found to re-implement the same basic idea as Usenet, this has got to be the worst. If I wanted content that I had to read on my computer, what’s wrong with a web page? Or better yet, an RSS feed for a web page. Or an email list. Or Usenet.

I should be doing something

It’s a beautiful day. I should be out riding my bike, or kayaking, or clearing out the basement, or putting up screen windows, or getting IFR current again, or something. But I’m not, because my knees hurt worse than they’ve hurt in months, possibly years, and it’s a chore to walk down the stairs to get something to eat, never mind do something that involves using them for anything. And it’s that stabby pain that I get every now and then, as opposed to that diffuse pain that’s part of the constant background, and that pain does not seem to respond to Alieve at all. The diffuse pain doesn’t respond quickly or well to Alieve, but at least if I forget to take it for a couple of days I notice the pain level increasing. This stabby pain comes and goes on its own schedule.

Maybe I’ll use the time to fix the OpenID commenting on this blog (or at least get it back to the point where it works for some people, like when I use it myself from my Powerbook, but not for other people, like when I use it myself from my Linux computer at work). Or fix the long broken loader scripts on my waypoint generator site. Or see if I can get the Gallery upgrade to work this time. But I don’t feel like it – I’d rather just curl up and try to sleep. At least then I wouldn’t be aware of the pain.