Skip site navigation (1)Skip section navigation (2)
Date:      06 Oct 2002 18:34:43 -0700
From:      swear@attbi.com (Gary W. Swearingen)
To:        "Oliver Fromme <olli@secnetix.de> writes:"@FreeBSD.ORG
Cc:        freebsd-chat@FreeBSD.ORG
Subject:   Re: grub boot loader or freebsd boot loader
Message-ID:  <1b8z1b8218.z1b@localhost.localdomain>
In-Reply-To: <200210061033.g96AXQoT034492@lurza.secnetix.de>
References:  <200210061033.g96AXQoT034492@lurza.secnetix.de>

next in thread | previous in thread | raw e-mail | index | archive | help
I've moved this to -chat as the thread is going on too long for
-questions.  I hope that's enough reason to ignore your "reply-to".

Oliver Fromme <olli@secnetix.de> writes:

> Gary W. Swearingen <swear@attbi.com> wrote:
>  > Nobody said the kernel would be considered a derivative of any
>  > bootloader, but a CD which contains both is a derivative of both.
> 
> Which is not a violation of the GPL.  You can distribute
> GPL and non-GPL software on the same CD, or put it on the
> same FTP site, or whatever.  That's what everyone does.
> We do it, Sun does it, etc.

Sometimes you may; sometimes you may not.  It depends on the nature of
the software involved.  For an obvious example, you may not do it with a
GPL'd library and a closed-source program which uses the library.
(According to some copyleftists, you may not even distribute the program
without the library.)  In the loader case, it's debatable and too risky.

> The problem with the GPL arises as soon as you merge code
> from GPL software with other code, e.g. by taking parts
> of its source and compiling it together to produce one
> object file or executable, or by linking them together
> (unless it is only LGPL and not real GPL).

That's true, except that there are other problems too.  Copyright law
doesn't care about compiling and linking; it cares about the publishing
of derivative works, among other things.  The problem is that the GPL is
very unclear about which derivative works it allows to be legally
published without GPLing the "entire whole".  A GPL quote:

    These requirements apply to the modified work as a whole.  If
    identifiable sections of that work are not derived from the Program,
    and can be reasonably considered independent and separate works in
    themselves, then this License, and its terms, do not apply to those
    sections when you distribute them as separate works.  But when you
    distribute the same sections as part of a whole which is a work
    based on the Program, the distribution of the whole must be on the
    terms of this License, whose permissions for other licensees extend
    to the entire whole, and thus to each and every part regardless of
    who wrote it.

    Thus, it is not the intent of this section to claim rights or
    contest your rights to work written entirely by you; rather, the
    intent is to exercise the right to control the distribution of
    derivative or collective works based on the Program.

Note well the last sentence which refers to "collective works".

Given the "mere aggregation" clause, it comes down to a debate about the
meaning of the second sentence quoted above, particularly the phrase
"independent and separate works".  The sequel of the sentence makes
things worse by saying that this escape clause is only good "when you
distribute them as separate works", another clause with debatable
meaning.  And note that it says "not derived from the Program [*AND*]
can be reasonably considered independent and separate works in
themselves"; not "*OR*".

Would our kernel, published with a GPL'd boot loader which is
operationally just a kind of prefix chunk of the kernel, be considered to
be independent and separate and to be distributed as a separate work, in
this case?  You might think so, but I don't see how you can be so sure
that the owner(s) of GRUB (or GAG) might not think so some time in the
future after the alleged copyright infringement has occurred.  It would
be too risky to make such a guess, IMO and others'.

>  > And remember that you may boot FreeBSD from the NT boot loader, but
>  > you'd better not publish a CD containing both.
> 
> If you've got a license for the NT boot loader to do so,
> there's no problem to do that.

Well, of course, but the only license that most people get for the
NT boot loader is (I suppose) very clear about not licensing you to
do that.  The GPL is (I know) too unclear.

>  > (Nobody says there's a
>  > legal problem with using a GPL'd loader locally, but making it part of
>  > the core of the distributed OS is too risky.)
> 
> Certainly not.  A boot manager is as separates as it can be
> from the rest of the system.  It's running in real mode.
> It does not share or merge _any_ code with the rest of the
> system.  And it is optional -- you can boot FreeBSD without
> it.

The GPL doesn't care whether something runs in real mode.  So we
needn't, either.  Your argument about sharing and merging obviously
fails for a GPL'd library and a closed-source program (or vice versa)
and from the point of view of copyright law and the GPL, the rules don't
change for an open-source kernel and boot loader.  (Just like they don't
change when the GPL allows you to distribute a GPL library with both
open- and closed-source programs which don't use the library.)
 
> Think about gcc in our base system.  Or GNU-awk, GNU-tar,
> cvs, groff, gzip, send-pr, and many others.  Just as an
> example, take awk (which is GPL, not even LGPL).  It is
> linked against our (non-GPL) libc.  Sure, you can install
> a different (slightly incompatible) version of awk from
> the ports collection, such as bawk, but the question is
> if we are even allowed to link gnu-awk with our libc.

Well, the penultimate paragraph of GPL section 3 is widely thought to
have an excape clause for that, but it seems clear to me that it only
escapes the narrow requirement about supplying source code.

You've gotten to a difficult question.  Clearly, these programs are less
risky because they are more likely to be considered "independent and
separate" than a boot loader.  But that's not enough for me.  I wish
that answer is that those programs (in distributions, at least) are
statically or dynamically linked against GNU libraries.  But I suspect
that we're just getting by on the good graces of those program's owners
to not consider dynamic linking as infecting, as some copyleftists do,
or to not try enforcing it upon us (yet).  IIRC, some of the programs
owned by the FSF are less risky because of statements by a FSF director
which allow our use, but don't quote me on that.

I consider any GPL program which links to non-GPL libraries to be too
risky to distribute with the OS, unless the owners are on the record
as extending the terms of their licenses to explicitly permit it.

If you can get the permission of GRUB's owners, the risk would be more
acceptable.  It would still make us vulnerable to having to make changes
after a project license change (eg, GPL-3?), but that's probably OK.

>  >  > I'd be much more concerned about other GPL'ed parts of the
>  >  > base system.

[quote added back]

>  > Why is that not "mere aggregation", and allowed by the GPL?
> 
> No, that's exactly the reason why the LPGL exists.

I was thinking they were pure GPL and didn't think they were linking to
non-GPL libraries.  I now see why that might not be mere aggregation,
but I do not see why you would be "much more concerned", nor why you
brought up the LGPL.  (The LGPL doesn't work with LGPL'd programs
linking to non-GPL'd libraries, AFAIK.)

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-chat" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1b8z1b8218.z1b>