This weekend's witch-hunt Bruce Perens bruce at perens.com Tue Sep 19 01:34:54 UTC 2006 Dear Busybox folks, Last week, I obejcted to Rob Landley changing the license statement on portions of the busybox code that I wrote. After some (acrimonious, on his part) discussion, I left him a final directive: note that Busybox contains some of code copyrighted by me, and that it my code should be licensable under the GPL, irrespective of version. This corresponds to the license preference on my original release of the software. The sensible action for Rob to have taken, at that point, would have been to insert a two-sentence note into the Busybox license that would have looked like this: Portions of this program are copyrighed by Bruce Perens. Those portions may be used under the GNU General Public License, irrespective of version. That declaration would have respected my rights as a copyright holder, and would have allowed Rob to make the license change to GPL2 only for the overall program that he wished. Having added that declaration, Rob could have gone on with his life as a productive coder. Instead, Rob embarked on a days-long forensic analysis, his log of which is visible at http://busybox.net/~landley/notes.html and http://busybox.net/~landley/forensics.txt It appears that he's putting in a great deal of work to remove all traces of Bruce Perens from the Busybox software. He's missed pieces, but I feel little motivation to assist him by naming them. I think it would be fair to classify his behavior as "over the top". I don't believe my correspondence here has been sufficient cause for this extremely nonlinear response. However, it's free software, and Rob has the right to do what he did. You, however, might want to think twice before you go along with this strangeness. I've been guilty of "over the top" behavior in my time, and can sympathize with Rob while at the same time I don't want to leave him in charge of the only development version of Busybox. I have respect for Rob as a coder and great respect for Erik who put in a tremendous lot of work on this program. I do not feel a need to be the major coder of Busybox, but feel that a fork is necessary and will put in the work to make one. I once was very successful in distributing the Debian base system development to many separate package maintainers, having got it as one monolithic package. Perhaps this is possible. I see some new technical directions that are possible. Thanks Bruce
This weekend's witch-hunt Rob Landley rob at landley.net Tue Sep 19 03:34:44 UTC 2006 Sigh. I composed a big long response to him on Friday, and then saved it in my drafts folder rather than sending it, because I just didn't want to continue the flamewar. But apparently, he does... On Monday 18 September 2006 9:34 pm, Bruce Perens wrote: > Dear Busybox folks, > > Last week, I obejcted to Rob Landley changing the license statement on > portions of the busybox code that I wrote. After some (acrimonious, on > his part) discussion, I left him a final directive: Ultimatum, actually. > Portions of this program are copyrighed by Bruce Perens. Those > portions may be used under the GNU General Public License, irrespective > of version. Those would be the 1.2.1 and earlier versions. I'd planned to have the actual announcement (which goes up on the website like the other things I want people who don't read the list to see) would have stated that 1.2.1 and earlier are still available under the license they've always been under. (Eventually they may move to the Legacy directory along with the other really old releases.) I was already planning on doing this. It takes serious effort to ask somebody to do something they're already doing in such a way that they don't say yes. You have a positive talent for this. > That declaration would have respected my rights as a copyright holder, > and would have allowed Rob to make the license change to GPL2 only for > the overall program that he wished. > > Having added that declaration, If you hadn't done the whole Schlamiel thing and had simply asked with a little less condescension and bluster, I was already planning to do something very similar to that. However, I take objection to being treated like hired help. I have now worked on this project twice as long as you ever did, and Erik's put in a half-dozen times as much work as you even if you'd written all the applets in BusyBox 0.25 (which was maintained by two other people after you abandoned it before it got to Erik). I _did_ ask Erik. I warned Erik I was thinking about this months ago, and listened to what he had to say. (Hint: walking in off the street and making demands after ten years was _stupid_. Despite that, I responded politely the first few times. You used up my strategic reserves of politeness.) I decline the opportunity to be your Schlamazel. Or at the very least, I'm washing the soup off. > Rob could have gone on with his life as a > productive coder. Instead, Rob embarked on a days-long forensic > analysis, his log of which is visible at Yup, it's only about half done though. As a computer historian, it's an interesting learning experience. And it was my weekend. > http://busybox.net/~landley/notes.html > and > http://busybox.net/~landley/forensics.txt > > It appears that he's putting in a great deal of work to remove all > traces of Bruce Perens from the Busybox software. Nope, just removing any leverage you may still have to fling soup on a list you never posted on in the entire seven years of Eric's tenure, over a project you abandoned ten years ago, over a license simplification that only applies to new releases and which someone who isn't even the maintainer could legally make to their own fork. > He's missed pieces, Remember when I called it a snapshot? Sheesh, you're trying to make it sound like I'm hiding something. How exactly does one hide something by posting it in their blog? (And mentioning it on the #uclibc irc channel on sunday.) I am _proud_ to prove that you have had no input into this project for almost a full decade, and yes I honestly believe that's _WHY_ the project has been successful. > but I feel little motivation to assist him by naming them. As I said, it's only about half done, but I have yet to find much that comparator (a legal grade forensic analysis tool) missed. A few of the shorter help messages are the same. Still about 70 files to look through. But that's why I haven't announced it yet. That's a snapshot of the current (unfinished) state. I thought my blog made that clear, but making stuff clear to you is obviously a hit-or-miss proposition. > I think it would be fair to classify his behavior as "over the top". Pot, kettle. Kettle, pot. > I > don't believe my correspondence here has been sufficient cause for this > extremely nonlinear response. You get that a lot, I take it? http://old.lwn.net/lwn/1998/0319/resign.html http://slashdot.org/articles/99/02/18/0927202.shtml http://lists.debian.org/debian-devel/1999/04/msg00197.html http://www.computerworld.com.au/index.php/id;708563949;fp;16;fpid;0 How'd the presidency of Linux Capital Group work out for you? Is the Bruce Perens book series with Prentice Hall selling well? How are you doing with Open Source Risk Management? Did you accomplish a single concrete thing in your entire time at HP between http://www.linuxtoday.com/news_story.php3?ltsn=2001-03-04-002-20-OS-BZ and http://news.zdnet.com/2100-3513_22-957065.html ? News Flash: you have a knack for pissing people off, alienating your own base, and working against your own objectives. "Messing your nest" is how I've heard it described. You would appear to me to be a classic example of a "Schlameil". (I'm not jewish, but my favorite wireless coffee shop's very kosher.) Sure, plenty of people in the community are hard to get along with, from Theo De Raadt to Al Viro. The thing is, they're constantly putting in a lot of hard work to offset this. And they do it themselves, they don't order other people to do it for them. I don't care what you _used_ to do, or what you've done elsewhere. I requested that if you want a version of BusyBox under GPLv3, you either use any of the existing releases or you fork the project and maintain it yourself. I was not joking, that was a serious suggestion. If you don't like the way I'm maintaining the project, FORK IT. (Go contact a guy named Vladimir Oleynik, the two of you would be perfect together.) > However, it's free software, and Rob has > the right to do what he did. Then why the public melodrama, on a list you have never previously been a member of? > You, however, might want to think twice > before you go along with this strangeness. I hope whoever you're referring to does. I certainly never asked anybody to blindly follow me anywhere. I put out the best versions of BusyBox I know how to do, and I do it because I love it. That's the most I can manage. I never claimed to be perfect, and I've never forced anybody else to use the versions I put out. (Lots of people are still happy with the 0.6x releases. I have no interest in supporting them, but they're up for download on the site, and will remain so.) I have no problem with people disagreeing with me either. I expect that, and respect it. I disagreed with Erik about a few things when he was maintainer. (For example, "count" was a way better name than "pipe-progress". :) But when Erik made a decision, acknowledging my concerns but continuing to disagree with them... he was the maintainer. I never even tried to become maintainer, I was just the one doing the shoveling after Erik got busy with other things. I wanted Erik to come back, and would _still_ give it back to him in a second if he had the time/inclination/energy to do it. But he's still having trouble keeping up with his existing projects. (The embedded world's getting big. Keeping up with it's a lot of work. I keep poking him about a 0.9.29 release of uClibc because I want to use it, but I try not to be annoying about it. With mixed success, I suspect. And the only help I can offer in that area is testing and bug reports...) I want what is best for BusyBox. And in my best judgement, after nine months of public debate on this list _before_ you showed up, that's GPLv2. > I've been guilty of "over the top" behavior in my time, and can > sympathize with Rob while at the same time I don't want to leave him in > charge of the only development version of Busybox. Please please please say you're forking the project. Please. > I have respect for > Rob as a coder and great respect for Erik who put in a tremendous lot of > work on this program. > I do not feel a need to be the major coder of Busybox, but feel that a > fork is necessary and will put in the work to make one. YES! You'll want to talk to Vladimir Oleynik. I don't think his email address has changed. Last I heard, he was vowing to maintain his own tree. He's a very... prolific coder. > I once was very successful in distributing the Debian base system > development to many separate package maintainers, having got it as one > monolithic package. Perhaps this is possible. I see some new technical > directions that are possible. Good luck. > Thanks > > Bruce Rob -- Never bet against the cheap plastic solution.
This weekend's witch-hunt Bruce Perens bruce at perens.com Tue Sep 19 04:51:20 UTC 2006 Rob Landley wrote: > Ultimatum, actually. > My right, darn it, an entirely reasonable request, and it would not have done you the slightest bit of harm. Com'on, Rob, you're being stubborn. > I was already planning on doing this. You would then have had no reason to go filtering out code-lines. Now you're going to insert some number of bugs in the code for a silly reason. > If you hadn't done the whole Schlamiel thing and had simply asked with a > little less condescension and bluster, I was already planning to do something > very similar to that. > Your actions communicated the opposite. Rather than assure me that my rights would be respected, you attempted to prove with amateur lawyering that I didn't have any rights. And then you embarked on this forensic thing. > However, I take objection to being treated like hired help. I do not think of you as hired help. But before you cast that stone, think of how you're treating other folks on this project. > How'd the presidency of Linux Capital Group work out for you? OK. If you insist. It's your mailing list. You probably can't blame me for the stock market crash. When we saw that the market was not going to come up for a while, we decided to close down operations /before/ we used up our investors money, rather than drag the company into bankruptcy for the sake of saving our own jobs for a few more months. We paid all of our bills and closed with money still left in the bank. The management (two other guys and me) took some of our personal stock in Progeny Linux Systems Inc., one of the companies we created, and /doubled /the holding of our investors. Without being asked. Progeny has been around for 6 years, and has employed a number of the Debian developers. That company might not make it, but all of the Debian stuff we've paid for has done enough good. > Is the Bruce Perens book series with Prentice Hall selling well? We just put out a new book on Ajax. All of our texts become Open Source and are distributed in unencrypted PDF 90 days after they hit store shelves. I think there are 25 books now. I suspect that we have made more Open Source documentation than the Linux Documentation Project. One book of the 25 was a commercial failure. None of them sell like Steven King. But technical books don't. > How are you doing with Open Source Risk Management? > Their business didn't take off. I moved on. You win some, and lose some. > Did you accomplish a single concrete thing in your entire time at HP between > http://www.linuxtoday.com/news_story.php3?ltsn=2001-03-04-002-20-OS-BZ and > http://news.zdnet.com/2100-3513_22-957065.html ? > At the moment I am wondering if they were snooping my telephone records, because they certainly were doing that to all of the reporters that it was my job to talk to. But if you want just one concrete achievement, there is the reversal of W3C's decision to put royalty-bearing patents in web standards. IMO that is a pretty big deal. Hopefully that is enough of "What good are you, Bruce Perens" and we can return to talking about Busybox now. >> However, it's free software, and Rob has >> the right to do what he did. >> > > Then why the public melodrama, on a list you have never previously been a > member of? > It takes both fuel and oxidizer to make a flame. Thanks Bruce
This weekend's witch-hunt Rob Landley rob at landley.net Tue Sep 19 20:31:55 UTC 2006 On Tuesday 19 September 2006 12:51 am, Bruce Perens wrote: > Rob Landley wrote: > > Ultimatum, actually. > > > My right, darn it, an entirely reasonable request, and it would not have > done you the slightest bit of harm. Com'on, Rob, you're being stubborn. All the new code I'm adding to BusyBox for the next release will be GPLv2 only. This is both the code I'm adding, and the license I'm accepting patches under. Some of this code is already available under other licenses elsewhere. That's always been the case, and I couldn't change that even if I wanted to (which I don't). For example, we've accepted BSD code into the project on many occasions, but you've never been able to build a BSD-licensed version of BusyBox. In the case of older BusyBox code, anything that may be cleanly sourced from the existing 1.2.1 and earlier releases is under "GPLv2 or later" and remains so. Any code that _cannot_ be sourced from those is dubious at best, and was most likely added under the new license, so the easy and safe thing to do is grab 1.2.1 if you're looking for code to add to a GPLv3 project. That is the course of action I recommended in that case, back in my first reply to you. In addition, all of my contributions to BusyBox (code I myself wrote) since I made the announcement have been licensed GPLv2 only, and my future contributions will all be licensed GPLv2 only. My compliation copyright on the next release will be licensed GPLv2 only, so I'm _adding_ code GPLv2, and the license I'm accepting contributions under is GPLv2. An announcement to this effect goes on the website in the next few days, I'm prettymuch waiting until I have time to get together 1.2.2. (Which will still be "GPLv2 or later", by the way. That was _always_ the plan, and despite your tantrum I'm still doing it because I'm not petty. You being out of the loop with BusyBox development is not my problem.) I also plan to merge existing GPLv2 only code from outside the project (such as from kernel developers). This is not "mere aggregation", this is part of the project, the whole of which must be under the same license. I could not merge things like DietHotplug (which Erik ported to BusyBox, not me) and still keep the license on the project "GPLv2 or later". You cannot merge GPLv2 only code into a project and then distribute the result as GPLv3. I also talked to Erik, who said: > Re: Going GPLv2 only for BusyBox. > From: Erik Andersen <andersen at codepoet.org> > To: Rob Landley <rob at landley.net> > > Message was signed on 2006-09-13 11:11 pm with unknown key > 0x5F9B643E30D39057. The validity of the signature cannot be verified. > Status: No public key to verify the signature > > On Wed Sep 13, 2006 at 11:07:51PM -0400, Rob Landley wrote: > > I'm planning to simplify the BusyBox license to GPLv2 only tomorrow, so > > that BusyBox 1.3.0 will be GPLv2 only when it ships. > > > > Are you ok with that? > > Sure, works for me. > > I, Erik Andersen, being of sound mind and body, do hereby declare > that all code I have contributed to BusyBox that may at present > be licensed GPLv2 or later, is hereby licensed GPLv2 only. > > -Erik I.E. he was being a bit silly, but I'd call that a "yes" on the question of marking all of his code GPLv2 in the next release. (This was not legally required, since GPLv2 only is a valid subset of GPLv2 or later. This was a courtesy to a man I greatly respect.) I've been policing and simplifying the license terms ever since I became maintainer. I'm the one who went out and found the SFLC (ok, I asked PJ of Groklaw, who recommended a really cool group of guys) to enforce the license. This is because the previous license enforcement mechanisms (the Hall of Shame and spare time from Erik's Dad's lawfirm) did'n't scale. The current license simplification is a logical extension of previous moves like "http://busybox.net/downloads/patches/svn-15073.patch", and we discussed it on the list on and off for nine months before acting on it. As part of my license policing, I've already found instances where we merged kernel code into BusyBox (for example, in libbb/loop.c), and instances of entire applets written by kernel developers (like Linus Torvalds) where we just assumed their license and our license was the same. Linus announced six years ago (the Linux 2.4.0-pre8 announcement I linked to in a previous message was from 2000) that they were not the same, that his code was (and always had been) GPLv2 only. Where does that leave our Torvalds-written applets? In legal limbo, possibly. GPL clause 9 vs the author's stated intentions, 6 years after the fact... Tough call, ask a judge. Recently, Erik stripped down diethotplug and submitted it to me for inclusion in BusyBox without ever noticing that it was GPLv2 only (I'm the one who spotted that, and only because I was looking). It's a very, very easy mistake to make, because "GPLv2" vs "GPLv2 or later" is just too darn subtle a distinction to notice unless you're explicitly looking for it. Did anything else slip in on his watch? Did anything else slip in on my watch? I honestly don't know. In order to be sure that we haven't _already_ sucked in GPLv2 only code (and remove it if we did), I would have to audit the codebase. You're complaining about me auditing an old version of BusyBox with 87 files totalling 322,259 bytes (over half of which is in the two files "gzip.c" and "zcat.c", which I could simply compare with the old external version they came from). The current version of BusyBox has 889 files totalling 5,543,620 bytes. That's an order of magnitude more work, and I ain't doin' it. Working on BusyBox requires a strong drive to simplify and remove unnecessary duplication. We spend more time cleaning up and optimizing existing code than writing new code, and most of the new code we write is _rewrites_ to replace stuff we've already got with smaller versions. After a while, this naturally extends itself to things like the license. I realize that you don't have this drive. You also haven't touched BusyBox in a decade. I believe these to be related. After you explicitly objected to "your code" being licensed GPLv2 only, I started doing some checking. And I found two things: The first thing I found is that the license statement in BusyBox 0.25 said only (at the end of LICENSE): > This program suite may be distributed under the GNU General Public License. No version number. The GPL itself says this about permission grants with no version number: > 9. The Free Software Foundation may publish revised and/or new versions > of the General Public License from time to time. Such new versions will > be similar in spirit to the present version, but may differ in detail to > address new problems or concerns. > > Each version is given a distinguishing version number. If the Program > specifies a version number of this License which applies to it and "any > later version", you have the option of following the terms and conditions > either of that version or of any later version published by the Free > Software Foundation. If the Program does not specify a version number of > this License, you may choose any version ever published by the Free > Software Foundation. The last sentence is relevant here. I may choose the version. And I'm choosing GPLv2. Now according to the _original_ permission grant (on a project where you weren't the only copyright holder), we could technically have choosen GPLv1. Erik dropped GPLv1 when he moved the project to an explicit GPLv2 or later (http://busybox.net/downloads/svn-49.patch), and you haven't expressed outrage over that yet. I am now performing the corresponding action of dropping versions _after_ GPLv2 (which don't even _exist_ yet), and sticking with the only version of the license that has ever mattered for this project. The second thing I found when I started checking is that there's very little code left from 0.25. In the course of writing the email I didn't send on friday, I did what are now phases 1 and 2 of the still incomplete forensic analysis. (It took about 15 minutes, most of which was doing something else while "svn annotate" ran on each file.) The initial reason I did this was to find out exactly what we were arguing about. If I _did_ put in a sheepdip.txt, what specific code would I list as "once touched by Bruce"? When the answer came back "almost nothing", it turned into a deeper investigation to see if I'd missed anything. Initially, I started looking at the gzip and gunzip files (far and away the biggest source of old code) since I've had a todo item to do a security audit of that stuff for ages. The zlib code has had a dozen bugfix releases in the past decade, some of which I thought might apply to BusyBox. In June of last last year I asked Mark Adler to put up the old zlib versions so I could do this comparison, and he was nice enough to do so (it's got a big "do not use this old code, it has security problems" warning but it's up "http://zlib.net/fossils/"), and I've been too busy to actually do the comparison ever since. Seemed like a good opportunity, but imagine my surprise when I find out we're not even _using_ the zlib code, but a fork off a version of gzip released in _1993_. And that the only modifications in the 0.25 version was for the purpose of code removal. That was something I needed to know anyway, as maintainer of the project, not just for license compliance reasons but potentially for security auditing. By the time I was done comparing gzip.c and zlib.c, I'd already worked through about 2/5 of the old tree. Doing the rest seemed like the obvious move (although it's still a to-do item rather than something I've actually bothered to finish yet), and since I hadn't yet found any significant code tracing back to Bruce a possible way to permanently end Bruce's nagging suggested itself. By the way, trying out comparator is something I've been meaning to do since Eric (not Erik) wrote it, since he consulted me on its development (I was hanging out in pennsylvania at the time; my father and brother live less than an hour away from his house) but I'd never actually had an opportunity to try out the finished product. Yes, this isn't too far from the kind of thing I do for fun anyway. I believe I mentioned the whole "computer historian" thing? http://landley.net/history/mirror Putting it all together, by the time I got to a good stopping point I had a pretty good idea that your leverage over the code is purely a matter of reputation, and that the number of lines of your old code that we're actually still _using_ was at the very least small enough we wouldn't miss it, and quite possibly nonexistent. The approach I take to any code in the tree that has sufficient license concerns is to rip it out and write a new one. If you'd been following the list, you'd know this. This isn't anything _new_. Now that you've explicitly said "However, it's free software, and Rob has the right to do what he did." I consider that part of it resolved, although I may complete the forensic analysis just because we have everything else in the svn history, and it's good for future license enforcement efforts to know where everything we're still using but which we _don't_ have in the SVN history came from. (Again, part of the reason I was motivated to do it. You merely annoyed me into doing it _now_, rather than putting it on the endless todo list.) > > However, I take objection to being treated like hired help. > I do not think of you as hired help. But before you cast that stone, > think of how you're treating other folks on this project. I'm treating everybody equally. You're mad I'm not treating you specially. > > How'd the presidency of Linux Capital Group work out for you? > OK. If you insist. It's your mailing list. I'm sorry, I shouldn't have gone there. I should have held my tongue, the way I did on Friday. This isn't about you or me, it's about BusyBox. We differ on what's best for the project. The only reason our difference of opinion matters is that I'm maintaining a version undergoing a lot of volunteer development and regular releases. You are not. I have repeatedly and consistently encouraged you to start your own fork (from any current release version, or any svn version up through 16112) if you disagree with me that strongly. Instead, you want to change what I'm doing with the new versions I'm releasing, despite having failed to convince me through rational debate. You want to direct my work. I will, however, warn you that maintaining BusyBox requires a huge amount of work. Enough so that Erik didn't have time to keep up with it, and I spend most evenings and weekends working on it even though I selected my current job because they were cool enough to let me spend half my time working on BusyBox. Half-time is not enough. I've been doing this "a lot" (not necessarily full time but a very prominent hobby) for three years already, and A) my to-do list for the project is longer than ever, and still growing, B) I find myself regularly cleaning up my own past mistakes as I learn more and figure out better ways to do stuff, C) I feel I could do a better job if I had more time and energy. > >> However, it's free software, and Rob has > >> the right to do what he did. > >> > > > > Then why the public melodrama, on a list you have never previously been a > > member of? > > > It takes both fuel and oxidizer to make a flame. You're the one who came here. I didn't go to you. You're also the one who chose to do this on a public mailing list instead of in private email. > Thanks > > Bruce Thank you for expressing your opinion. I continue to disagree with you. The next major version of BusyBox that I package and ship will be licensed GPLv2 only, because I believe it to be in the best interests of the project's future development and I'm the one maintaining it. The older versions remain licensed under "GPLv2 or later", which are the licenses they were released under. I plan to release one more bugfix release to the existing code (1.2.2) which will also be licensed "GPLv2 or later", but that's probably it under the old dual license. Now that we've recapitulated phylogeny for this argument, I'm going to go do something else now. Rob -- Never bet against the cheap plastic solution.
This weekend's witch-hunt Bruce Perens bruce at perens.com Wed Sep 20 06:17:54 UTC 2006 Rob Landley wrote: > All the new code I'm adding to BusyBox for the next release will be GPLv2 only. > This is both the code I'm adding, and the license I'm accepting patches under. > This is your choice. I think it's unfortunate, but I do not see much point in attempting to change your mind at this time. I think it's important to keep other options open, and I'll make sure they are kept open in my version of the program. I am betting that this will be important someday, even to you. > This was not legally required, since GPLv2 only is a valid subset of GPLv2 or later. > IMO you may choose to combine pieces in a way that makes the GPL2 the only valid license for the combined work, but - and this is where we differ - you may not remove the "and any later version" from the various individual contributions without the permission of their copyright holders. Their declaration of the applicable license has all of the legal weight of the license text itself, and nothing in the GPL or the declaration gives anyone but the copyright holder the right to remove it. > Linus announced six > years ago (the Linux 2.4.0-pre8 announcement I linked to in a previous > message was from 2000) that they were not the same, that his code was (and > always had been) GPLv2 only. Where does that leave our Torvalds-written > applets? We write down this stuff BECAUSE people can change their minds or even just their interpretations. The "and any later version" is there in writing, in the designation of applicable license for that version of the kernel, and Linus can be held to it in court unambiguously. The GPL section 9 is not necessary to make this so. That said, I'm not sure that the minix filesystem is so important any longer. > Did anything else slip in on his watch? Did anything else slip in on my watch? I honestly don't know. > This could be dealt with through a public notice process. Publish the code and license with a call for objection by copyright holders. The only gotcha is that SCO and its ilk could choose to make a false claim. > I realize that you don't have this drive. Some races can be won by taking a different route, rather than by being faster or stronger. I think a much more distributed effort is possible. I do not intend to work on this every evening, nor do I intend for anyone else to have to do that. As VP of Sourcelabs I may be able to make some new partnerships with companies that embed Busybox. Some of them are already our customers. Not all of them are putting in what they could. > The last sentence is relevant here. I may choose the version. Yes, for the overall work. But you seem to believe that you have the right to remove someone else's right to choose a different GPL version to use with a particular fragment of code, where the copyright holder has made the right to use that version available. > I'm treating everybody equally. You're mad I'm not treating you specially. > Sorry, but I have to reject this. What I have asked for everyone should have. > I'm sorry, I shouldn't have gone there. I should have held my tongue, the way > I did on Friday. > OK, thank you for realizing that. Bruce
This weekend's witch-hunt Rob Landley rob at landley.net Wed Sep 20 16:56:39 UTC 2006 On Wednesday 20 September 2006 2:17 am, Bruce Perens wrote: > Their declaration of the applicable license has all of the > legal weight of the license text itself, The GPL has an anti-severability clause. Their license declaration does not. (And if it did, you couldn't drop support for GPLv2 at some point in future, plus it would raise interesting questions of having to satisfy the conditions of _both_ licenses, when GPLv2 and GPLv3 aren't compatible.) The copy that went through _me_ had other redundant permission grants stripped off of it. There are clean sources elsewhere (in the same directory, even) that have additional license grants, but that's not my problem. And I did ask lawyers. Would you like to go talk to the SFLC directly? Their email address is on their website. I'm running out of patience to try to educate you with. > > Linus announced six > > years ago (the Linux 2.4.0-pre8 announcement I linked to in a previous > > message was from 2000) that they were not the same, that his code was (and > > always had been) GPLv2 only. Where does that leave our Torvalds-written > > applets? > We write down this stuff BECAUSE people can change their minds or even > just their interpretations. The "and any later version" is there in > writing, No, it is not. You keep mouthing off about things you didn't check. From BusyBox 0.25: /* * mkswap.c - set up a linux swap device * * (C) 1991 Linus Torvalds. This file may be redistributed as per * the Linux copyright. */ Now let's take another of Linus's files: util-linux/mkfs_minix.c from current: 39 andersen /* 39 andersen * mkfs.c - make a linux (minix) file-system. 39 andersen * 39 andersen * (C) 1991 Linus Torvalds. This file may be redistributed as per 39 andersen * the Linux copyright. 39 andersen */ And svn 39 was a looooong time ago. Now if Linus _had_ said it could be used under GPL without citing any specific version --AS ALL YOUR CODE DID-- then according to clause 9 of GPLv2 we could have chosen _ANY_ version of GPL, including GPLv1. So when Erik tightened the license to GPLv2 or later, all he was doing was dropping GPLv1. By your arguments, he's wasn't allowed to do that in the first place, all those years ago. Your arguments do not match the current facts. You're not arguing any coherent legal theory, you're merely repeating what you _want_ over and over. I objected to your lack of any coherent legal theory earlier, when I pointed out that your position is not internally consistent. You brushed it off, but the fact remains that you haven't even got logic on your side. Just a burning need to be right. > This could be dealt with through a public notice process. It could be dealt with by throwing stuffed animals at it. You're still arguing what you want, not a legal position. > Publish the > code and license with a call for objection by copyright holders. The > only gotcha is that SCO and its ilk could choose to make a false claim. No, the gotcha is that it doesn't prove anything. If a copyright holder in another country doesn't hear about the call, their copyright is not invalidated, and we haven't got the right to grant new licenses on their code. By your logic my old "calculate internal rate of return" code (which I haven't touched since the late 90's but I vaguely remember sending to the gnucash project once upon a time) could be ripped out of GPL and put into BSD (and from there a proprietary product) simply because I didn't hear about the relicensing until afterwards and didn't object at the time (well I don't follow gnucash anymore). This would _not_ stop me from filing a lawsuit. Remember the guy who suddenly started enforcing his copyrights on "happy birthday" in the 1980's? After _decades_ of not enforcing it? Copyright doesn't have to be defended ot remain valid, you're confusing it with trademark law. (Linux 0.12 was young enough with a small enough number of contributors that Linus _could_ contact them all. BusyBox is not.) You are a positive _fountain_ of bad legal advice. > > I realize that you don't have this drive. > Some races can be won by taking a different route, rather than by being > faster or stronger. Then do so. I repeat for the... 5th time? Fork the darn project if you care this much. But GO AWAY. > I think a much more distributed effort is possible. > I do not intend to work on this every evening, nor do I intend for > anyone else to have to do that. As VP of Sourcelabs I may be able to > make some new partnerships with companies that embed Busybox. Some of > them are already our customers. Not all of them are putting in what they > could. Sounds like you're in an _excellent_ position to maintain a GPLv3 fork of the project then. But I'm not doing it anymore. > > The last sentence is relevant here. I may choose the version. > Yes, for the overall work. But you seem to believe that you have the > right to remove someone else's right to choose a different GPL version > to use with a particular fragment of code, where the copyright holder > has made the right to use that version available. If I merge a GPLv2 only patch in with a file, that file is GPLv2 only. We touch every file in the tree an average of about twice a year with global function renames and such. I remember back in 1996, I wanted to improve the CRC algorithm in something I was doing for IBM. Their CRC table calculation was a page full of code, and I knew a way to calculate the table in two lines, which I'd come up with by simplifying the info-zip code when I was porting it to Java (shortly before Java 1.1 came out with the deflate algorithm in the library, rendering the whole thing moot to the point where I never finished it). IBM's lawyers objected to using the algorithm from that source, and urged me to try to find it in a book somewhere instead. (Yes, they were objecting over _two_lines_. This is where I learned some of this caution.) I wound up leaving the code alone instead. I have coworkers who do clearances for the Gutenberg project, and one of the tricks they use is to find old serial magazine versions of stories that predate the book, and prove that the book may have had its copyright renewed (under the old pre-berne convention laws requiring renewal) but the magazine version didn't. And then they OCR the magazine version. It's 99.9% the same material, but it's from a different source. (P.S. They point out that the filing on Happy Birthday was 1936, but wasn't the first publication, and if they could find the book with the earlier copy they could show that it wasn't renewed, which is separate from being defended and no longer a requirement on copyrights after 1989 when the enabling legislation for the US being a signatory to the Berne convention took effect.) The original author of the file can decide to grant permission to use their code under CDDL, or OSL, or who knows what. They can do this retroactively, after I get the copy that just says "GPLv2 or later". I don't have to _add_ a permission grant to my copy for the other licenses. I may not even _know_. I'm only required to document the set of licenses I actually use to distribute the thing, to prove that I had the right to distribute it. Having multiple licenses gives you multiple options, but you only need one. And the license I'm using is GPLv2. Deal with it. > > I'm treating everybody equally. You're mad I'm not treating you > > specially. > > Sorry, but I have to reject this. What I have asked for everyone should > have. Your god complex is not my problem. You certainly don't speak for _me_, and I'm sure I could find a few others if I bothered. But one more try. The 1.2.1 version still exists. Any source code in the next -devel release that can still be used under GPLv3 must exist, in its entirety, in 1.2.1. So they do have this. What you're asking for is the same thing packaged in a different way, and a stupid way at that. Anyone trying to cherry-pick code under one license out of a project under another license is on pretty shaky legal ground to start out with and had better be able to show their work. We _do_ edit this code, regularly, right in the middle of it where you won't notice it without doing svn annotate, and after svn 16112 those changes are NOT available under GPLv3. Any laywer will tell you that if there's a clean source you can go to that _won't_ raise these kind of questions, you should use that clean source if at all possible. What you're asking for would only _encourage_ license violations. I realize how desparately you want to undermine the GPLv2 only state of the next release of BusyBox. I realize that you want GPLv3 to become the only licensed anyone uses. But neither is going to happen. This discussion serves no further purpose. If you have any other questions, please ask them of the Software Freedom Law Center. If you send them to me, I'll forward them to the SFLC so they can answer them. Rob -- Never bet against the cheap plastic solution.
This weekend's witch-hunt Bruce Perens bruce at perens.com Wed Sep 20 17:41:59 UTC 2006 Rob Landley wrote: > The GPL has an anti-severability clause. Their license declaration does not. Sorry, this is way out of left field. A court has the power to sever a license term if and only if it finds the license term to be unlawful. That is the only way it happens. Third parties like you and me do not have the power to arbitrarily sever terms that copyright holders have put on their own property. > (And if it did, you couldn't drop support for GPLv2 at some point in future, Technical support? I guess that's just unclear wording. Once you put something out under GPLv2, everyone has the right to use GPLv2 on that particular piece, forever. There is no termination. You can't withdraw it. But you don't have to help them in any way, if that's what you mean by support. > plus it would raise interesting questions of having to satisfy the conditions > of _both_ licenses, when GPLv2 and GPLv3 aren't compatible.) > A complete work would have to be licensable under one license or the other, not the logical union of the terms of both. > The copy that went through _me_ had other redundant permission grants > stripped off of it. There are clean sources elsewhere (in the same > directory, even) that have additional license grants, but that's not my > problem. > I really don't think this is the case. > Would you like to go talk to the SFLC directly? > I know them, talk with Eben regularly, had lunch with the entire staff sometime last year. Since you insist, I will inquire with them. Thanks Bruce
Copyright 2006 http://lists.busybox.net/pipermail/busybox/