76 Comments
- atdigg, on 10/12/2007, -7/+22Mandriva doesn't include proprietary modules either, actually any distro that wants to follow the law can't include those.
- Tsuroerusu, on 10/12/2007, -5/+14@ cazabam
"Erm ... what? That statement makes no sense at all. First of all, the Nvidia kernel module is distributed as source. The proprietary bit doesn't even link to the kernel, it links to X.org. "
Just because something is distributed as source, it is not necessarily open source. And NVIDIA's kernel module is not, if you look in it's actual source files, you'll find this:
/* _NVRM_COPYRIGHT_BEGIN_
*
* Copyright 1999-2001 by NVIDIA Corporation. All rights reserved. All
* information contained herein is proprietary and confidential to NVIDIA
* Corporation. Any use, reproduction, or disclosure without the written
* permission of NVIDIA Corporation is prohibited.
*
* _NVRM_COPYRIGHT_END_
*/
Which makes NVIDIA's module a non open source module, or non-Free software,
"The second, and larger, point is more complex. You are saying that the kernel cannot link to non-open source software. Taken at face value this is true - you cannot incorporate non-GPL software into the kernel codebase. However, there is NOTHING stopping you writing your own little proprietary thing that hooks into the kernel. By your logic, it is illegal to run any non-GPL software on a system running a linux kernel AT ALL. At some point, everything uses the kernel interfaces, or the libc interfaces, or the X interfaces, or whatever. Is the Acrobat reader illegal for doing so? How about Unreal Tournament 2k4?
You argument appears to be based on turning the situation around. Nobody is suggesting integrating the proprietary drivers into the kernel source. Packaging them up separately as a distinct entity, just like Nvidia already do, is certainly not illegal. How is Nvidia distributing the binary drivers different from, say, Novell distributing the binary drivers? Like I said, it isn't."
Since I obviously can't explain it in a way that makes sense to you, allow me to let, Eben Moglen, the top lawyer of the Free Software Foundation, the organization whose's president, Richard Stallman, wrote the GNU GPL, do it, by quoting the actual article of this digg story:
"According to the Free Software Foundation's top lawyer, Eben Moglen, though, the kernel is governed in practice by a modified GPL. "If the kernel were pure GPL in its license terms...you couldn't link proprietary video drivers into it, whether dynamically or statically," Moglen said in a January interview." - Tsuroerusu, on 10/12/2007, -11/+20@ cazabam:
"Why can't distros distribute proprietary modules by law?"
Because Linux is licensed under the GNU General Public License (GPL) v2, and it prohibits linking to software that is not open source.
"That sounds like FUD to me."
It absolutely is not, it's the crystal clear truth.
"There is no reason a distributor cannot make a deal with, e.g. Nvidia to distribute proprietary packages"
You absolutely can distribute proprietary applications for Linux, but NOT proprietary drivers if you wanna abide by the law, or, in words that may make more sense to you, comply with the GPL.
Also, this whole thing is old news, Novell stopped distributing proprietary kernel drivers over 8 months ago, it's just that it's only now that this change in policy effects the big enterprise releases. - cazabam, on 10/12/2007, -9/+17"Because Linux is licensed under the GNU General Public License (GPL) v2, and it prohibits linking to software that is not open source."
Erm ... what? That statement makes no sense at all. First of all, the Nvidia kernel module is distributed as source. The proprietary bit doesn't even link to the kernel, it links to X.org.
The second, and larger, point is more complex. You are saying that the kernel cannot link to non-open source software. Taken at face value this is true - you cannot incorporate non-GPL software into the kernel codebase. However, there is NOTHING stopping you writing your own little proprietary thing that hooks into the kernel. By your logic, it is illegal to run any non-GPL software on a system running a linux kernel AT ALL. At some point, everything uses the kernel interfaces, or the libc interfaces, or the X interfaces, or whatever. Is the Acrobat reader illegal for doing so? How about Unreal Tournament 2k4?
You argument appears to be based on turning the situation around. Nobody is suggesting integrating the proprietary drivers into the kernel source. Packaging them up separately as a distinct entity, just like Nvidia already do, is certainly not illegal. How is Nvidia distributing the binary drivers different from, say, Novell distributing the binary drivers? Like I said, it isn't. - cazabam, on 10/12/2007, -7/+13"According to the Free Software Foundation's top lawyer, Eben Moglen, though, the kernel is governed in practice by a modified GPL. "If the kernel were pure GPL in its license terms...you couldn't link proprietary video drivers into it, whether dynamically or statically," Moglen said in a January interview."
So in summary: it's NOT illegal to dynamically link non-GPL drivers into the kernel, and it's not illegal to distribute them, although the FSF wish that it was. What was the point of this again? - Vektuz, on 10/12/2007, -3/+9Its not like windows comes with proprietary nvidia drivers.
You still have to download them from nvidia's site just like eeeeeveryone else (or suffer cruddy pseudo driver support that doesnt work correctly with games) - cazabam, on 10/12/2007, -3/+8@Tsuroerusu
FUD also looks like this: "That linux? yeah, it restricts you all ways up. Did you know that it's ILLEGAL to use it if you use any proprietary software? Yeah, must be true. Some guy on Digg said it." - mancat, on 10/12/2007, -3/+8@Tsuroerusu
Or maybe I work with multiple flavors of Unix day in and day out. You wouldn't know, and it doesn't really matter. The point is that I'm not so blind that I can't recognize that requiring an extra step to acquire fully-functional proprietary drivers is a huge detriment to the acceptance of Linux by the uneducated computing masses. Just drop your bias for a second and think about how much of a pain this process could be for someone who is completely new to Linux, and is completely unfamiliar with the system. It may be easy for YOU, but you are not that person. Most newcomers would be pulling their hair out even after reading that HOWTO. - trogdoor, on 10/12/2007, -2/+7"Just because something is distributed as source, it is not necessarily open source." Just to make things clear I think he meant that Just because something is distributed as source, it is not necessarily Free ( as in freedom ).
- psxman, on 10/12/2007, -0/+4I wasn't aware Torvalds hates the GPL. In fact, the only quote expressing any like or dislike of the GPL by him that I know of is "Making Linux GPL'd was definitely the best thing I ever did." Would you happen to have a source for his intense hatred of the GPL?
- pozzoe, on 10/12/2007, -2/+6@i440
If it is illegal for Novell to do it maybe it is also illegal for me, as user, to do the same. Maybe it is time linux community starts taking this problem serious.
Anyone knows what is that nvidia and ati want to keep secret in the driver's code?
Let's say it's some tricks to make antialiasing faster. Why couldn't they just release sources to simpler drivers and let the OS community do their own twiking? Or just release the API, is there any reason to make APIs propietary? - cazabam, on 10/12/2007, -4/+7@Tsuroerusu: surely by pointing me to the packaged drivers for Novell, you prove that it is not, in fact, illegal to distribute them? This was the point I was making - there are many reasons for Novell to stop distributing binary drivers. Legality is not one of them.
- arachnist, on 10/12/2007, -3/+6Finally. And I wouldn't be surprised if Novell started some project or helped out the existing ones that aim to bring 3d accelerated drivers to nvidia and ati users.
- Tsuroerusu, on 10/12/2007, -4/+7@ cazabam #1
"FUD also looks like this: "That linux? yeah, it restricts you all ways up. Did you know that it's ILLEGAL to use it if you use any proprietary software? Yeah, must be true. Some guy on Digg said it.""
It's not illegal to use the proprietary drivers, it's illegal to distribute them in precompiled from, sure you could include NVIDIA's installer file on a CD with a distro if you wanted to, because in that state, it's not actually linked against anything that would be a violation of the GPL.
And also, I have acutally read the GPL on multiple ocations, and I know it quite well, that's not to say I can point to a specific paragraph of it and so on, but I know it's terms very well.
@ cazabam
"@Tsuroerusu: surely by pointing me to the packaged drivers for Novell, you prove that it is not, in fact, illegal to distribute them?"
"This was the point I was making - there are many reasons for Novell to stop distributing binary drivers. Legality is not one of them."
Well, what is copyright law then, because if I follow your logic I get the sense that it's not associated with laws.
This is Novell's position on the non-Free drivers, taken off of the opensuse.org website:
"We will not ship any non GPL kernel modules and not offer any download solution via YOU.
Most developers of the kernel community consider non-GPL kernel modules to be infringing on their copyright. Novell does respect this position, and will no longer distribute non-GPL kernel modules as part of future products. Novell is working with vendors to find alternative ways to provide the functionality that was previously only available with non-GPL kernel modules. (aj)" - Tsuroerusu, on 10/12/2007, -3/+6@ mancat
"@Tsuroerusu
Or maybe I work with multiple flavors of Unix day in and day out. You wouldn't know, and it doesn't really matter."
You're right, I don't know, I was just guessing by looking at your earlier statements.
"The point is that I'm not so blind that I can't recognize that requiring an extra step to acquire fully-functional proprietary drivers is a huge detriment to the acceptance of Linux by the uneducated computing masses. Just drop your bias for a second and think about how much of a pain this process could be for someone who is completely new to Linux, and is completely unfamiliar with the system. It may be easy for YOU, but you are not that person. Most newcomers would be pulling their hair out even after reading that HOWTO."
Well, this doesn't seem to bug Windows users one bit, why is it that going to nvidia.com and downloading drivers is perfectly fine for Windows? When it's like the end of the world for Linux? - pozzoe, on 10/12/2007, -1/+4If they want to continue with xgl development they NEED video drivers. I don't know letting people link drivers by themselves is solution though. Maybe it is also illegal for users to do the linking...
- p200, on 10/12/2007, -1/+4Has nothing to do with being a Nazi. Please read the article. I will surmise the most important features:
Instead, Novell software automatically gives customers the "option to download drivers," a method that "also gives the responsibility for drivers to the vendors, which is where it belongs," Dyroff said.
... and ...
"Novell's new technique ensures proprietary drivers stay up to date, the company said."
Ideally they [card vendors] would release their drivers open source and we could all be done with this mess, yet this is likely the way it will stay for years. Exactly how has been. - X111, on 10/12/2007, -1/+3I for one think you're quite right. The default driver runs like ***** and making linux newcomers jump through hoops to even get normal performance DOES push back acceptance, whether those hoops are particularly difficult or not.
- raid517, on 10/12/2007, -1/+3Oh give it a rest. I've used Linux almost exclusively for over 5 years. It isn't 'anti OSS' comments I'm making, it's 'anti fanboy.'
How about if I put it like this then? Linux sucks! Apple sucks! Windows sucks!, Nvidia sucks! ATI sucks! Intel sucks! AMD sucks!
There, now all fanboys everywhere can feel equally enraged and I haven't singled anyone out for any special treatment at all.
Hopefully you will get the picture now. - raid517, on 10/12/2007, -2/+4'I hope they open up the drivers'
They won't. They are a commercial company. Not a charity. Anyway call it what you will. Call yourself a 'purist' even, if that suits you better. But it's the point where people start frothing at the mouth over these things that I really begin to loose interest.
I have no love for Apple, Linux, Windows, Nvidia. ATI or any breed of fan boys at all. For me they are all just products - and as products they are emotionally empty. - gamer82987, on 10/12/2007, -3/+5@cazabam
the reason why GPL is set up that way is to stop reliance in the contributor of the proprietary code. keeping the kernel as proprietary free as possible keeps the code from:
1) possible monetary damage disputes. i.e. i own the code, and since Linux is distributed x amount of time... you owe me $x.
2) reliance on the proprietary source. it is very difficult to keep everything intact when the the source of the proprietary code is long dead, or is unwilling to give any feedback of what the code does. a very good example is the system for the DMV created by a child pedophile, he didn't bother to document his work and and holding information ransom until the government gets him out of jail. what if nvidia does go to oblivion, what now, what happens to all our graphic cards in the future, a new handy dandy feature is not supported by this driver release and the only people that can help are long gone.
3) modules unable to work when updated. one of the problems i see in proprietary drivers such as provided by ati, is that in a major update would just break the compatibility of previously installed driver. knowing how that specific driver interacted with the kernel would have helped the developers from breaking compatibility or could have changed the way the said proprietary driver would interact so that it would not break.
as much as i am used to the Microsoft/ apple way of doing things, there is a reason towards this madness. and this is why i think Linux will outlive all the OS out there, it is adaptable and not reliant on others for its success or to continue living. i just point out the 3dfx drivers and how it went open source. without it, i doubt we would see any support for my old voodoo 3 beyond win2k or other derivatives of Linux. - geronimo, on 10/12/2007, -0/+2"I don't really notice any difference for 2-D"
Interesting, I noticed a huge difference. - optikschmoptik, on 10/12/2007, -1/+3It would be nice to see Novell back this up positively. There are two places where proprietary kernel modules are persistently needed:
1. Video drivers. This has been discussed at length. Novell has been a driving force behind XGL, which relies almost entirely on closed-source ATI and nVidia proprietary kernel modules. It makes linux look cool, and it's likely to win market share for SLED and linux in general. So Novell better help bring the OS drivers up to speed (pun intended), because one of their key features relies on something else.
2. Wireless networking. All I can say is that it's been a headache. I still use ndiswrapper because bcm43xx just won't work on my d800, and yes I've compiled 2.7.17.7, and 2.7.17.2. I have scars. This seems to be another legal jungle, because developers of the drivers are walking through an IP minefield.
SuSE has come a long way in just the six months I've been using it. But let's see some real power behind their new policy. - cduquette, on 10/12/2007, -0/+1I hope Novell has something up its sleeve. They're the ones that essentially started and finished XGL. Xgl needs proprietary drivers if you're on the Nvidia front. So something has to give. Maybe this will get Nvidia to open up?
Nobody said anything about making NVIDIA/ATI go opensource, developers just want them to publish the specifications to make the cards work. The nouveau http://nouveau.freedesktop.org/wiki/ team has been working hard on reverse engineering nvidia cards. http://nouveau.freedesktop.org/wiki/RequiredFunctionality is their progress so far. Support opensource :P - gotamd, on 10/12/2007, -1/+2Vista comes with video drivers for nVidia cards and ATI cards AFAIK.
- count_z, on 10/12/2007, -0/+1As an addendum to my post just above. It'd be great if they did offer good open source drivers, but good closed-source drivers are better than no drivers (or relatively crappy 3rd party open-source drivers).
The average home users doesn't give a crap about open-source versus closed-source, they just want their stuff to work... heck, doesn't everyone? - count_z, on 10/12/2007, -0/+1@bieber
From whence you do get this sense of entitlement? When you buy a car do you demand the blueprints? Drivers can contain trade secrets (e.g. found a way to get 10% more FPS in Doom 3 that they'd rather not share with the competition) and tons of information about a piece of hardware works.... information that you might not want to make public.
So if ATI and Nvidia were forced to either completely open-source their drivers, or not provide any at all... which do you suppose they'd chose? And how would that help Linux? Because that IS the point right? Benefitting Linux and Linux users (desktop ones anyhow... shouldn't have X on a server in most cases). - Tsuroerusu, on 10/12/2007, -5/+6@ cazabam
"So in summary: it's NOT illegal to dynamically link non-GPL drivers into the kernel, and it's not illegal to distribute them, although the FSF wish that it was. What was the point of this again?"
I give up, I don't wanna argue with you about something you obviously already have made up your mind about, read what trogdoor just posted, and maybe you'll be enlightened. - geronimo, on 10/12/2007, -0/+1Wow, listen to that attitude.
This is why wireless drivers on linux suck, why we have a lame "WPA supplicant", some people have hacked together a ndis wrapper so we can use windows .dll's. What this means is getting wireless working under linux is a giant ass chore.
Likewise getting decent video working is a giant ass chore.
Basically any "neat" functionality, "neat" meaning people understandably don't want to divulge the source of their drivers, is hard to use in linux. I have a choice of OS for my new laptop, and I'm thinking of going with windows just because I've been burned too many times on linux re: wireless and video even. We want something that works out of the box. Windows ships closed source wireless/video drivers. It just works, linux doesnt.
I of course use linux for my 2 home desktops, but I can afford to hack around on those and get them to work. With a laptop, I don't wanna play games with the kernel to make it work. Most people dont wanna play games with the kernel to make it work. - inactive, on 10/12/2007, -1/+2@ Tsuroerusu
You my sir are the one spreading FUD.
Nvidia ships a closed binary driver that links to an open source blob, that open source blob is what links to the kernel. There is nothing illegal about that unless you only consult the lawyers that tell you that is illegal and then proclaim that "all the lawyers I've talked to on the subject feel this is illegal". Hey that's great, you and gregkh should team up and make a world tour spreading fud about nvidia and how you make every distro your henchman for your zealotry instead of just taking action against nvidia directly with this obvious illegal thing they are doing. It's always easier to cuss out the newspaper boy about how bad the newspaper sucks right? - cazabam, on 10/12/2007, -4/+5"I give up, I don't wanna argue with you about something you obviously already have made up your mind about, read what trogdoor just posted, and maybe you'll be enlightened."
Right you are. I read the post. The stuff about the definition of derivative works is interesting. However, the entire debate has gone WAY off topic. My original question was more along the lines of "if it's legal for one company to distribute, why not another?" in direct response to atdigg's post. The copyright law implications of the code, especially with regard to the FSF lawer using phrases like "If the kernel were pure GPL ..." (note the 'if' there) implies that the issue runs deeper. The post trogdoor linked to used the same allusion - that the linux kernel is effectively using a modified GPL - by saying "if there were no special licensing considerations for Linux," and this needs to be clarified.
Does the use of this language imply that the effective Linux licence has special provision for proprietary drivers or not? If the official statement from the 'top lawyer' cannot definitely say that the linux kernel is using pure GPL or not, then it's a difficult topic to discuss. I know that Linus Torvalds has said that the 'freeness' wanted by the FSF is not one of his primary concerns, and is critical of the GPLv3, so this may be a case of the FSF wanting a more pure licence that it currently has. - bieber, on 10/12/2007, -1/+2They distribute source for their kernel module, but not under the GPL, thus not meeting the license terms.
- chutz, on 10/12/2007, -0/+1I think the actual developers of the Linux kernel would beg to differ. For one a LGPL module is just as illegal to distribute as a precompiled nVidia module (the LGPL isn't the GPL, so it's illegal to link anything under the LGPL into the kernel). Also, the Linux kernel developers don't like proprietary drivers, they are usually rather broken (try loading the nvidia and ATI drivers into your kernel at the same time to see how broken it is).
If you want a pretty good writeup from a Linux Kernel developer about why they are totally against binary kernel modules, have a look at this:
http://lkml.org/lkml/2005/12/5/32 - chubbymidget, on 10/12/2007, -0/+1Novell. = Rodney Dangerfield of IT
- ThomasOkken, on 10/12/2007, -1/+2The restriction that kernel modules must be GPL'd is based on the idea that all kernel modules are "derived works" (derived off the kernel, that is), by virtue of them including the kernel headers.
I doubt that that restriction would stand up if challenged in court. IMHO, applying the GPL (not LGPL) to the kernel is not the problem; it's Linus' strange attitude towards modules that's the problem.
Note that even Linus can't escape admitting that *some* kernel modules are *not* derived works, specifically, those that are based on device drivers that are older than Linux itself. But, that means that the *time* that some code was written becomes the touchstone of whether that code is derived or not. I'm not a lawyer, but I'm pretty confident that any *actual* lawyer could rip that type of logic to shreds in court. - spooq, on 10/12/2007, -1/+2The point that virtually every comment here misses is that Nvidia (by far the most important company this applies to for my money) dont distribute a binary kernel module. They distribute the source to their kernel module and a binary X11 module. X11 uses the MIT license, which allows them to do exactly what they are doing, and almost anything else they can think of as well. All the ranting and frothing above is completely meaningless once this fact is recognised.
I dont know what the ATI equivalent is, but if they dont do the same thing, they should fire their lawyers and start coding.
As a final point, AFAICT its not even guaranteed that a kernel module could be proven to be a derivative work. - ucg1, on 10/12/2007, -0/+1I've used both the NVidia's closed drivers as well as the open source one and I don't really notice any difference for 2-D. I just use the open source one these days because it makes no difference to me. Maybe when Ubuntu gets Xgl/Compiz I might change.
- somerandomnerd, on 10/12/2007, -2/+2http://en.wikipedia.org/wiki/Godwins_law
- pobster, on 10/12/2007, -0/+0One thing that I think is worth mentioning is that Intel's video cards are open source friendly.
OK, they are nowhere near the raw performance of Nvidia & Ati's cards and are integrated only (ie you can't buy a Intel Video card IIRC) but the more recent ones are easily enough to run XGL nicely. (This also means the Apple Mac mini & Macbook can do it without propriety drivers - see http://youtube.com/watch?v=yky3153o5SY&mode=related&search= ) - leafeater, on 10/12/2007, -1/+1It's difficult to download your drivers, if you use a network, which needs proprietary drivers to download the drivers in the first place (i.e. AVM).
- JQP123, on 10/12/2007, -1/+1GPL fanatics getting you down? I've got the solution: FreeBSD - Open Source without prejudice. For the desktop there is PC-BSD (based on FreeBSD).
www.pcbsd.org - JQP123, on 10/12/2007, -0/+0"If theres money to be made selling hardware to Linux users, then they will do what they want, within the boundaries recommended by their lawyers."
One thing is clear, the Open Source community isn't going out of their way to make Linux attractive to hardware vendors. - JQP123, on 10/12/2007, -0/+0"Linux is choice, let us have our choice on what drivers we want to use! Dont lock us out of choice."
Linux is about choice as long as you remain politically correct. Face the obvious facts, the Open Source community has little or no interest in working with, supporting or facilitating anything that is not Open Source. Not saying this is good or bad, it's just the way it is.
In effect, the choice of a desktop OS is not just Windows vs Linux, it's commercial vs Open Source. If you're satisfied that Open Source can address all your software needs, Linux is the obvious choice. Otherwise, Windows is the alternative. - kubudubudubuntu, on 10/12/2007, -7/+7It not that bad,they are verry easy to install anyways, and theres tutorials all over the place, + Suse will probably offer some support to installing them.
- gotamd, on 10/12/2007, -1/+1What about CAL-I?
- Tsuroerusu, on 10/12/2007, -2/+2@ farm3r
"How will EFI affect this? If you load the driver from BIOS does that solve the problem?"
No it does not, and you can't really load that driver via EFI, because then Linux would not know about it and would not be able to provide hardware accelerated 3D.
In any case where you as a distributor link non open source code to GPL licensed code, you're violating the GPL, if you're just a user of Linux and the NVIDIA driver, I don't see a problem as the GPL doesn't restrict any use of the software. - babbling, on 10/12/2007, -2/+2This is a good move by Novell. We need to reject proprietary drivers to pressure hardware manufacturers into providing data sheets or Free Software drivers.
- GMorgan, on 10/12/2007, -0/+0Once again this ONLY matters in terms of distribution. People are legally allowed to compile in a kernel patch whose license says
1. If you suxx0rs use this code then I totally pwn you for now and all time.
2. By teh way. You are gay.
As long as they DON'T redistribute it. There is no legal threat to Nvidia whatsoever and there is NO threat to end users who do not distribute a compiled module.
Like I attest to in another post it would be perfectly legal for a distributer to put the module code and the blob on the install disc and compile them at install (provided they have an option to do otherwise maybe). Result 20 second longer install, perfectly working Nvidia card.
It would also be perfectly legal for them to GPL the shim and keep the blob closed. Then they can distribute legally as well. - GMorgan, on 10/12/2007, -0/+0Nope only distribution is illegal. You can actually link in whatever proprietry code you want in your own kernel you just aren't allowed to redistribute the compiled binaries without the complete code. (this is all about distribution rather than use)
A simple solution would be to put the source code for the shim on the disc with the nvidia blob and compile it on install (would make the install process 20 seconds longer maybe). They haven't distributed it compiled then so theres no GPL violation. - inactive, on 10/12/2007, -2/+2Now you know why Linus Torvalds hates the GPL, parts of it sucks ass and holds back innovation.
-
Show 51 - 76 of 76 discussions



What is Digg?
Digg is coming to a city (and computer) near you! Check out all the details on our