Rob Landley

September 23, 2006

Why won't Bruce go away? Now there's a teleconference with the SFLC on Monday to try to placate him still more. Why do I have to be involved? I'm happy ignoring the prima donna, but the SFLC apparently still considers him relevant. Go figure.

I suppose this is his way of preventing any GPLv2-only software from getting written: throw continuous temper tantrums to suck up the spare time of people who would otherwise actually be accomplishing something he doesn't want to happen. (He's not affecting the project's direction, but he's certainly slowing it down...)

In other news, switching argc and argv over to globals _is_ making the thing bigger. Annoying, that. Make allnoconfig grew 38 bytes, only 8 of which I can easily account for. I'll have to look at the assembly output, but not tonight...

September 26, 2006

Welcome to my nervous breakdown.

Apparently yesterday's teleconference was just me, Erik, and the SFLC lawyers, without Bruce actually being in it. On the face of it, a good thing. Unfortunately, the outcome was the last straw. Yes, shipping the next version of the project GPLv2 only is allowed. Yes, adding license notices to each individual file I change to show that the new derived work is GPLv2 only is allowed too. But removing the old (now incorrect) license notices is not allowed. What the...?

It turns out that GPLv2 is sloppily written in places. Section 1 says you must keep license notices intact when you redistribute verbatim copies. And even though that section seems intended to apply _only_ to verbatim redistribution, section 2 (about derived works) incorporates section 1 by reference, so you can't change the license notices in a derived work either unless you get permission from the original author. So if you drop a dual license that mentions the GPL, you have to leave the old dual license notice with an addendum saying that the old notice is not correct for the current file.

That's REALLY stupid. I don't personally think it's actually enforceable. The lawyers themselves compared it to jaywalking in terms of severity. But I no longer care.

The problem is my stress level from having to deal with Bruce for the past couple weeks. Yes, this is a technicality that doesn't actually _mean_ anything, and the lawyers confirmed that Bruce is wrong in substance. But during the call I got a mental image of Bruce pointing and laughing, and I just can't stand working on any code base he's ever had anything to do with anymore. He's still taking credit for the success of a project he hasn't touched in ten years, dictating terms to people who are doing real work when he is not, and the end result is that it's just no fun working on BusyBox anymore. He took my favorite hobby and crapped all over it, as is his wont.

Maybe I'll feel better about it in a few days, but I doubt it. The lawyers didn't quite say in so many words that the only way to fix the license notices is to start over from scratch, but it got me thinking. I can probably recreate all the parts of busybox I actually use in about a year, and it might not even take that long if I re-use bits of my code and Erik's code that I've verified nobody else touched (so no other clearances needed). And I have a list of a half-dozen global cleanups I've been meaning to do that I can just get _right_ in the new project from the start.

Considering how often I rewrite things anyway (I've rewritten mount.c three times now), it's awfully tempting...

In other news, I tracked down how to get a cable modem setup like I had in Austin for approximately the same price, and Fade ordered a 64 bit server last night. We can move and onto that server, and if I keep working on my new toybox project I can throw it on there too. (All a mercurial server really needs is http...)

September 28, 2006

Server still hasn't shown up. Maybe today.

Still taking a break from BusyBox. I suspect in another week or three Denis will have made it unrecognizeable and I'll just hand maintainership over to him. He has better technical judgement than Bernhard, but the downside is he'll happily add 20 lines of code to fix a minor defect, and the end result is going to be a very bloated BusyBox. (I despise shared SVN. I don't get to decide what to apply.)

In the meantime, I've started new project, "toybox". It started with a single executable that could do different things when called by different names (which gzip was doing back in 1993, long before BusyBox even existed). Now I'm adding "df" to it, since I was in the middle of writing a new one anyway.

September 30, 2006

Resigned as BusyBox maintainer. I just can't do it any more. I'm putting together 1.2.2, and then focusing on Firmware Linux and Toybox and doing a proper miniconfig shrinker (as C code rather than a shell script), and maybe poking at qemu and tcc a bit... And of course catching up on everything _else_ I'm supposed to do at TimeSys.

Copyright 2006