Slashdot Mirror


Kororaa Accused of Violating GPL

AlanS2002 writes "The Kororaa Project, a pre-configured binary install method for Gentoo Linux which bundles nVidia's and ATI binary drivers in its Kororaa Xgl Live CD , has put its Live CD on hold after being accused of violating the GPL. The issue appears to be the distribution of the Linux Kernel and nVidia's/ATI binary drivers together. When the binary drivers are built the GPL'ed code is included in the binary result, which is a violation."

103 of 843 comments (clear)

  1. All the more reason... by EraseEraseMe · · Score: 2, Insightful

    To avoid the GPL. I thought it was supposed to make things simpler, not have all of these caveats and 'gotchas'. I understand the next version of the GPL is supposed to eliminate these, but then there's the problem with dealing with multiple versions of the GPL.

    I wonder if we're going to start getting stories on "Random Joe Programmer Violates the MS EULA".

    --
    "Anybody who tells me I can't use a program because it's not open source, go suck on rms. I'm not interested." (LT 2004)
    1. Re:All the more reason... by Poppler · · Score: 5, Insightful

      I thought [the GPL] was supposed to make things simpler, not have all of these caveats and 'gotchas'.

      You are confused. The GPL is designed to keep software big-F Free. The "caveats and 'gotchas'" are very much the point.

      --
      What's the ugliest part of your body? Some say your nose, some say your toes, but I think it's your mind. -Zappa
    2. Re:All the more reason... by muyuubyou · · Score: 2, Insightful

      This hurts Linux adoption big time. If hardware vendors and developers are not even sure they're allowed to support Linux (provided opening the source is often not a possibility) then that itself is a big wall in front of GNU/Linux adoption and support.

    3. Re:All the more reason... by EmoryBrighton · · Score: 3, Interesting
      All the more reason... To avoid the GPL. I thought it was supposed to make things simpler, not have all of these caveats and 'gotchas'. I understand the next version of the GPL is supposed to eliminate these, but then there's the problem with dealing with multiple versions of the GPL.
      It's sadly true... The GPL is far too restrictive. I do not believe the FSF will ever 'force' any of the major GPU makers to open source the software.

      ... but they could always switch to the FreeBSD kernel, they already have a Gentoo/FreeBSD project going on.
      --
      Rule 2: Writing a spec is like writing code for a brain to execute.
    4. Re:All the more reason... by vadim_t · · Score: 2, Insightful

      At this point, the Linux kernel is GPLd forever.

      So if you don't like it, just don't use it. If you want FreeBSD or Windows, you know where to find it.

    5. Re:All the more reason... by muyuubyou · · Score: 2, Interesting
      Linux is a GPLd OS. If that doesn't suit you then you're quite right to use something else.


      It suits me fine, but it doesn't suit many people for this reason. Lacking userbase causes many problems, like the lack of hardware support and ultimately vendor support. It helps nobody.

      I seem to detect some aggressiveness in your reply. You have no business in telling me which OS to use or quit using.

      HAND
    6. Re:All the more reason... by computerjunkie · · Score: 4, Insightful

      Have you ever read a standard EULA? The GPL is simple by comparison.

    7. Re:All the more reason... by Tet · · Score: 5, Insightful
      This hurts Linux adoption big time.

      Thus speaks the voice of one who sees widespread adoption of Linux as a goal. Others see the creation of a free operating system as the goal instead. The two aren't mutually exclusive, but nor do they go hand in hand. I would rather see Linux remain a niche OS than sacrifice my principles to chase market share. Of course, I'd like to see Linux gain widespread adoption as well. But if it came to a choice between the two, I'll stick with what I believe to be right.

      --
      "The invisible and the non-existent look very much alike." -- Delos B. McKown
    8. Re:All the more reason... by It'sYerMam · · Score: 2

      And stepping onto the "real world" side of the fantasy line, we should be damn pleased we don't have to make do with amateur efforts. The guys on the linux wing of ATi, at least, work real hard at what they do. They listen to the community, fix bugs and generally get a tight budget and a tight staffing arrangement. If you think you can convince department managers of ATi to give funding to the linux side of operations, go for it, but I think that is somehow unlikely.

      --
      im in ur .sig, writin ur memes.
    9. Re:All the more reason... by sumdumass · · Score: 3, Insightful

      it isn't that you cannot use a program, it is that you cannot use certain programs when redistributing gpl'd products. You are free to use it all you want if you don't trip anything in the gpl designed to protect free software.

      Now, i too think this is bullshit. There are alot of users out there that don't have the skills or abilities to install NVidia's or ATI's drivers and have it working corectly. Also, it seems that you cannot use them in a live cd so performance is thrown out. It doesn't matter how free software should be, this just holds it back. It is no wonder propriatary software vendors are fearful and sticking with microsoft only products. Situations like this do nothing but re-enforce all those GPL is viral statments. It is a shame that this hasn't been adressed before. Linus has glanced on the issue with before GPL kernel libraries verses others and non-GPL'd software using them. This topic should be closed at this point in life.

    10. Re:All the more reason... by sumdumass · · Score: 2

      This actualy effects both the goalsmofr having a free operating system as well as having wide spread adoption. It isn't as easy as someone placing a non GPLed piece of software into the mix either.

      First and probably foremost, It would apear that the confusion surounding the GPL and the constant misinterpretations could take your free software and close it real fast. Linus already touched on this a few years back It was my impresions that the whole Nvidia-ATI issue was settled then. Evedently, it has come back with just as much confusion as ever. Now how this effects Free software is tricky. Most of the developement on major OSS is sponcored by some for profit company. What will happen when all the money surrounding OSS is pulled because someone changes the interpretation of the GPL again and those companies feel they canno0t use the software to thier benefit. Sadly, this could be the case at some point in time or be enough of a threat to cause it to be an issue. It is just as bad as that time someone claimed you could retain a closed copyright on any documents produced using free fonts because the fonts gets embeded in the document and that automaticaly makes it GPLed.

      Of course that issue turned out to be complete rubbish but, it might be enough cause that governments couldn't use them because of clasified information now being opensourced. Could you imagine the stict interpretations like this causing open document format to specdificaly not be GPL compatible because the idea behind it (in mass anyways) is that someone owns the content and doesn't want to be held hostage to some corperaqtion. And if open document was opensourced, the argument could be made that no one owns the content again?

      Definatly clerifications need to be made. Little incedents like this shouldn't be poping up.

    11. Re:All the more reason... by Arker · · Score: 2, Insightful

      Suppose we completely set aside the goal of widespread adoption, and simply leave open the goal that people should be able to use Linux to do whatever they want. That's not too controversial, right?

      You can do that. And if you want to install blobware drivers, that's ok too. The license only controls what you can redistribute.

      You're perfectly within your rights compiling a binary blob into your kernel. (Not too smart, but hey, it's your choice.) You just can't distribute the result to unsuspecting third parties.

      1. ATI and Nvidia should be forced to open up their drivers. Great idea, but no one has been able to do it.

      No one's been trying to do that. No one wants that.

      The goal is to get them to publish interoperability specs - simply the interface information - so that good free software programmers can write good free drivers to talk to the hardware without wasting a lot of effort reverse-engineering what should be public information.

      Reverse engineering isn't actually that hard to do, I'm sure that any Nvidia competitors that see any advantage to be gained by it have already done it. But their developers get paid to do what they're told. Why on earth would free software developers volunteer a disproportionate amount of their time to supporting a product if the manufacturer isn't willing to communicate with them?

      It's simple, if Nvidia wants to sell their hardware to free software folks, they need to be reasonable about this. And if not, we'll buy other brands.

      There are a huge number of other cards out there with known interfaces and well written well supported drivers. None of them are quite as fast as the latest from Nvidia and ATI, but anyone that trades their freedom for a couple more frames per second in Quake deserves what they get.

      7. If you want to use software that requires hardware 3D acceleration, you have to pick a closed source OS -- either OS X or Windows.

      That is simply not true. You can get hardware 3d support with free drivers. You just have to be pickier about which video card you buy - and willing to get something not quite as powerful as the latest and greatest from nvidia.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    12. Re:All the more reason... by geminidomino · · Score: 2, Insightful

      Being able to see the code for all forks? Oh wait, that's GPL, not BSD. BSD may seem more free in the short term, but in the long term GPL wins.

      Sorry, you must be confusing me with the average American sheep. I'm not fooled into beleiving that "doing what we say makes you free," no matter whether the "we" is the government or the FSF. The GPL has its place, but that place is not at the pinnacle of "freedom." Restrictions are restrictions, whether they come from Stallman or Gates, and restrictions are the opposite of freedom.

      And don't give me that bullshit line about the "code," rather than the "coders" being "free as in freedom." Freedom is the existance of self-determination. It requires sentience first.

      What, in particular, is more powerful and/or flexible about BSD? It's mostly the same programs once you get past the basic toolchain(and even there, both parties use gcc)

      I wasn't comparing to BSD, just the BSD license. I was comparing to other desktop systems (Nvidia cards aren't a big deal in servers), IOW, windows. The power of linux, for me at least, is in the CLI with tools like grep, sed, and perl. I can do tasks in minutes that would take me hours in Windows (cygwin notwithstanding). Also that all of the system data is right there for you in both Linux and FreeBSD (the BSD I'm familiar with).

      Free/Open/NetBSD: $0
      Gentoo/Debian/Fedora/Ubuntu Linux:$0
      If you're paying for Linux, you're actually paying for either support from RH, Novell, or similar, or for the costs to mail a CD to you. The latter is at most a few bucks, the former costs more but it's still a bargain compared to the commercial Unices those distros are trying to replace.


      Again, referring to Windows' price tag, not BSDs. Actually, I pay for CDs from FreeBSD and Slackware. I get no support, but I support the projects. FreeBSD because I've been running servers on it for years, and Slackware because Pat makes a solid distro with none of Debian's bullshit politics.

  2. Yep. by Anonymous Coward · · Score: 4, Insightful

    This is one example of why the GPL is a terrible license. People are trying to add useful things to the Linux kernel so more people use it and your license is restricting it. Use a BSD style license if you want to distribute your code open source.

    1. Re:Yep. by FooHentai · · Score: 2, Insightful

      That's a bit unfair. The GPL license is a ray of light in an otherwise very dark legal minefield,IMO.

      I think what you see as a problem with the GPL license is actually a sign of the times which the GPL couldn't avoid even if it wanted to. Heck, I think it's the very reason why the GPL exists today.

      It's the case now not that this particular license is unduly restrictive, but that the state of copyright/licensing across the world is so farcicaly ubiquitous and overbearing that if you don't have a solid knowledge of all the copyright over the code you're working with, you get burned.

      At least in this case it's unlikely the various parties who might enforce the GPL will come out with fangs bared. In that respect, it's good that they've fallen foul of the GPL rather than any other licence which might be enforced that much more aggressively.

  3. tainted kernel by rehabdoll · · Score: 2, Insightful

    Tainting the kernel makes it non-compatible with the gpl. This is not normally a problem on your home-system, but if you redistribute the tainted kernel you violate the gpl. Whats the big deal? just remove the evil binary-only drivers and all is well.

    or perhaps im wrong, what do I know, anyway?

    1. Re:tainted kernel by tomstdenis · · Score: 4, Informative

      It only taints the kernel if you load the module. The kernel itself [the bzImage] is entirely based on GPL code.

      So don't autoload the drivers and the kernel will not load with a tainted status. /me shakes head...

      Tom

      --
      Someday, I'll have a real sig.
    2. Re:tainted kernel by Kortec · · Score: 3, Insightful

      The problem with this is that the "evil" closed sourced drivers, in this case, are hands-down better. The folks at nVidia actually seem to care about the Linux community, and therefore bother to keep up with our development and produce drivers that perform top-notch for us. It's more than a little odd that the thanks they recieve for their efforts, other than my video card dollars, is GPL violetions, but that's the case.

      --
      "My heart is in the work." - Andrew Carnegie
    3. Re:tainted kernel by Anonymous Coward · · Score: 3, Insightful

      "It only taints the kernel if you load the module. The kernel itself [the bzImage] is entirely based on GPL code.

      So don't autoload the drivers and the kernel will not load with a tainted status. /me shakes head...

      Tom"

      Thats bullshit as I look at it.

      That driver requires GPL'd code to be compiled. It requires GPL'd code to run. It's obviously kernel-derived and thusly it violates the GPL.

      The tainting is there to inform end users that their kernel is tainted with non-gpl'd code it's not there to decide weither or not distributing GPL'd-derived software in closed source form is legal.

    4. Re:tainted kernel by KiloByte · · Score: 3, Informative

      No, stop the FUD, please.

      As a special exception, the Free Software Foundation gives unlimited
      permission to copy, distribute and modify the configure scripts that
      are the output of Autoconf. You need not follow the terms of the GNU
      General Public License when using or distributing such scripts, even
      though portions of the text of Autoconf appear in them. The GNU
      General Public License (GPL) does govern all other use of the material
      that constitutes the Autoconf program.


      However, if the exception was not there, anything that needs autoconf would have to be licensed under a GPL-compatible license. Not necessarily GPLed itself -- if your piece of software is, for example, under BSD3, anyone can replace GPLed parts with something else and be not bound by the GPL any more.

      In nVidia's case, though, there is no such exception, and it would be next to impossible to get it, considering that every single contributor to the Linux kernel would have to grant it. Including those who are dead (in which case you need to track down whoever inherited the copyright) or in persistent vegetative case (in that case you're simply out of luck until they die).

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    5. Re:tainted kernel by Anonymous Coward · · Score: 2, Informative

      No. Autoconf is part of the build environment, not part of the final program. The issue with binary kernel modules is quite complicated (not really, but it goes deeper than many people care to look). On one hand there is a license incompatibility between a GPLd kernel and a closed-source kernel module. For these to work together, the kernel module needs to be linked into the kernel, which, in the terms of the GPL, makes it a derivative work. On the other hand there's standard copyright law which allows the use of published interfaces. So, when the binary kernel module is distributed alone and the distributor never distributes the kernel against which it was compiled, then there is no problem. But someone who distributes the kernel must also distribute the source to all binary kernel modules he distributes with it, because distributing the kernel requires acceptance of the kernel's license. According to the GPL, a module which is compiled to be linked into the kernel is a derivative work and thus must also be licensed under the GPL. There you go, this is the reason why Linux distributions don't include proprietary kernel modules and make you get them from the internet instead.

    6. Re:tainted kernel by idonthack · · Score: 4, Insightful
      just remove the evil binary-only drivers and all is well.
      Except XGL is Kororaa's main feature (in fact, the only reason for the LiveCD), and that won't run without those drivers. If they take the drivers out they might as well just not do it.
      --
      Why is it that when you believe something it's an opinion, but when I believe something it's a manifesto?
    7. Re:tainted kernel by swillden · · Score: 4, Informative

      So don't autoload the drivers and the kernel will not load with a tainted status.

      That doesn't make any difference.

      Copyright law prohibits the creation of derived works without permission, and the GPL does not grant that permission unless you distribute source. So the question boils down to "Are the binary-only modules derivative works under the law?".

      The answer is: yes and no. The modules come from ATI and NVidia in two parts: a binary-only part that contains all of the interesting code, and some "glue code" that is distributed in source. Both parts have liberal redistribution permissions, which makes the GPL happy, so the big issue is source.

      The argument is that the core, binary-only components of their drivers are not derived works of Linux, since they contain no Linux code (not even any headers) and I think they even claim that the same binaries are used on other platforms and wasn't developed specifically for Linux, at least in the beginning. The glue code that they distribute that wraps the binary-only component is clearly a derived work of Linux, but they distribute the source to that.

      When a user compiles the glue code and links it with the binary-only component to produce a kernel module, the result is a derived work of the GPL'd Linux kernel. Note that I didn't say "and loads it into a running kernel". That's not really relevant. Technically, it's somewhat unclear whether the GPL gives users the right to create otherwise unauthorized derived works, but the general interpretation (including by the FSF) is that people can do whatever they like, and it's only when they start distributing that the question of whether or not the GPL has granted them permission becomes important.

      When someone takes that same compiled glue plus binary module and distributes them, they're distributing a derived work of Linux, without complying with the terms of the GPL, and therefore without permission to distribute under copyright law.

      I think it's quite clear that Kororaa cannot do this without infringing Linux copyrights. The only way they can justify it is if they can argue that the binary kernel modules (glue + core binaries) are not, under the law, derived works of Linux. That seems like a tough one, but IANAL, so maybe it's possible.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    8. Re:tainted kernel by dhasenan · · Score: 2, Informative

      Great. I'll just inform these people that they should stop offering GPL'd stuff based on a system with a non-GPL license.

      Now. The question of whether they can be distributed together, not just run together, is addressed in section 3 of the GPL. Briefly, it states that you must make the source available to any GPL binaries you distribute. Since the GPL binaries in question are the kernel and just about everything besides the nVidia/ATi drivers, you need to have the source for those available. Since those drivers aren't GPL, you don't have to have the source for the drivers available.

      The GPL says nothing about whatever else you want to distribute with your distribution.

    9. Re:tainted kernel by lspd · · Score: 2, Insightful

      Except XGL is Kororaa's main feature (in fact, the only reason for the LiveCD), and that won't run without those drivers.

      And this is the sleeping evil of ATI and Nvidia's binary drivers. Most recent 3D games for Linux were developed using these binary drivers. XGL also seems to be written largely for the binary-only drivers (you might get some of the old Radeon's or some of the newer Intel chips to work with DRI, but that doesn't seem to be the emphasis.) The fact that developers are writing software that relies on these proprietary blobs for acceptable performance is a step backward for free software. I would rather have the X we have today than an improved X that only works when I install non-free drivers.

    10. Re:tainted kernel by IamTheRealMike · · Score: 2, Insightful
      Well, then they can't do it! It's just yet another example of how proprietary software restricts innovation...

      nVidia developers wrote large parts of the GLX_ext_texture_from_pixmap specification which the whole framework revolves around. They've been contributing to the debate on how to evolve X into the 21st century. Their engineering team have been consistently supporting new features as the X community add them. Not only are nVidia not restricting innovation, they are taking part in it! The fact that some people would rather have an all or nothing situation (and get nothing) does not mean everybody shares that philosophy.

  4. rules are rules... by stikves · · Score: 2, Insightful

    GPL shooting the "good guys" this time. Nevertheless if the open source community will not obey the rules no one will.

    Fortunately there are many ways for them to exit this situation, and I hope everything will be cleared soon.

  5. Whaaa? by BobPaul · · Score: 3, Insightful

    I always thought it was ok as long as they provided everything necessary to build the CD on your own, IE all of the GPL code that was used and which non-GPL packages (the nVidia and ATI drivers) were used.

    If anything I would have expected this to be a violation of nVidia and ATI's copyright, distributing their drivers rather than sending people to their respective websites to download.

    1. Re:Whaaa? by BobPaul · · Score: 3, Informative

      Nope. You have to provide every piece of source code necessary to build it. The maintainers of KORORAA don't have the source code to NVidia and ATI drivers. Hence the violation.

      No, that's blatently wrong. OpenWRT includes the closed source BroadComm network driver, and RedHat Enterprise includes lots of Redhat only software that isn't GPL.

      Now, if you created your own custom kernel in order to make the binary drivers work, but then didn't include the source code for that, I would agree with you. But they didn't modify the kernel at all. They just compiled kernel modules.

      If the drivers themselves were "Derived works" then that would prohibit distribution. However, that would also prevent people from using them at all and require ATI and nVidia open sourced the drivers. This is not the case, though. The drivers contain a GPL kernel interface and a binary only driver. The kernel interface that the ATI and nVidia drivers use is the derived work, and is opensource. You can get it in the respective packages from ATI and nVidia's websites.

    2. Re:Whaaa? by mrsbrisby · · Score: 4, Insightful

      No, that's blatently wrong. OpenWRT includes the closed source BroadComm network driver

      If OpenWRT is distributing a Linux kernel with closed-source software linked into it, then yes, they are violating the GPL.

      and RedHat Enterprise includes lots of Redhat only software that isn't GPL.

      As far as I know, RHEL doesn't allow their trademark to be redistributed. That's a very different thing.

      Now, if you created your own custom kernel in order to make the binary drivers work, but then didn't include the source code for that, I would agree with you. But they didn't modify the kernel at all. They just compiled kernel modules.

      But the kernel modules are based on the Linux kernel. They use hidden magical interfaces. They don't necessarily make the modules GPL (says Linus), but that doesn't mean the resulting linked modules can be redistributed.

      If the drivers themselves were "Derived works" then that would prohibit distribution. However, that would also prevent people from using them at all and require ATI and nVidia open sourced the drivers. This is not the case, though. The drivers contain a GPL kernel interface and a binary only driver. The kernel interface that the ATI and nVidia drivers use is the derived work, and is opensource. You can get it in the respective packages from ATI and nVidia's websites.

      You're confused. The GPL isn't a usage-license, it's a redistribution license. You're free to download ATI or NVidia's copyrighted work (as they say- that's their distribution) and compile and link them into your kernel. You cannot redistribute your binary modules, or your built kernel with them, because you cannot satisfy the requirement of the GPL that says you need to be able to provide source code for those things.

    3. Re:Whaaa? by mrsbrisby · · Score: 3, Interesting

      You are wrong. I'll only speak in regards to Nvidia, though I believe ATI is the same. There are two parts to the Nvidia driver. One is the actual binary driver and one si the kernel interface. Nvidia provides source for the interface and that is wht gets compiled. Nvidia also ditributes precompiled interfaces for serveral distro's kernels. If there is a GPL violation, then Nvidia has been violating copyright for a long time.

      You do not know what you are talking about.

      NVidia cannot produce a GPL violation because NVidia is not redistributing NVidia's software. They are the copyright older. If you give someone else NVidia's software then you are redistributing it.

      GPL only applies to redistribution.

      The interface you can treat as LGPL.

      You're confused. GPL and LGPL are redistribution licenses. They are not usage licenses.

      Linus explicitly said that some of the interfaces are stable and do not constitute aggregation. Of those interfaces, all of the syscall-exported interfaces and a few kernel-internal interfaces.

      So the question is basically can someone link a closed source binary to a LGPL binary then link the LGPL binary to a GPL binary?

      You can link anything you want. Usage cannot be restricted by licenses unless you sign them.

      Linking anything to GPL-covered works is GPL (except with certain exceptions). Even if it's LGPL'd- if linked, anyone you distribute the linked binary to must have the right to redistribute it under the GPL (although the LGPL is more permissive). If you cannot guarantee that right, then you cannot distribute it to them.

      Hence the reason NVidia doesn't distribute linked code, just "patches".

      It's also the reason KORORAA cannot link and apply these "patches" and then redistribute the patched program. That's copyright violation.

      This is a rare case where I doubt the FSF would even attempt to pursue as it could very easily lead to a court decision against the GPL.

      You are not a lawyer. Or a judge for that matter.

      KORORAA doesn't have the right to redistribute Linux. They can assume that right if they meet the FSF's requirements (as outlined the GNU GPL v2). If they do not or cannot meet those requirements, then they do not have any right to redistribute Linux.

    4. Re:Whaaa? by roman_mir · · Score: 2, Funny

      That was my 3000th post and I wrote about smelloscopes :/

      What am I going to do for my 30th birthday in less than a month?

    5. Re:Whaaa? by mrsbrisby · · Score: 2, Informative

      Where is this violation of GPL that you are talking about?

      There is no script. That's the problem. They're linking the binary modules themselves and distributing those.

      If someone adds this software that I provide (the binary, the extra interface file and the script) to their favorite OS distribution of the month, which happens to be GPLed, are they in violation of the license, when they distribute a disk with the OS and my code?

      That depends. Everyone likes fictional examples because it's easier to point out gray area, but it almost always misses some critical component of what's happening out here, in reality.

      In this case, they're not adding the software that you provide (and presumably allow redistribution of), but instead, running the script, and taking the output and redistributing THAT. In this case, yes, they have committed a copyright violation, and since in this case, that thing is GPL, they are also committing a GPL violation.

      In other cases? Well, you didn't explicitly say you allow redistribution, and while I assumed it for the above argument, now I won't, and yes, the person redistributing your program is in copyright violation- yours.

      I find it's easier to think of binary-only drivers as patches, because it's very well understood (and tested) how patches work. Your patches can be distributed separately- and easily- just as NVidia and ATI distribute their own patches.

      Anyone can apply your patches, and if you so allow- those patches can even be redistributed.

      But: nobody can take the thing you patch, apply the patch, and redistribute the result. You don't have the right to do it - the copyright owner of the patch, and Linus doesn't have the right to do it- the copyright owner of Linux (well, one of many).

  6. What? by tomstdenis · · Score: 4, Insightful

    The drivers aren't GPL though and they don't include GPL code. They merely are compatible with GPL code. This is like saying my source files are GPLed because GCC can parse them. Or this webpage is MPLed because Mozilla can read it, etc...

    Just because the kernel can load your module doesn't mean your modules is GPLed. The way I understand the GPL is anything you derive from GPL code must be open source and what not. The drivers are proprietary and just happen to be compatible with GPL code.

    --
    Someday, I'll have a real sig.
    1. Re:What? by tomstdenis · · Score: 2

      I thought that only went inwards.

      E.g. if glibc was GPL it means you couldn't write closed source binary only software. Therefore the glibc package is LGPL which allows this.

      Now, going the otherway ... the driver doesn't incorporate ANY GPLed code. It's merely compatible with it.

      So you give out a OSS package [and the source] and then include the drivers. The package won't be GPL even though components of it are.

      I don't see the problem there.

      Tom

      --
      Someday, I'll have a real sig.
    2. Re:What? by mrsbrisby · · Score: 2, Insightful

      The drivers aren't GPL though and they don't include GPL code.

      Even though I doubt that they don't include GPL code, they are certainly based on GPL code.

      Linux is under the GPL, and not the LGPL.

      This is like saying my source files are GPLed because GCC can parse them.

      Except GCC has an explicit note in its license that says that C source files that GCC (and perhaps only GCC- say using GCCisms) can compile are not automatically under the GPL.

      This doesn't negate other reasons why these C files might be redistributable under the GPL, however.

      Or this webpage is MPLed because Mozilla can read it, etc...

      No, this is for a different reason: The pages mozilla displays are copyright their original authors. If these pages were explicitly designed for Mozilla (say, by using -moz- interfaces), then the GPL-license for Mozilla could apply. It's only because thos e interfaces are documented separately (under the MPL) that the GPL doesn't apply to them.

      Just because the kernel can load your module doesn't mean your modules is GPLed.

      Yes, that's exactly what it means.

      The way I understand the GPL is anything you derive from GPL code must be open source and what not.

      No. Anything derived from GPL code must be redistributable under the GPL as well.

      This is probably why you're a bit confused: GPL is a redistribution license, and NOT a usage license. That means that if you have something GPL- binary only perhaps, then you cannot redistribute it unless you can also supply the source code.

      Since you're building the drivers into the Linux kernel yourself, YOU are the one that is making a beast that you cannot redistribute. If someone else did this for you, they could not legally give you their binary images without also providing the source code. Since they don't have the source code, they cannot redistribute their binary images to you.

      The drivers are proprietary and just happen to be compatible with GPL code.

      When speaking in matters of law, "compatible" has a very specific definition that is at odds with the definition you are using. If the drivers were compatible with GPL code it would be because all of the terms of the GPL could be satisfied.

      Note that GCC's explicit clause, and the existance of the W3C as methods of providing a compatability layer between the authors copyright of the C or HTML files, and the device used to manipulate them.

    3. Re:What? by harlows_monkeys · · Score: 2, Interesting
      "Just because the kernel can load your module doesn't mean your modules is GPLed."

      Yes, that's exactly what it means

      If your argument were correct, then it would be a violation of GPL for any distribution to make these drivers available. Yes, the major distributions do make them available for download, and no one, not even the FSF, says they are violation the GPL.

    4. Re:What? by Tim+C · · Score: 2, Interesting

      GCC has an explicit note in its license that says that C source files that GCC (and perhaps only GCC- say using GCCisms) can compile are not automatically under the GPL.

      Ignoring the question of GCC-specific code, think about it for a second. If all source that GCC can compile were automatically to fall under the GPL, then all standards-compliant C code would automatically be GPLed. In other words, the mere existence of GCC would force all code written in C to be GPLed.

      The note isn't there to grant people any rights, it's there to clear up any possible misunderstanding - just because you use GCC to compile your code doesn't automatically make it GPLed.

    5. Re:What? by mrsbrisby · · Score: 2, Insightful

      If your argument were correct, then it would be a violation of GPL for any distribution to make these drivers available. Yes, the major distributions do make them available for download, and no one, not even the FSF, says they are violation the GPL.

      No. You're confused.

      If the kernel can load the module, it's because the kernels' source code, and the GNU toolchain were available to build it.

      Hence the reason NVidia and ATI don't distribute kernel modules, but instead a build-system that may-or-may-not be legal. Linus seems to think those kinds of build-systems are okay- not good, but probably okay.

      KORORAA isn't using those build systems. They're distributing the binary kernel modules; The things the kernel can actually load. That's a violation of the GPL.

  7. Aggregation is not linking! by Morgaine · · Score: 5, Insightful

    Aggregation of components is not the same think as linking, the FSF is totally clear about that. So both the GPL code and the binary code can be present together on the same medium, not linked.

    It's only when the CD is booted and the drivers loaded that a runtime image containing the binary modules linked with the kernel is created, and not before.

    Distributing an aggregation is perfectly legit, according to the guidelines for GPL v2. (Dunno about v3).

    --
    "The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
    1. Re:Aggregation is not linking! by qbwiz · · Score: 2, Informative

      Perhaps, but the binary module is compiled by linking against the kernel headers, and it includes shim code which may (or may not) be derived from the kernel. This would mean that the compiled binary module (which he is distributing) could therefore be derived from the kernel, and thus would need to be distributed under the terms of the GPL.

      Why do you think that nvidia doesn't precompile their shim code too, when they distribute their kernel module. Of course, If copyright affected Kororaa, then it should affect any other distribution which distributes compiled binary kernel modules.

      --
      Ewige Blumenkraft.
    2. Re:Aggregation is not linking! by ebooher · · Score: 4, Informative
      Perhaps, but the binary module is compiled by linking against the kernel headers, and it includes shim code which may (or may not) be derived from the kernel. This would mean that the compiled binary module (which he is distributing) could therefore be derived from the kernel, and thus would need to be distributed under the terms of the GPL.

      According to information that the originator of Kororaa received from NVidia while investigating this matter, this is not true.

      The NVIDIA kernel module consists of two pieces: a binary-only portion and a kernel interface layer (aka the "shim"). The binary-only portion is not Linux-specific (the same code is used on Windows, Solaris, etc), and does not include any Linux kernel header files when it is built. The shim is provided in source code form with the driver package, and this is the piece that is compiled for your version and configuration of the Linux kernel. The shim is the only piece that references Linux kernel data structures or macros, and only does so to the extent that is needed to provide the functionality of a modern graphics driver. After the shim is compiled, it is linked with the binary-only portion, to produce the final NVIDIA kernel module.

      NVidia states that the binary is the same binary they use in all Systems. Be they Linux, BSD, Windows, or Bob's Unknown Mini-OS. The "shim" is the glue code they write that is OS specific that makes calls into the binary.

      --
      "Genius may shine aloof and alone, like a star, but goodness is social, and it takes two men and God to make a Brother."
    3. Re:Aggregation is not linking! by foonf · · Score: 3, Informative

      Perhaps, but the binary module is compiled by linking against the kernel headers, and it includes shim code which may (or may not) be derived from the kernel.

      That is not "linking" in the sense that is covered by the GPL. The kernel headers contain declarations for kernel functions, structures, and macros. They don't actually produce any object code that is linked in the binary. The binary driver is produced from two object files, one distributed binary-only by NVIDIA and one compiled from NVIDIA's shim source, which is explicitly allowed to be linked with the binary, and not under the GPL. So no mixture of proprietary and GPL code occurs until runtime, when you actually use the driver, and while that is technically a GPL violation since the kernel runs in a single address space (hence the "tainted kernel" messages) neither NVIDIA nor any distributor is liable for it.

      Why do you think that nvidia doesn't precompile their shim code too, when they distribute their kernel module.

      They do, actually, or at least they used to (for the default kernels of specific distributions). Its just that the Linux kernel doesn't have a stable binary ABI for drivers, so it is necessary to recompile it for every single different kernel version. If it was up to them they likely wouldn't distribute any code at all, just a binary module, but because of the way Linux is that isn't practical. Other distributions, including even Debian, have also distributed linked binaries of the NVIDIA kernel drivers without trouble.

      --

      "(Man) tries to live his own life as if he were telling a story. But you have to choose: live or tell." --Sartre
  8. GPL and the copyright laws by Anonymous Coward · · Score: 3, Interesting

    Is there any basis in the copyright law for the claim that bundling binary drivers in the same binary
    as a GPL kernel is copyright violation, while having them as separate downloads is OK ?

    This seems like a very naive interpretation of the "derived work". Are there any laws or precedents
    that support it ?

  9. It all depends by robla · · Score: 4, Insightful

    ...on who sent the email as to whether or not this is truly a significant event. While the person emailing may have a point (IANAL, so I dunno, the devil is in the messy details), it's a little melodramatic to make a big fuss out of this unless the person making the complaint is a copyright holder in the kernel and is issuing a cease and desist.

  10. Oh no!!! by Duncan3 · · Score: 4, Insightful

    Someone made Linux easy to install...

    KILL KILL KILL!!! STOP THEM!!!

    Seriously, they put linkable drivers on a CD... That's 100% OK.

    Stop trying to stop Linux you Microsoft plant, nice try tho.

    --
    - Adam L. Beberg - The Cosm Project - http://www.mithral.com/
  11. I spit by fishbowl · · Score: 4, Insightful

    There really isn't any fun, having to take a distro that leaves you with an 80x25 console, or a 640x480 X desktop (and I feel lucky sometimes to have EITHER of these work correctly), and from there, find and download drivers for NV or ATI, and build and boot a kernel that works with what was otherwise a working live system.

    This is really not a reasonable thing to expect from a user, not even from a user like me who has been running linux since 0.99pl1.

    --
    -fb Everything not expressly forbidden is now mandatory.
  12. Re:proof that the GPL is too invasive by PenGun · · Score: 2, Insightful

    You really have no clue do you.

      Linux was not put together for your convenience.

      I'll leave it there as more than one concept may overload your processor.

        PenGun
      Do What Now ??? ... Standards and Practices !

  13. nvidia and ati are the problem by Anonymous Coward · · Score: 3, Insightful

    i am an idiot so here i go again.

    1) as of the new xorg there is no need for video drivers to be in the kernel.
    2) indeed the kernel people have been urging ati and nv to move their drivers out to userland.
    3) their drivers need a lot of rework to get to userland, plus they will run approx. 1% slower.
    4) neither ati nor nvidia want to lose 1% performance, let alone all the time and testing to move the code.
    5) if one moves before the other, the average gaymer, i mean laymer, oops, gamer magazine draws charts that make 1% seem like the entire frickin' page width.

    bye now.

  14. What a prick by linvir · · Score: 5, Insightful
    Sounds like the sort of guy who sends a letter to have the local skatepark closed down when he notices that its disabled access is lacking.

    The most infuriating thing is how he goes for the puppy angle with this bullshit:

    this distribution goes against the open source spirit of linux
    The 'open source spirit of Linux' is that Open Source is supposed to enable people to stop worrying about this licensing crap. If nVidia and ATI aren't complaining, there shouldn't be an issue on our side.

    And for the most part there isn't. Which is why it's even more sad that he's actually caving to this:

    As such, the Live CD has been put on hold, until I can sort this out. If I cannot sort this out I will be forced to cease work on the Xgl Live CD.
    My overall opinion is that this Koraraa guy ought to grow a pair and wait to see what the non-basement-dwelling grownups have to say about his distro's licensing.
    1. Re:What a prick by linvir · · Score: 2
      People choose the GPL over the BSD license because it fosters better software by keeping the codebase free and available. That is a pragmatic benefit of the GPL.

      But in this case, it's a closed source binary that's not doing much more than looking at some GPL code. The intention of the GPL is that improvements to GPL code must remain free. It'd be incredibly arrogant to say that these closed source drivers are no more than "improvements" to some kernel module interface code.

      They aren't. And even if there was a case in all of this, it'd be the case of one man's (RMS) hatred of closed source software, and it would have exactly zero to do with creating quality free code. So like I said, stop worrying about this licensing crap, and get back to worrying about writing better software.

    2. Re:What a prick by Chops · · Score: 3, Informative
      People choose the GPL over the BSD license because it fosters better software by keeping the codebase free and available. That is a pragmatic benefit of the GPL.

      People choose the GPL for all sorts of reasons. Some kernel developers like the GPL because they want the kernel, including hardware drivers, to remain free software. They're actively opposed to the idea of binary-only drivers proliferating, even if it means more hardware support for Linux. Did you happen to read the link I gave you?

      It'd be incredibly arrogant to say that these closed source drivers are no more than "improvements" to some kernel module interface code.

      The issue isn't whether it's arrogant to say that; the issue is whether or not it's legal to distribute the NVidia driver with the Linux kernel. My personal opinion is that it is legal, actually, but treating the whole issue as "licensing crap" is wrong. It's like a child complaining about having to eat dinner before having cookies. "But I like cookies! Why can't I just have cookies?"

      I know you like hardware support. I like cookies. It's not that simple, though, and saying "stop worrying and eat cookies" doesn't make it that simple. You should think about why Linux is so much better and more successful than its non-GPLed competitors, and why Linus said that relicensing Linux under the GPL was the best thing he ever did.

      And even if there was a case in all of this, it'd be the case of one man's (RMS) hatred of closed source software, and it would have exactly zero to do with creating quality free code. So like I said, stop worrying about this licensing crap, and get back to worrying about writing better software.

      Why do you think it's just RMS, and that everybody who choosed to use his license actually doesn't agree with most of what it's supposed to mean? Where did you get that idea?

      You really should read that link I included. Here, I'll include it again:

      http://www.groklaw.net/articlebasic.php?story=2006 0424164142296

      I'll even save you some clicking: Some kernel developers (Arjan van de Ven and Andrea Arcangeli) are very concerned about the popularity of binary kernel drivers, and see it possibly eroding Linux's freeness, and interfering with the process of kernel development even for those not using the binary drivers. That's the opinion of people who are heavily involved in kernel development. You say it has "exactly zero to do with creating quality free code"; why do you think you know better than they do?
  15. There is no GPL code in the binary driver! by Anonymous Coward · · Score: 3, Informative

    Repeat after me:
    There is no GPL code in the binary driver!

    Nobody claims there is and that's not the issue here.
    One really has to ask how this article submission could have been acceptec, especially as the way the nvidia driver works is clearly spelled out on the kororaa hompage:

            The NVIDIA kernel module consists of two pieces: a binary-only
            portion and a kernel interface layer (aka the "shim"). The
            binary-only portion is not Linux-specific (the same code is used
            on Windows, Solaris, etc), and does not include any Linux kernel
            header files when it is built. The shim is provided in source code
            form with the driver package, and this is the piece that is compiled
            for your version and configuration of the Linux kernel. The shim
            is the only piece that references Linux kernel data structures or
            macros, and only does so to the extent that is needed to provide
            the functionality of a modern graphics driver. After the shim is
            compiled, it is linked with the binary-only portion, to produce
            the final NVIDIA kernel module.

    1. Re:There is no GPL code in the binary driver! by Cid+Highwind · · Score: 2, Informative

      After the shim is compiled, it is linked with the binary-only portion, to produce the final NVIDIA kernel module.

      And there lies the problem. The shim is a derived work of the kernel (or that's the anonymous complainer's position anyway), the binary-only portion contains un-GPL-able code, and the final driver contains both. They can compile and use the finished driver on their own machines, but can't distribute it without violating the GPL.

      --
      0 1 - just my two bits
  16. Why not wait to see if this is an issue? by khasim · · Score: 4, Interesting

    Before you go on about how evil the GPL is, why not wait until there is some clarification on the issue.

    So far, an un-identified person sent an email to someone distributing a Live CD making certain claims.

    As far as I can see, no one has said whether that person has any code of his/her own in that Linux distribution. Nor has anyone who would be able to say one way or the other been quoted.

    Personally, I'd wait until Linus or ATI said that this was wrong before going off on how evil the GPL is.

  17. Read the article next time before posting by Anonymous Coward · · Score: 2, Informative

    Perhaps the first point of call is that the nVidia license permits the re-distribution of their driver in Linux distributions. Surely if it was a GPL violation they are not allowed to do this, or perhaps it's just down to the distro maintainer to see if the GPL overrides other package licenses.

    I send emails to both ATI and nVidia querying this license issue. ATI didn't even acknowledge my email however nVidia (to their credit) did reply (thank you!). Here is the nVidia license, as quoted in an email from nVidia:

            The NVIDIA Software License:

            http://www.nvidia.com/object/nv_swlicense.html

            permits redistribution of the NVIDIA Linux Graphics driver like you are doing:

            "2.1.2 Linux/FreeBSD Exception. Notwithstanding the foregoing terms
            of Section 2.1.1, SOFTWARE designed exclusively for use on the Linux
            or FreeBSD operating systems, or other operating systems derived
            from the source code to these operating systems, may be copied
            and redistributed, provided that the binary files thereof are not
            modified in any way (except for unzipping of compressed files)."

  18. There's more restricition in BSD by mangu · · Score: 2, Insightful
    People are trying to add useful things to the Linux kernel so more people use it and your license is restricting it.


    I think the restrictions in the BSD license are much worse. In the Linux kernel, at least, anyone can add useful things to any distribution. In the BSD Unix one can add useful things only in the FreeBSD, NetBSD, and OpenBSD distros. For instance, let's suppose you have a Nokia firewall and want to tweak its operating system. You cannot, because it was distributed under the BSD license and Nokia closed it.

    1. Re:There's more restricition in BSD by truedfx · · Score: 2, Informative

      The firewall code in your example is not BSD-licensed, so the restriction is not one of the BSD license. It doesn't get much simpler than that.

    2. Re:There's more restricition in BSD by mangu · · Score: 3, Interesting
      To be fair, though, that is "more restriction"


      Well, that depends. Let's say you are in a country whose constitution states that "The right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures shall not be violated". If you are a police officer, you would say that's *more* restriction, if you are an average citizen, you would say that's *less* restriction.


      If I were selling software, I would say the GPL licence is more restrictive than BSD, as a software user and developer, I think the GPL is less restrictive than BSD. After all, it's the BSD licence that restricts me from seeing the Nokia OS source code.

    3. Re:There's more restricition in BSD by Ded+Bob · · Score: 4, Insightful

      After all, it's the BSD licence that restricts me from seeing the Nokia OS source code.

      No. It is the Nokia license that restricts you. The BSD license does not contain the restriction.

    4. Re:There's more restricition in BSD by Fulcrum+of+Evil · · Score: 2, Funny

      Well, that depends. Let's say you are in a country whose constitution states that "The right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures shall not be violated"

      Yeah, like that'll ever fly :p

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    5. Re:There's more restricition in BSD by Zerathdune · · Score: 2, Insightful
      True, but I think the point he's trying to articulate has meerly been very poorly worded. the BSD liscense is essentially, give credit, don't pretend we endorse your stuff, and we're not liable for anything. couldn't be much more open than that.

      the issue is that it doesn't stay that way, because when a company can change the terms of the liscense, they tend to do so, so that it benifits them. they will only conceed as much to the user as they must. In this way, you end up with more restriction later on. I think the sole reason that linux is so much more popular and well known than BSD, is because of the liscense, not because of any trait of the software. corporations have no problem investing in a tool that will help them even if they think it may help competitors as well, but they won't do that if they see than one of their competitors can just take all of their work, and sell it on their own terms without any input, and without giving anything back.

      in any case, the choice of license depends on the scenario. I would favor the GPL myself, because though I don't have a problem with other people using my stuff, I don't want it to become part of an embrace-and-extend control mechanism. others may not care about that. yes, the GPL is more restrictive in and of itself, but in the long run, the BSD license results in more restritctions, because the license can change.

      in an example like this I would agree that the GPL causes problems. if it were my software that something anologous to this happened with, I might talk to the guy about alternative liscensing, work out some terms for this particular case. after all, if I own the copyright, I can license it however I want.

      --
      No single raindrop believes that it is responsible for the storm.
    6. Re:There's more restricition in BSD by mrchaotica · · Score: 3, Insightful

      I hate these stupid semantic arguments, because nobody ever realizes that the question is not between "more restrictions" or "less restrictions," but between who is restricted.

      The GPL restricts the developer, because he's forced to contribute his code back to the community. This is done for the benefit of the end user.

      The BSD license restricts the end user, because even though the code running on his device used to be Free, the vendor could chose to close it and cut off his control of his own device at any time. This is done for the benefit of said vendor.

      The GPL and BSD licenses are both restrictive, but in different ways. There is no possible license that has zero restrictions for all.

      Now that I've made this clear, can we please stop arguing about it and move on?!

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    7. Re:There's more restricition in BSD by civilizedINTENSITY · · Score: 2, Insightful

      Ah, but the BSD license contained the seeds of the restrictions Nokia placed upon the code, inherent in the lack of restrictions BSD places upon the ability to close off code.

    8. Re:There's more restricition in BSD by Dis*abstraction · · Score: 2, Interesting

      Despite your beliefs, many corporations do in fact go above and beyond the bare minimum legal obligations when incorporating BSD-licensed code into their products, in some cases far beyond. Apple, for example, is under no obligation to distribute the source to Darwin, which borrows heavily from FreeBSD and Mach. The license of neither requires derivative works to be open sourced, yet Apple redistributes its modifications under the APSL.

    9. Re:There's more restricition in BSD by LordKronos · · Score: 2, Insightful

      it's the BSD licence that restricts me from seeing the Nokia OS source code

      I disagree. The base code is already open, regardless of how it's used. The modified code which is allowed to be closed under BSD would not suddenly have been open had it been under GPL, because the vendor would have almost certainly chose some other code under a (from their point of view) less restrictive license. Had nothing like that existed, they would probably have written it from scratch. So in either case you didn't lose access to anything.

      To say that the BSD license is MORE restrictive because you "lost" access to the modified code seems, to me, to be an argument similar to "every download is a lost sale".

  19. One man's "useful" is another man's "treacherous. by Kadin2048 · · Score: 5, Insightful

    Saying they're trying to add "useful things" to the kernel is a bit of a judgement call. You might think that adding proprietary drivers is useful, but a lot of people would disagree.

    The GPL is designed to prohibit this for a reason, and it's not because the FSF people enjoy making people's lives difficult, it's to keep Linux and the kernel from becoming dependent on proprietary binary lumps. If you want to taint your kernel by adding proprietary modules, more power to you, but you can't redistribute the result. Every user has to add the tainted bits in themselves.

    If every distro could just use the nvidia binary drivers, maybe the people working on the free "nv" driver just wouldn't bother. And then one day nvidia decides (because they suddenly become evil / get bought by Microsoft / whatever) to pull the rug out and cease development of the drivers. A few well-placed cancelled projects could set an operating system years behind the competition.

    The GPL attempts to ensure that a basic Linux system is at least functional without proprietary add-ons, so that it can't become the hostage of someone who controls a lump of code that everyone has gotten used to depending on.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
  20. It's up to the copyright holders by robla · · Score: 2, Insightful

    ...to enforce their "copy right". The users can alert the copyright holders of potential violations, but unless the copyright holders take action, nothing happens.

    Only copyright holders have standing to bring suit.

  21. Don't confuse "Free". by khasim · · Score: 3, Interesting
    If you can't tell if you're free or not, are you really free?
    So, if I can't piss on the cheese at the local deli, I'm not really "Free", am I?

    The GPL is about making the code Free so that anyone can use it and improve it ... PROVIDED that they share any changes they've made IF they distribute those changes.

    There are other licenses that are more "Free", depending upon your point of view.
    While I agree flying off the handle is probably not the best course of action at the moment, railing against the GPL for creating a situation like this where it really is quite difficult to see if there is a violation or not I would think is perfectly acceptable.
    Maybe. But then, as soon as any restriction is placed upon any code, you create edge cases. That's nothing new. Which is why we have "expert" lawyers in the field of "intellectual property" law.

    Because there are edge cases is no reason to claim that the GPL is evil.

    Certainly not when this case rests on one un-identified individual sending one email to one distribution.
  22. BS by Anonymous Coward · · Score: 2, Informative

    This is just a bunch of BS analysis done by software engineers, not lawyers. IAMLS (I am a Law Student) and it is basic that not all copying is a copyright violation. Firstly, runtime linking is not GPL violating because it does not create a copy (Copies must be tangible, which requires persistence. Temporary actions in RAM are not persistent. The only caselaw that supports that proposition is in dicta, so not binding.) Secondly, what is copied in copiling the Nvidia or ATI drivers from the kernel is basically nothing (relocation symbols) and is soley for the purposes of intercompatability and therefore does not amount to legal copying (If it did, then the BIOS on IBM-compatible PCs would be infringing for interacting with the copyright on the chipset). I.e. it's basic fair use for software, established by numerous cases. The fact is, not all linking requires the LGPL, only linking that leads to incorporation of a significant portion of copyrightable information.

    DISCLAIMER: This is not legal advice. Do not rely on it in anyway. By using this information in anyway, you agree to idemnify and hold harmless the provider of said information. If you want legal advice, contact an attorney.

  23. It wouldn't be Linux anymore. by r00t · · Score: 2, Insightful

    If you want a binary-based system, run Windows. Seriously. Have fun.

    I like knowing that I will never need to throw away old hardware because neither the OS vendor nor the hardware vendor cares to provide drivers for the latest version of the OS.

    I like knowing I can use my devices with x86, x86-64, PowerPC, 64-bit PowerPC, IA-64, and anything that will be invented in the future. I don't need to go begging some corporation to make a driver for a product they no longer sell.

    I like knowing that the driver API is optimal, without contortions for compatibility with an ABI that might be getting obsolete.

    I like knowing that I can debug a crash. I have all the source.

    I like knowing that nothing on my system will phone home to tell Sony about my sins.

    1. Re:It wouldn't be Linux anymore. by mrchaotica · · Score: 4, Insightful
      From a hardware vendor's perspective, stable binary interfaces are nirvana.

      It means that they can write their drivers to a stable interface and not have to worry about every single recompile of the kernel invalidating their work, which in turn means that they have lower support cost.
      That entire argument is bullshit.

      What would really be nirvana would be for an entire community of willing volunteers to write their driver for free, which could happen if the vendor would just release some damn specs! Then the support cost wouldn't just be lower, it would be zero because the community would be supporting itself!

      Besides, "trade secrets" are not necessary for a hardware company to succeed anyway. Look at all the hardware that does have Free drivers: CPUs, mass storage devices, sound cards, network cards, etc. Those don't have any "trade secrets" that prevent drivers from being written, and there is absolutely no reason for video cards (and wireless chips) to be any different!
      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    2. Re:It wouldn't be Linux anymore. by ajs318 · · Score: 2, Insightful

      I don't think it's unreasonable to force companies to disclose what is in their hardware. Pharmaceutical companies have to declare the active ingredients and the amount per dose in their drugs. Breweries have to state the alcohol content of their beer. Tobacco companies have to declare the amount of tar and nicotine in each fag. Food manufacturers have to give a list of ingredients in descending order and a breakdown of fat / protein / sugar / starch -- and that's almost enough information to recover the recipe {assume that the majority of the recipe is in the first three or four ingredients, and construct a set of simultaneous equations relating the quantities of each ingredient to the nutrition figures}.

      Back in the days, every electronic appliance you bought came with a schematic diagram -- either in the instruction manual, or on the inside of the bottom cover. As likely as not, this would be labelled with the expected voltages at various test points. This misguided behaviour by the likes of nVidia is a recent phenomenon.

      But you're right, I do have the right to discover what is inside a graphics card I own. It's called "reasonable force" -- as little force as possible but as much as is necessary to accomplish a rightful aim. Hopefully, if enough people assert their right to conduct reasonable force reverse engineering, and co-ordinate their efforts appropriately, we can develop fully Open Source drivers for nVidia graphics cards.

      I still support mandatory full disclosure. Well, not mandatory -- you would have a choice, tell everyone exactly how to use your hardware or don't sell it. Anyone who doesn't believe in full disclosure has something to hide.

      --
      Je fume. Tu fumes. Nous fûmes!
    3. Re:It wouldn't be Linux anymore. by ardor · · Score: 2, Insightful

      You, Sir, don't have a clue.

      What would really be nirvana would be for an entire community of willing volunteers to write their driver for free, which could happen if the vendor would just release some damn specs! Then the support cost wouldn't just be lower, it would be zero because the community would be supporting itself!

      Oh yes. I see. Volunteers striving to recreate nVidia drivers. With shaders, Z-pyramids, FSAA, bazillion tricks & tweaks to max out performance. Riight. Maybe ready in 2043? Because, the specs won't help you much since a TON of functionality resides in the drivers.

      Also, instead of being dependent upon a company to release drivers, now we are dependent on volunteers to be constantly motivated to maintain the drivers. The day they lose motivation, drivers get broken because of kernel changes, and is kicked out of the kernel. Goodbye driver.

      Besides, "trade secrets" are not necessary for a hardware company to succeed anyway.

      Ah, yes. But not in this universe. Well, I guess the small companies may survive for a while without them. But especially between ATI and nVidia there is a cold war, and each one would LOVE to get their hands on some of the others' secrets. Patent violations are only one of the weapons.

      Look at all the hardware that does have Free drivers: CPUs, mass storage devices, sound cards, network cards, etc.

      Oh yeah, and you can mix these with a GPU, since they are all so similar. Sheesh, get a clue. GPUs are even more complex than CPUs, and hundreds of thousands of times more complex than your typical NIC.

      Those don't have any "trade secrets" that prevent drivers from being written, and there is absolutely no reason for video cards (and wireless chips) to be any different!

      Wireless chips have FCC problems (source code available = you can tune the chip to send at any frequency). In other countries, this does not apply. But then again you cannot use chips manufactured there in the US, which is just one of the biggest markets in the world.

      Video cards: I told you already. In fact, there is absolutely no reason why nVidia and ATI should EVER GPL the drivers, release the HW specs (which are patent-encumbered too) etc. If one does it, the other uses it to crush the opponent. And then we have just ONE GPU manufacturer.

      --
      This sig does not contain any SCO code.
    4. Re:It wouldn't be Linux anymore. by Arker · · Score: 2, Interesting

      While you're welcome to buy their hardware and reverse engineer it if you wish, it seems to me to be more than they deserve. Free drivers for those cards would boost their sales, and I'd rather see a competitor that does the right thing get them.

      On the other hand, there isn't, sadly, much competition on the high end outside these two companies at the moment, so if you really require more than the free software friendly cards can give you, I guess that's what you have to do. And sadly, ATI cards based on the older, well supported chipsets are still getting a lot of free sales despite the way that company is treating us at the moment.

      I have a feeling what they're trying to hide here is a practice of degrading performance in software - i.e. selling one card for say $100 and another for $350, with the difference being a few flipped bits somewhere that tell their drivers not to work as well on the cheap one. So, if you do bother to reverse engineer some of these cards, you might get a nice bonus of actually getting the performance you paid for without an 'artifical scarcity tax' added.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
  24. You've got the dependency graph wrong by Morgaine · · Score: 5, Informative

    The nVidia "shim" is licensed under the GPL and is copyright nVidia --- this means that it's perfectly legal to compile the shim against the GPL kernel. At the same time, nVidia is free to do whatever they want with the shim, and its license is immaterial to them at that point because they hold its copyright. The GPL has no say over what else the copyright owner can do with kernel-linked code, the only thing that's mandatory is that it's GPL'd, and it is. For example, it's very common for copyright holders to dual-license their own GPL'd code for commercial and highly proprietary use.

    Well, what nVidia chose to do in this case is to link the shim with their binary driver, and they're perfectly entitled to do that, by their copyright. Furthermore, since the shim and the binary driver are separate components from the kernel, they can certainly be shipped on the same CD as GPL components, as long as the binary code is not linked to the kernel. And it's not.

    So you see, by virtue of being the copyright holders of the shim and GPL'ing it, nVidia easily comply with the requirements of the GPL but aren't constrained in what else they do with it.

    If the binary module were linked against the kernel then you'd be right, but it's not. At no point in time did the binary module even get a sniff of the kernel, and it's shipped without knowing anything about it, nor viceversa.

    Yes, the dependency is contrived, but that's how the GPL forced them to rearrange their code dependency graph in order to stay on the good side of the GPL's guidelines.

    --
    "The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
  25. No other options. by Kadin2048 · · Score: 4, Insightful

    all those suckers that bought NVidia or ATI video hardware

    Just out of curiosity, who are the non-suckers? The people who bought video hardware from ... who, exactly?

    3Dlabs doesn't make GPUs anymore, 3dfx got bought by NVidia, and XGI is gone. That leaves ATI, NVidia, Matrox, and Intel making GPUs. Does Matrox or Intel release source code to their drivers? (Is Matrox even still in the consumer graphics card business?) Who else is there? ATI and NVidia basically have the market for aftermarket cards cornered, to the best of my knowledge, and in both cases their drivers are closed-source. There really aren't any other options for most people.

    Personally I'd say go with NVidia, because they seem markedly less evil and their binary drivers seem to suck less, but that doesn't mean I'm happy about it.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    1. Re:No other options. by mrsbrisby · · Score: 2, Interesting

      Just out of curiosity, who are the non-suckers? The people who bought video hardware from ... who, exactly?

      I use Matrox boards. The Xorg driver works fine with them, and I'm very happy. I bought about 10 of these dual-head G400 boards for 7$USD a piece and I've been using them a lot lately.

      Personally I'd say go with NVidia, because they seem markedly less evil and their binary drivers seem to suck less, but that doesn't mean I'm happy about it.

      Then don't. Tell them you don't want their permission to give them money and use their hardware. I say if you buy a piece of hardware , you have the right: one-way or another- to make it work and do whatever you want to make it work and do.

      Without source code, NVidia and ATI are saying: no, you don't have that right. You need us around so that you can have the privilege of using these cards.

      That seems really slimy to me- and I've been burned by it before. I've purchased hardware- and then the company goes out of business and I can't use it anymore. I've purchased software- and it eats my data, and there's nothing I can do about it anymore.

      The GPL guarantees that this doesn't happen to me anymore. That's important to me. Meanwhile, some of my hardware magically works again- because of other people who decided they wanted it to work. They figured it all out, and now I've got a driver.

      There really aren't any other options for most people.

      Sure there are. They can go and firebomb ATI and NVidia- They can say loudly that ATI doesn't own their computer! That they don't want the NVidia teat anymore. If they want to sell their hardware, they have to sell the hardware- not a privilege, and not a permission to use that hardware.

    2. Re:No other options. by Jacek+Poplawski · · Score: 2, Informative

      ATI and NVidia basically have the market for aftermarket cards cornered, to the best of my knowledge, and in both cases their drivers are closed-source.

      I use Radeon 9800 Pro with DRI, driver is not perfect, but it works.
      There is no closed source software in my kernel and I use OpenGL a lot.

  26. A counter-argument by xenocide2 · · Score: 4, Informative

    Does anyone besides open source zealots care about open drivers? I think so. Perhaps if Nvidia and ATi had open sourced their drivers, Xgl wouldn't have taken so long to exist (Xgl requires a certain level of driver support, and aiglx even more so). I'm pretty sure you'd have liked this just as much 4 years ago, when I first saw people talking about things like openGL accellerated gtk widgets, and otherwise imagining how to use 3d to its best. But 4 years ago, you were writing off a large group of people by doing that.

    Furthermore, installing drivers for your ethernet, cd drive, etc is very simple on linux, because the drivers are open source and in kernel. Attempting to maintain a glue between the kernel and your driver is painful and prone to failure; unlike in tree drivers, when someone else breaks code you depended on, you have to fix it, not them. Recall that nvidia's nforce2 boards are better supported in the kernel than by nVidia itself! With no documents to support them in their efforts, even. I hear they even now recommend the reverse engineered driver over their own, but don't distribute or improve, oddly. If nvidia's drivers were GPL'd, installing them would be as simple as installing anything else.

    It's pretty naive to think that their IP is so valuable that the source code would disclose it any more than the underlying binary code does. Their IP is already in jeopardy by distributing the software. One of the many reasons I suspect they have no intention of participating in OSS is that there's a number of speed over quality decisions written into it that would be exposed, perhaps even application specific optimizations. While this could be neat to have optimized drivers on a per game basis, this is never disclosed to the public (and when revealed sparks not applause but public humiliation). Furthermore, it means that optimizations are done on their terms, not the public's. Any application specific optimizations are given only to a specific application, with no cross over improvement in other applications, or the ability to make the change. If NVIDIA really wanted to share their drivers with the public and gain all the benefits often touted, they'd stop pointing at other people's IP they own and begin to change it. They haven't, and they won't. What nefarious secrets lie within? Perhaps just a case of "this stuff is really hard, and we don't do it very well?"

    Just a thought -- if you dislike the open source spirit as embodied by the GPL, why not do something productive about it, like make a liveCD based on BSD running Xgl. There's nvidia drivers for BSD too, ya know. And for all the talk about pressuring vendors to open their code, they have no qualms about giving it away reguardless with no expectation of anything in return. Linux needs to focus on being Linux, not beating Redmond.

    The good news is that I suspect the person who wrote to Kororaa doesn't actually have any basis for the claim. While nvidia's legality has been on shady grounds, the message published doesn't provide any insightful evidence in either direction. Anyone seriously familiar with the kernel and binary objects should be familiar with the recurring arguments and whatnot. It's clear to me that if the drivers themselves were in violation, nvidia would have been sued some time ago.

    --
    I Browse at +4 Flamebait

    Open Source Sysadmin

  27. Intel by Wesley+Felter · · Score: 3, Informative

    Intel publishes open source drivers for their latest integrated video chipsets.

    While people may report that some Matrox or ATI cards work fine with open source drivers, those are all old, discontinued cards. If you want to buy new hardware, Intel is basically your only choice for open source drivers.

    1. Re:Intel by NutscrapeSucks · · Score: 2, Insightful

      I question how much better the Matrox G550 is over the Intel Integrated.

      The Intel chip is "DX9" capable, which is all that's needed for fancy desktop effects, while the Matrox is the same old stuff they've been churning out since the 20th century.

      --
      Whenever I hear the word 'Innovation', I reach for my pistol.
  28. Yes, Matrox distributes open-source drivers by Morgaine · · Score: 3, Informative

    >> Does Matrox or Intel release source code to their drivers? (Is Matrox even still in the consumer graphics card business?)

    Yes, Matrox is still in the business, but they're not really competing directly against nVidia and ATI in the games market -- for example, they provide no hardware vertex or pixel shaders in their consumer cards. And yes, Matrox does release driver source code.

    I recently bought a Matrox Millennium G550 PCIe, and not only does it list Linux on the retail box alongside the other operating systems, but their product page proclaims it as "the world's first PCI Express graphics card with open-source display drivers for Linux and other Unix-like operating systems". And they're quite inexpensive too, which is nice.

    The drivers are in recent kernels already too, although I'm getting "drmOpenDevice: Open failed" problems at the moment so DRI is being disabled and thus 3D isn't accelerated on that box just now. I hope it's just a local misconfiguration.

    Not really sure what the status is beyond that, but in theory the G550 should have good support in Linux without needing any binary modules.

    --
    "The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
  29. Re: point 1 and 2 by Vyvyan+Basterd · · Score: 2, Insightful

    no you dork. video drivers in kernel space lets you run X as a non-priv user. That's the whole fucking point. X should talk to the kernel, not the hardware.

  30. Re:One man's "useful" is another man's "treacherou by Alef · · Score: 5, Insightful
    If you want to taint your kernel by adding proprietary modules, more power to you, but you can't redistribute the result. Every user has to add the tainted bits in themselves.

    What if I distribute the kernel with instructions on how to add add proprietary module? Would that be OK?
    What if I then distrubute the kernel with a helper script that downloads the modules when the user runs it?
    What if these modules would reside on the same CD as the kernel, and the script simply copies them from a specific directory instead of copying them from a server?
    What if I also include a helper script that automatically installs the modules when the user runs it?
    And what if this script is a boot script?

    But, oh wait, that sounds an awful lot like what kororaa does already...? Where did I cross the line?

  31. Go Matrox! by Tracy+Reed · · Score: 2, Informative

    Matrox is definitely still in the graphics card business. I have a Matrox dual-head card in my home machine and in my work machine. They open source their drivers. X works perfectly with no proprietary drivers needed.

  32. Re:One man's "useful" is another man's "treacherou by DrJimbo · · Score: 3, Interesting
    Alef said:
    What if I distribute the kernel with instructions on how to add add proprietary module? Would that be OK?
    Fine. No problem.
    What if I then distribute the kernel with a helper script that downloads the modules when the user runs it?
    Also fine. This is what the distro's I've used do.
    What if these modules would reside on the same CD as the kernel, and the script simply copies them from a specific directory instead of copying them from a server?
    My understanding is that this would be a violation. Maybe you could squeak by if the module were distributed on a separate cd. I think a separate cd would be fine if the end user compiles the "shim" which combines the Linux code with the closed source bits.
    What if I also include a helper script that automatically installs the modules when the user runs it?
    This is certainly a violation.
    And what if this script is a boot script?
    Again, a certain violation.
    But, oh wait, that sounds an awful lot like what kororaa does already...?
    Yes. That's why there is a problem.
    Where did I cross the line?
    When you distributed the closed source module along with the GPL'ed kernel on the same medium along with a script to install the module.

    Also, in most of the distros I've used, the end user has had to actually do the final compilation of the "shim" which combines the closed source and open source code. I think there would be a problem with distributing a binary "shim" without all of the source but I am not certain.

    --
    We don't see the world as it is, we see it as we are.
    -- Anais Nin
  33. Re:One man's "useful" is another man's "treacherou by GigsVT · · Score: 2, Insightful

    Aggregation on the same medium is not a determining factor. The FSF has said that being on the same medium isn't important, the "mere aggregation" clause.

    To be honest, no one knows where the line is, not even the FSF.

    "What constitutes combining two parts into one program? This is a legal question, which ultimately judges will decide." --From the FSF

    --
    I've had enough abrasive sigs. Kittens are cute and fuzzy.
  34. With Koroaa... by rdoger6424 · · Score: 3, Funny

    Only the very old programmers violate the GPL.

    AC'd because the mods will tear me to shreds.

    --
    "Hello 911? I just tried to toast some bread, and the toaster grew an arm and stabbed me in the face!"
  35. Derivative work interpretation is scary by btempleton · · Score: 3, Insightful

    I must say I have always been bothered by the suggestion that writing code to a particular API (such as that of a kernel) could be considered a derivative work under copyright. If I write to the Windows API, have I careated a derivative work of Windows, to be owned by Microsoft?

    If you do static linking of some GPL code with your code, then it's not just a derivative work, you are actually including somebody else's code and must get their permission. But static linking is of course less and less common. Modules that call libraries are only bound to the libraries at runtime today. Code is written to APIs but bound at runtime.

    This is thus a "loophole" in the GPL, turning it into the LGPL in some interpretations, and to fight that, we see this interpretation that just writing code to an API, making use of the API definition found in header files, makes you a derivative work. I don't think this is a good interpretation for a free software movement to be pushing, even if it means some loopholes.

    --
    Has it been over a year since you last donated to the Electronic Frontier Foundation
    1. Re:Derivative work interpretation is scary by btempleton · · Score: 3, Insightful

      But this is, if you think about it, a pretty radical doctrine in software. Certainly if Microsoft, or anybody else who generated a header file or API, tried to claim a copyright interest in programs written to that API, the world, and most of all the free software community, would be up in arms. You should not use a doctrine you would not accept from others.

      --
      Has it been over a year since you last donated to the Electronic Frontier Foundation
  36. Blast from the past by Slithe · · Score: 2
    Personal Computers are just that: PERSONAL. They are meant for individual people to own a computer and write and run programs. They are a toy FOR SERIOUS HOBBYISTS ONLY, and they should NOT be corrupted by 'big corporations'. Steve Wozniak, cofounder of Apple Computers and the sole designer of that hot new Apple II, said that, in a few years, all the big software companies will have gone out of business, because people will just learn to program all the software they need, and the tech field will be free of big business forever!

    I think ideals are a good thing; however, if you cannot look past your insular world view and take a REALISTIC assessment of the situation for just a second, then your projects will probably share the same fate as the mainframes.

    I think OSS does have a promising future, but if the FSF zealots continue to rabidly attack people with a different software development ideology, then OSS will be relegated to a niche like servers, or, as only a mere curiosity for the hackers of the future, who do all their REAL work in Visual Studio 2018. If 'we' want to help foster OSS development, 'we' have to be willing to work with people who do not share 'our' beliefs. One part of 'growing up' is learning how to work with people who do not share the same ideals as you, but sometimes you two can strike a compromise that benefits everyone.

    Here is a quotationg from Eric Raymond's The Art of Unix Programming:
    In 2003, there is a deep ambivalence in our attitude -- a tension between elitism and missionary populism. We want to reach and convert the 92% of the world for whom computing means games and multimedia and glossy GUI interfaces and (at their most technical) light email and word processing and spreadsheets. We are spending major effort on projects like GNOME and KDE designed to give Unix a pretty face. But we are still elitists at heart, deeply reluctant and in many cases unable to identify with or listen to the needs of the Aunt Tillies of the world.

    To non-technical end users, the software we build tends to be either bewildering and incomprehensible, or clumsy and condescending, or both at the same time. Even when we try to do the user-friendliness thing as earnestly as possible, we're woefully inconsistent at it. Many of the attitudes and reflexes we've inherited from old-school Unix are just wrong for the job. Even when we want to listen to and help Aunt Tillie, we don't know how -- we project our categories and our concerns onto her and give her 'solutions' that she finds as daunting as her problems.

    Our greatest challenge as a culture is whether we can outgrow the assumptions that have served us so well -- whether we can acknowledge, not merely intellectually but in the sinew of daily practice, that the Macintosh people have a point. Their point is made in more general, less Mac-specific way in The Inmates Are Running the Asylum [Cooper], an insightful and argumentative book about what its author calls interaction design that (despite occasional crotchets) contains a good deal of hard truth that every Unix programmer ought to know.

    We can turn aside from this; we can remain a priesthood appealing to a select minority of the best and brightest, a geek meritocracy focused on our historical role as the keepers of the software infrastructure and the networks. But if we do this, we will very likely go into decline and eventually lose the dynamism that has sustained us through decades. Someone else will serve the people; someone else will put themselves where the power and the money are, and own the future of 92% of all software. The odds are, whether that someone else is Microsoft or not, that they will do it using practices and software we don't much like.

    Or we can truly accept the challenge. The open-source movement is trying hard to do so. But the kind of sustained work and intelligence we have brought to other problems in the past will not alone suffice. Our attitudes must change in a fundamental and difficult way.
    --
    ---- "XML is like violence. If it doesn't fix the problem, you aren't using enough."
  37. Re:One man's "useful" is another man's "treacherou by mrchaotica · · Score: 2, Informative
    However, there are a significant number of people like me who really just want to be able to apt-get Java and precompiled drivers... I understand not bundling a complete distro with that stuff, but what's so bad about providing an automatic way to taint your kernel?
    Ever wonder why there's no apt-get for Windows? The answer is, because it's proprietary!

    You can't apt-get Java because Sun won't let you, because you have to click through an EULA on their website. By law, this process cannot be automated, so apt-get can't legally be programmed to do it. Every other piece of proprietary software is the same way (which is what "proprietary" means). Therefore, proprietary software can not be "apt-getted" by definition.

    In fact, I'm suprised Nvidia and ATi aren't going after these Kororaa people, because as far as I know, they don't allow this kind of thing either!
    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  38. Re:Agreed by goofyheadedpunk · · Score: 2, Interesting

    Today, the PC most needs to become quiet and reliable.

    It most needs, or you want most? Besides, have you heard mini-computers these days? They're pretty silent, making no noise except under heavy load.

    It needs to lose the moving parts. This would have already happened if we didn't keep adding fluff just because we can.

    Interesting reasoning you've got there. So, all of those thousands of people that researched 3D algorithms for the past decade have been doing so to add fluff to PCs. In addition, if those people had not been working to add fluff to PCs they would have instead been working on solid state devices and motorless cooling apparatuses?

    We reached attractive usability long ago, and are now adding crud just to be new and shiny.

    Actually, in many cases, we're adding new things to find better ways of doing things. Sure, sometimes those ways don't work out or seem really dumb (like Project Looking Glass which you so crankily dismissed) but other times they are really very useful.

    An example: I work for the Xiangtangshan Caves Project at the University of Chicago and assemble scans of bits of statues from 12th century China. The software that we use has optional transparency on all of its floating dialogs. Making them completely transparent allows me to see more of the shell scans, meaning I work faster and more accurately. Having 3D drivers is absolutely necessary in this situation and, additionally, transparency is a boon. I submit, trollish sir, that you have a rather narrow, closed view of how 3D computing can be of use. (Actually, it seems you've a narrow mind on many things, considering that you equated anything other than having a wife and job as a waste of time. However, I digress.)

    --

    What if the entire Universe were a chrooted environment with everything symlinked from the host?
  39. Cold war era tactics. by droopycom · · Score: 3, Interesting

    The FSF tactic is akin to the cold war era use of atomic weapon: disuasion.

    In practice, the FSF is drawing the line. Its enough for the FSF to say they are going to file a lawsuit, and the offending company usually back down.

    This is dangerous, they are playing with the "gray area". At some point one stupid company is going to go for a fight to define what the GPL really means, and then the supreme court will decide after 5 years of lawsuit (because I'm pretty sure they would not stop at a lower court)

    It would be much better if they were using technical definitions of what you can do with software than philosophicals one.

    I'm not a fucking lawyer, for god sake. How am I supposed to know what the GPL means by linking if its not in technical terms ?

    1. Re:Cold war era tactics. by Znork · · Score: 2, Informative

      "How am I supposed to know what the GPL means by linking if its not in technical terms?"

      The GPL is not a contract, it's a permission slip for doing things when you would otherwise run afoul of copyright law. From the GPL's point of view there is no grey area; you're not allowed to create derived works containing GPL code without the whole derived work being distributable under the terms of the GPL. Period.

      The only question becomes wether the GPL applies at all, and that grey area is entirely within copyright law itself. It wouldnt be a fight about what the GPL means, it'd be a fight about wether you were allowed to mix two copyrighted works together and distribute them without permission from the copyright holders.

      And take a wild guess how that one would work out.

  40. burninating some karma... by Penguin+Follower · · Score: 4, Insightful

    OK, I've got karma to burn.

    I just happen to enjoy playing Doom3 and UT 2004. What card other than an ATI or Nvidia is going to pull that off and has open source drivers?

    You're using open source drivers, but then you go and (censored) it up by using a closed source game.

    Actually, I use Nvidia's binary driver. :P

    I was just waiting for one of you open source utopians to express the "closed source games are evil" opinion. Let's face it, while there have been some good open source games released, 99% of the games in the world are closed source, and some of them I have deemed are worth my time and money spent. The game industry wouldn't truly exist without the profit motive, and in general they see the need to keep things closed to ensure that.

    Games don't need to be closed source to make money. That's what you're probably thinking at the moment. The only system that would work that I can think of is if a source CD was included in the same box as the binary CD. Obviously, you couldn't post the source on a publicly accessible server, for people who can would download the source and compile the game - never giving the company one dollar.

    Things to keep in mind:

    • A business is a profiteering venture (we're not talking non-profit here).
    • It is in the business's best interest to protect any proprietary technology. Since we all hate software patents (and dislike copyright), the only protection left is closed source.
  41. A Shame, Either Way You Look At It by larzluv · · Score: 4, Insightful
    The following GPL FAQ items I believe are relevant:

    http://www.gnu.org/licenses/gpl-faq.html#MoneyGuzz lerInc
    http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlu gins
    http://www.gnu.org/licenses/gpl-faq.html#GPLAndNon freeOnSameMachine
    http://www.gnu.org/licenses/gpl-faq.html#MereAggre gation
    http://www.gnu.org/licenses/gpl-faq.html#LinkingWi thGPL
    http://www.gnu.org/licenses/gpl-faq.html#GPLModule License
    http://www.gnu.org/licenses/gpl-faq.html#GPLPlugin sInNF

    I think this item is also insightful:

    http://www.tux.org/lkml/#s1-19

    which mentions:
    http://www.atnf.csiro.au/people/rgooch/linux/docs/ licensing.txt

    TECHNICALLY, seems the GPL prohibits what Kororaa is doing with their Live CD. HOWEVER, seems Linus would side with them. HOWEVER HOWEVER, this would have to be legally debated, in other words, "defended". There's no explicit legal protection, and to get a judgment call would require money, lawyers, and being tangled in a lawsuit.

    All of which would be silly and embarrassing both inside, and outside, of The Community.

    I, personally, am very much in favor of "completely free (as in speech)" software. Mr. Stallman may be a "stickler", but I find him heroically inflexible. The world needs MORE Mr. Stallmans who actually and honestly stand tall, stand proud for what they believe in. And I'm not kissing ass here: I share his vision, but am far weaker in my convictions.

    The pragmatist in me thinks that the Linux kernel's license should be changed to the LGPL. (http://www.gnu.org/copyleft/lesser.html) I know full well, however, that this would be a huge step backward for Freedom. (Anybody saying otherwise is either [1.a] simply not intelligent enough to understand, or [1.b] hasn't bothered to consider the implications, [2] has ulterior motives, and/or [3] has a personal vendetta against RMS due to personality conflict. "Consider the messenger...")

    But PRACTICALLY, it would enable real headway on the driver/support front. I think ATI and nVidia (and every other closed-source **DRIVER** maker) is quite daft. But they have their "reasons", even if we neither know, nor understand them.

    It's laudable to DREAM of a world where all software is Free, both as in Speech AND as in Beer. Bur for now, and for the foreseeable future, we all live and work in the Real World. Unless we're friendly and play nice with the other children, most proprietary companies, especially hardware creators, may very well choose to take their balls and go home. (To those who cry, "GOOD RIDDANCE!", I ask for you to tell us all of the open-source-hardware, with accompanying open-source drivers, to replace their wares with!) Free and Open (Source) Software makes its virtues self-evident. We need not be antagonistic.

    The truth of the matter is that the hardware we want open-sourced drivers for the most is made by companies comfortably at the top of their game. They sell PLENTY of hardware to not need to worry/care about The Community one iota. They ha

    --
    "To err is human, to totally fsck things up requires an election." - L.W. Hale
  42. Re:The trollish answer here... by fishbowl · · Score: 2, Interesting


    "...would be to ask why someone would want to use the nvidia drivers for Linux in the first place. In most cases that would mean playing games."

    For me, it's because I need their 2D XServer which is the only way I can get the resolution I need at the refresh rate I need. Also bundled with the NVidia X driver was the driver for my sound card and my disc controller.

    --
    -fb Everything not expressly forbidden is now mandatory.
  43. A modest proposal... by Anonymous Coward · · Score: 3, Interesting
    Where do you draw the line between code and data? Other posters have already pointed out that the nvidia binary "driver" is loaded by a GPL'd stub. Under that model, the driver itself is just data. Once you make that conceptual leap, it begs the question: how do you define "source code" for data?

    I'll make a brief aside here to remind you that any interpreted "program" is both code and data. To the interpreter, it's just data. The interpreter loads some text (just data), builds the parse tree (still data), and instantiates the various code objects it represents (STILL data). However, once you actually jump to an address and start executing that data, it becomes a program.

    So now I'll repeat my previous rhetorical question: how do you define "source code" for data? Here's my modest proposal:
    /* bscg -- binary source code generator
      * bscg is Copyright (C) 2006 by PUBLIC DOMAIN.
      * bscg is provided AS-IS and with NO WARRANTY.
      * There are no restrictions on use, modification, copying or distribution
      * of this program; you are permitted to change its license, provided that
      * you do not attempt to remove the ORIGINAL version from the public domain.
      */
    #include <stdio.h>
    #include <string.h>
    unsigned char buf[1024];
    int
    main (int argc, char **argv)
    {
      int i, got, count = 0;
      FILE *f = (argc < 2 || !strncmp (argv[1], "-", 2)) ?
        fdopen (0, "rb") : fopen (argv[1], "rb");
      if (f == NULL)
        {
          perror ("Unable to open file");
          return 1;
        }
      printf ("/* TODO: insert your copyright statement (e.g. GPLv2) */\n");
      printf ("#include <stdio.h>\n");
      printf ("static const char data[] = {");
      while (!feof (f) && (got = fread (buf, 1, sizeof (buf), f)) > 0)
        for (i = 0; i < got; ++i)
          {
            if (count++ % 8 == 0)
              putchar ('\n');
            printf (" '\\x%02x',", 0xff & buf[i]);
          }
      printf ("\n};\n");
      printf ("int\nmain (int argc, char** argv)\n{\n");
      printf (" fwrite (data, 1, sizeof(data), stdout);\n");
      printf (" return 0;\n");
      printf ("}\n\n");
      fclose (f);
      return 0;
    }
    Just compile this program and feed it the binary you need to "decompile". It will output a C program that you can ship as the "source code" for the binary. If you plan to ship your binary with GPL'd code, be sure to license the newly generated source code under the GPL or a compatable license. Oh yeah, and a word of warning: the source code will probably be significantly larger than the binary, even if you gzip it.
  44. Re:Poor DVI resolution :( by dr0n3 · · Score: 2, Informative

    "Sadly, all of their products that I looked at seem to have this limitation (unless you go dual-dvi -- and then you lose dual-headed operation)."

    That's not at all true, unless you mean just the cards in the G550 line....most if not all Matrox cards beyond the G550 have support for up to 1920x1200 in DVI. There's a parhelia card that even supports those 9MP LCD's at 3840 x 2400. And one of them was also designed to work with the apple 30 inch display. I installed a P750 for a client who had just gotten a dell 24" display and I had it hooked up at 1920x1200 dvi and used his older 1280x1024 LCD in dual head on the other DVI port. This card apparently supports 3 monitors. Driver source for linux is available on these cards also, not just the G550.

  45. no, not yet :) by Ender+Ryan · · Score: 2, Insightful
    To be fair, the BSD license isn't doing the restricting you're referring to. It's the developer, who takes the BSD code and closes it up, and attaches his own license to it.

    However, the argument is still over whether to protect the (immediate)developer or the end-user/developers further down the line. BSD does the former, GPL the latter.

    Yeah yeah, I'm just being a picky bitch... :)

    --
    Sticking feathers up your butt does not make you a chicken - Tyler Durden
  46. Why are these violations? by gknoy · · Score: 2, Insightful

    What if I also include a helper script that automatically installs the modules when the user runs it?

    This is certainly a violation.

    And what if this script is a boot script?

    Again, a certain violation.


    Why are these violations? I'm reading the GPL again, so that it's fresh in my mind, but I haven't yet seen anything that these violate. I'll list the major points of the GPL and maybe that will help clarify which would be violated.

    (Attribution: The following are cribbed from the GNU GPL. I trust we all have a copy handy.)

    1 - " You may copy and distribute verbatim copies of the Program's source code as you receive it..."

    Since the program in question is the Kernel (right?), they are surely releasing the source code for what they received, with licenses.

    2- "You may modify your copy or copies of the Program or any portion of it... "
    2B - "b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License."

    OK, 2b looks like it could be a sticking point. However, it really seems as if the line between "copy the file off of the same CD" and "download it for you from the internet" is very thin, and I'm not sure what the conceptual difference is. Do we need to engage pedant-mode to see this? (I'm not trying to be a wiseass, really.)

    However, the end of section two says, "[M]ere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License."

    This seems to indicate that putting the nVidia binaries (or other closed source binaries) on the same LiveCD would NOT be a violation of the GPL, because it appears to explicitly make such an exception. If we assume that the nvidia binaries don't violate the kernel's license (and I assume they don't, or I'd have heard about it before on Slashdot ;)), then including these on a CD that says, "Hey, you want me to install these for you?" seems like it shouldn't violate it either.

    It seemed (to me) that what Kororaa's done is twofold. First, they included non-GPL binaries on the same CD as a GPL'ed system. This is explicitly allowed by the GPL. Secondly, they rebuild the kernel (I assume, as that is I think what I've had to do to install them? It's been a while.), modifying the GPLed kernel to link to a non-GPL driver. The result of this is a new kernel, which is GPLed. There appears tp not be any violation in this, if this is what they are doing. (Am I wrong here?)

    The GPL requires that, if A is GPLed, and B is not, then A+B must be GPLed. There's no restriction that B must be GPL as well, since all concern is with the license of A. (Whether B's license is violated is a different matter.)

    If I have a helper script that downloads and installs these drivers, that's not a violation of the GPL, as the result (a new kernel) can still be GPLed. (Again, we'd have heard a lot of noise if this were NOT the case.) If I have said helper script, it doesn't matter whether the origin of the non-GPLed drivers are on the same media (CD) or different (internet), per the exception in GPL section 2.

    If I make the boot script, that does NOT change the licenseability of it. It can still do its work, and include licenses where needed, etc. After all, we don't get shown the licenses for everything we install or run on a LiveCD, why would this be any different? ... ...

    Now, this all depends on the result of installing a non-GPLed driver still being considered GPL-able. Now that I think about that assumption more, I might be wrong -- if a user installs it on his own system, the GPL doesn't even apply since he isn't distributing it... so I guess the question is whether the GPL can apply to the kernel after it's been rebuilt to include the non-GPL drivers. I don't see anything in the GPL that indicates that it COULDN'T be considered GPLed... what's the license of the nVidia drivers say about that?