GPLv2 Vs. GPLv3
chessweb writes "Here is a rather enlightening article by Richard Stallman on the reasons for moving to GPLv3 that puts the previous TiVo post into the right context." From the article: "One major danger that GPLv3 will block is tivoization. Tivoization means computers (called 'appliances') contain GPL-covered software that you can't change, because the appliance shuts down if it detects modified software... The manufacturers of these computers take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv3 ensures you are free to remove the handcuffs. It doesn't forbid DRM, or any kind of feature. It places no limits on the substantive functionality you can add to a program, or remove from it. Rather, it makes sure that you are just as free to remove nasty features as the distributor of your copy was to add them."
So it is okay for you to use everyone else's hard work for free, but not for anyone else to use your hard work?
Support for my statement above: GPL on Qikipedia From the link:
Non-GPL'd and non-free software can be developed with GPL'd tools The program must be GPL only if it includes GPL source code or it is linked with a GPL library. For example, using gcc to compile proprietary software is allowed.
Wouldn't it have been better to simply post a link to were you copied this forum post from?
t hreadID=2246&messageID=11919&start=-1
http://news.com.com/5208-1030_3-0.html?forumID=1&
Of course, it would not make it any more correct than it was back then.
You are free to code any damn thing you want. If you use GPLv3 code you need to respect the wishes of the writers of that code, code you use for free. Release your own code under any damn license you want to. It's yours. If you don't like the terms of GPLv3 then don't use it, and certainly don't complain about code others wrote and gave to you without cost, asking only that you return the favor, and release any improvements you DISTRIBUTE back for others to use and improve. If you don't like GPLv3, just don't use it.
On Services... (yeah, what -did- happen to that SAP bit?)
...
One major danger that GPLv3.1 will block is Googlization. Googlization means services contain GPL-covered software that you can't change, because the product is never published and so no source code has to be provided. The manufacturers of these services take advantage of the freedom that free software provides, but they don't let you do likewise. GPLv3.1 new services clause ensures you are free to remove the handcuffs.
On network-enabled devices...
One major danger that GPLv3.2 will block is Xboxization. Xboxization means devices contain GPL-covered software that connect to a network that you can't change, because the network shuts you out if it detects modified software... The manufacturers of these devices take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv3.2's new network clause ensures you are free to remove the handcuffs.
On ATI/nVidia Linux drivers..
One major danger that GPLv3.3 will block is BLOBization. BLOBization means software packages containing GPL-covered software that communicate to a non-GPL-covered piece of binary software (BLOB) that you can't change, because the BLOB is not covered by the GPL... The developers of these BLOBs take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv3.3's new network clause ensures you are free to remove the handcuffs.
On not having to GPL programs compiled using GCC..
One major danger that GPLv4 will block is GPL-less compiling. GPL-less compiling means programs created using GPL-covered software that you can't change, because the actual program contains no GPL-covered source code. The developers of these programs take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv4's derivative work clause ensures you are free to remove the handcuffs.
On using e.g. The Gimp to create your graphics..
One major danger that GPLv4.1 will block is artization. artization means original works of art created using GPL-covered software that you can't change, because the work is strictly non-GPL. The artists of these works take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv4.1's new GPL-created works clause ensures you are free to remove the handcuffs.
On working around the GPL by re-implementing (much the same that free software developers re-implement things covered by patents)..
One major danger that GPLv4.2 will block is reimplementation. reimplementation means software programs developed based on, but re-implemented in a different way of, GPL software that you can't change, because the work is not GPL. The developers of these programs take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv4.2's new GPL-reimplementation clause ensures you are free to remove the handcuffs.
On using GPL software internally only...
One major danger that GPLv5 will block is in-houseation. in-houseation means software programs based on, developed with, and so forth and so on as set forth in the other clauses, that is only used in-house that you can't change because the source code need not have been made available. The developers of these programs take advantage of the freedom that free software provides, but they don't let you do likewise... GPLv5's new out-house clause ensures you are free to remove the handcuffs.
And so forth and so on. It should be pretty clear that the GPL is all about freedom - pure and utter total freedom to do as you wish without restriction, as long as the product of this doing is available to everybody else to do with as they wish without restriction as well. Whether this is truly freedom or not (i.e. as opposed to the BSD-style licenses) is a never-ending debate.
Someone with a 6 digit UID that doesn't know that compiling something with GCC *doesn't* make the binary GPL'ed? Hand in your geek credentials please.
This is the sort of FUD that Microsoft must be loving. Every piece of code ever written by vi or emacs certainly isn't GPL'ed, just like every track that was finished up in Audacity isn't GPL'ed and just like people who use Visual Studio aren't obliged to hand over their source and binaries to MS gratis.
Please also note that you're only forced to distribute your modifications if you're distributing/selling the modifications. If you edit some bitchin' GPL code and keep it locked away inside a corporate intranet, I don't think there's any obligation (other than the "spirit" of the GPL) to open up your changes.
Moderation Total: -1 Troll, +3 Goat
sigs are hazardous to your health
"Certain decentralized forms of peer-to-peer file sharing present a challenge to the unidirectional view of distribution that is implicit in GPLv2 and Draft 1 of GPLv3. It is neither straightforward nor reasonable to identify an upstream/downstream link in BitTorrent distribution; such distribution is multidirectional, cooperative and anonymous. In systems like BitTorrent, participants act both as transmitters and recipients of blocks of a particular file, but they see themselves as users and receivers, and not as distributors in any conventional sense. At any given moment of time, most peers will not have the complete file."
Problem is that you could then in theory ask any BT user to provide the source code for that binary. More here: http://gplv3.fsf.org/bittorrent-dd2.html
"It doesn't cost enough, and it makes too much sense."
I paid for NVidia binary drivers when I bought the video card. I'll complain about them as much as I damn well please.
The Farewell Tour II
But don't think for one second that the GPL is about "freedom".
Yes you should.
Public domain is about freedom. To a lesser extent, so is BSD.
They do nothing to protect freedom. They are merely free for the taking.
If you *take* something from the public domain and modify it, it can belong to you, and you can then distribute it while denying the very public who freely provided that source material to you in the first place the right to further modify it. So sure, the public domain is about freedom: giving YOU freedom to freeload the work of others and ultimately screw me over.
The GPL infringes on our freedoms for very specific resons, and it does so with good intent. But it infringes upon them nevertheless.
The GPL is about perpetuating the freedom of the *code*, specifically the freedom to modify the code.
And in doing so, the *only* freedom of yours that it infringes upon is your freedom to infringe upon others freedom with respect to modifications of the code further down the line.
(It really denies very little. You can use GPL tools to make non-GPL products (including other programs.) You can use GPL tools to run your business without returning anything back. The only thing you are required to give back is any modifications to the GPLed code itself, and even then, ONLY if you are re-distributing it.
Derivative works of GPLed CODE remains GPLed. That's it. That's the GPL in a nutshell. Everything in the GPL is there simply to ensure that no-one can take GPL'd code and fork it into proprietary non-free code. (or [with gplv3] tivoise it by binding 'gpl code' into hardware/drm schemes that make it effectively non-free.) To ensure that any tool that starts out FREE cannot become NON-FREE.
(TiVoisation is the equivalent of putting a 'free man' into a cell with no doors or windows. There's nothing legally stopping him from leaving the cell -- but his 'freedom' isn't worth a hill of beans -- he still can't get out.)
When you GPL your code you are asserting that it will be forever "free", that nobody can lock it up.
GPL is a lot like Free Speech.
Which is more 'free' a society where you can say whatever you like, and then someone in government can exercise their freedom to lock you up for ever. [=public domain] Or a society where you can say whatever you like, and the government is forced to protect your right to do so, even though you are infringing on someones freedom to lock you up forever. [=gpl]
ASP loophole = the fact that the GPL doesn't cover programs you use over a network.
As an AC reply noted (thanks, AC!), there's something called the Affero GPL, and you can (if I'm reading the draft right, I could be wrong) distribute GPL3 code under the Affero GPL. If you do that then anyone installing the program on a network (e.g. a web server) will have to make the source available to its users.
Go somewhere random
The interesting part of it is that if you can reliably control what is run on the hardware, the costs can be transferred from the buyer/user of the hardware to others. This means the hardware can potentailly be sold at a lower price than more open hardware, allowing it to gain a competitive advantage if the reduction in functionality is smaller, in monetary terms, than the reduction in the price. If this is the case, both the buyer and the seller can also be said to be better off.
Ok. If I go out and release a professional quality piece of software. Now this arbitrary "consumer clause" would allow commercial manufacturers to rip off my software, place it on tivoized closed hardware and sell it. My software was meant to professional use all along, even though I wanted it to be Free Software.
I thought GPLv3 would protect me, individual free software developer, from this nonsense. But now, what used to be a loophole in GPLv2 is now a right written down for commercial entities to go hunt and close down free software. I sincerely hope somebody will understand and fix this problem before GPLv3 goes final.
The GPL is a legal document which recognises the FSF as its issuing authority (Clause 9), so if anyone else issued a licence called GPL which purported to succeed the current GPL, they would have a legal battle on their hands.
Only if you modify the source code AND distribute it. Otherwise you can do whatever you want.
evil is as evil does
...and another one who also fails to see the difference between DRM and encrypted messages. Come on people!
With PGP (and GPG or whatever) your encrypted messages can be freely decrypted by the intended recipients, and outsiders can not because they do not have access to the key, and getting the key is a computationally burdening task.
With DRM, you have both the encrypted content and the key. It works by hiding the key from you so that you cannot decrypt the content at will, and instead only under whatever circumstances the software requires for it to get the key from its hiding place to decrypt the content. At some point in time the DRM software will handle the decrypted content. If it is open source, you can find this place and insert your own code there, thereby circumventing the whole scheme.
A popular tag for DRM articles on Slashdot is "defectivebydesign". This is not a buzzword or slogan or empty groupthink, it's actually true.
Many people complain about GPL being less Free than the BSD license. They miss the point.
GPL wants to ensure that all modification to the code remains free. BSD allows you to do anything to the code, including making it proprietary. Remember Windows' TCP/IP stack used to behave identically to BSD's, hinting to same underlying code.
So if you realease code version n under the BSD license, sure, users of n can do whatever they god damn want. But it does not ensure anything for users n+1. GPL, on the other hand, ensures that users of n+1 enjoy exactly the same liberty. So, while BSD users have more immediate liberty, users of GPL have more long-term (in the sense of derived works) liberty.
Ask HP-UX, AIX, Irix, and Solaris users if they enjoyed the same liberty the BSD gave to HP, IBM, Silicon Graphics, and Sun. Ask Linux users if they enjoy the same liberties as the kernel hackers have.
So which license gives more liberty? Well, in the short-term, BSD. On the long term, GPL.
As a developer providing code, selecting the license depends on where you want it to go. Do you want it to spread as far and wide as possible, at the expense of the original code? Go BSD. Do you want the original code to enjoy improvements brought from other people, at the expense of how far it'll spread? GPL.
As a developer using free code, sure, BSD is so much easier to use. You can use it at work on your proprietary product that feeds your kids! It's harder to make a business model around GPL code, though (yes, I know there are many examples out there, but they still remain the [loudly publicized] exception to the rule).
I really like the example of ODE (a game physics library). It is licensed under LGPL and BSD, but really, it seems most people use it as BSD. I know it's been used by Crytek (they contributed changes back), and I've heard it's been ported to the PS2, XBOX, and PS3. This is something that only the BSD license allowed, because the NDA of the devkits for those consoles implicitly prohibits the use of LGPL or GPL code in games, as the changes contributed back to the GPL/LGPL code will give hints of what's behind the NDA, and furthermore the developers cannot provide you with an object file that you can link with the GPL/LGPL code.
There are two sides of the coin, here: the contributors to the mainstream ODE library are happy to know their work is used in awesome places like those consoles. However, the mainstream code is none the wiser: those changes have never made it back to the main tree.
So what do you want? Your code to be improved upon by the community, or thrown into the wind, never to see those improvements come back, but knowing it went much farther than it ever could if you tied it down with the GPL?
It really is two different things, and saying that one is more restrictive than the other is missing the point.
Misleading titles? Inflammatory blurbs? Keep in mind that Slashdot is a tabloid.
Suppose that Darth goes ahead and does it anyway, what does the enforcement process look like? Darth gets sued under copyright law, like IBM did against SCO with IBM's counter claims. The free software side has to prove two things:
In order the suit to be successfull against Darth, both steps have to succeed. Step (2) can be optimized by the FSF, by adjusting the terms of the GPL, to make it as difficult as possible for Darth. The GPLv3 is an improvement in this process. Step (1) is the step that the FSF can not control, because the applicable copyright law is written by the legislature (in the U.S. that would be congress), not by the FSF! Therefore, step (1) is the weak point! If Microsoft is ever sued under the copyright law because of the coupons, Microsoft will attack the week point of the argument (1). This is what Microsoft's lawyers will say:
The key assertion in the above is:
If Microsoft can win on the key assertion. Then it will win. If the lawyers for the free software side can knock out the key assertion then they will win.
Why do the coupons exist in the first place? Why did not Microsoft just hand out SuSE installation DVDs? The reason is obvious. Microsoft did not want to become a GNU/Linux distributor. The coupons are a dodge to get around this. The whole raison d'etre for the coupons was that that Microsoft avoid becoming a GNU/Linux distributor! Can anyone believe that Microsoft allowed the coupon scheme to proceed, without first getting on Lexis and finding out whether the scheme would work? It is guaranteed that in some Microsoft lawyer's briefcase, there is a brief. And that brief deleniates in excruciating detail why the coupon scheme does not make Microsoft a GNU/Linux distributor. And the brief was checked and rechecked by multiple lawyers before the coupon scheme was ever allowed to proceed.
The free software argument against the MS-Novel coupon scheme, is a chain. And like any chain, it is only as strong as its weakest link. It is no good for free software advocates to sit back and congratulate themselves on how strong their strong point (2) is. Of course it is strong! The FSF deliberately designed the GPLv3 to make it strong! The point is, that Microsoft is not going to attack this strong point. Microsoft is going to attack the weak point (1).
Instead of congratulating them selves, free software advocates should be critically examining their own arguments looking for weak points. And when they find one, they should research the caselaw looking for ways to shore up their arguments! They should not be replying to the weak points with mere repeated assertion of what they hope should be true, instead they should do some real scholarship.
Let us not forget the anti-patent provisions of GPLv2! It includes an "im
Regardless of how you look at it, Tivoization turns free software into proprietary software. The FSF is blessing this. What happened to the Four Freedoms?
Quotes from two prominent FSF essays (emphasis mine):My question for the people at the FSF who've made the decision to allow the tivoisaztion exception: What happened?
Have you driven a fnord... lately?
You must wait a little bit before using this resource; please try again later.