This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature: Legal

Source Distribution and the GNU GPL

By Richard Stallman on July 15, 2006 (8:00:00 AM)

Share    Print    Comments   

The goal of the GNU GPL is to ensure that all users have the four essential freedoms -- (0) to run the program, (1) to study and change it, (2) to redistribute it, and (3) to distribute modified versions. Access to the source code is essential for freedom 1 and freedom 3. Thus, we designed the GNU GPL to insist that all redistributors make the source code available to their users. This requires them to do a little extra work, but that work is generally necessary for the sake of the users' freedom. Keeping source code conveniently and reliably available for the users is more important than saving distributors a little effort.

Under GPL version 2, distributors who release binaries through a network server have to release the corresponding source code in the same way. This requirement is the only way to assure that users can get the source, and the that it is the right source.

The simplest way to fulfill this requirement is to put them both on the same server. This requires extra work, but not much. The distibutor needs server space for the source as well as the binary, and has to upload both. Anyone that does these things for the binary can manage to do them for the source as well.

Distributors that distribute binaries on CD have two options for distributing the corresponding source: either distribute a source CD with each binary CD, or offer to provide the source CD subsequently by mail order. The second alternative is meant for consumer products with embedded free software; for nearly everyone else, the first alternative is the one to use. GNU/Linux distributors that find the second alternative inconvenient should drop it and use the first instead.

GPL version 3 (current draft) keeps these requirements basically unchanged. We clarified the fact that binaries on physical media require sources on physical media, but this isn't really a change.

The current draft does propose two small substantive changes to these requirements. One requires those who sell products with embedded software to continue providing source by mail order for as long as they provide other customer support for the product. This won't affect GNU/Linux distributors. The other allows distributors to charge a higher price for mail order sources (but we've since decided to revert that change).

However, we're now considering a major change in this policy. The coming draft of GPL version 3 will propose a new alternative allowing, for the first time, distribution of binaries on physical media and providing the source code over the network. This will require a commitment to keep the corresponding source code version available on a network server for three years.

I rejected that option in the past because downloading the sources corresponding to a binary CD was an insupportable burden for nearly all users. I'm amenable to it now because that situation has changed. If no one shows substantial problems with this option, it will be part of the official GPL version 3.

Copyright 2006 Richard Stallman
Verbatim copying and distribution of this entire article are permitted without royalty provided this notice and the copyright notice are preserved.

Share    Print    Comments   

Comments

on Source Distribution and the GNU GPL

Note: Comments are owned by the poster. We are not responsible for their content.

GPL is hurting small derivative distros

Posted by: Anonymous Coward on July 16, 2006 12:27 AM
I see a problem in this!

It's ok to have large community distros and manufacturers that include GPL'ed code because they have the resources and the time to do it. But, where this is unfair, in the spirit of openness, is the small dirivative distros!

There are hundreds of small distros that are only maintained by one or two people (just look at DistroWatch, or the distros that are so small/new their not even on DistroWatch). For them it is inconvenient/impracticle for them to have to store the binaries and the sources even if they made no changes to the sources from the parent distro.

It hinders them from:
"(2) to redistribute it, and (3) to distribute modified versions."

This will hurt and maybe even stop people from making small distros; and I believe that goes against everthing the GPL stands for because it is hindering/burdening individuals from comming out with, lets say, a LiveCD or a install CD. Most of the time the small distros are only a customized picking and chooseing of the binaries that are all wanted on one CD. After it is installed any binaies that are needed are got from the parent distro.

I propose that the GPL be changed some how to favor/allow the small distros to continue to be developed with out all the burded that comes with the GPL. It should be that any small derivative distro only has to host the sources to the included binaries if they have made any changes, or they are no longer available on the parent distros servers. Also, a note or link has to be made stating that the sources are found at the parents distro's site or home page of the maintainer.

I myself was thinking about making a LiveCD, but have been discouraged because of the leagal trouble that might insue if I don't release the sources also; even though I would not make any changes.

#

Re:GPL is hurting small derivative distros

Posted by: Anonymous Coward on July 16, 2006 01:04 AM
This will hurt and maybe even stop people from making small distros

Sure it will. It's such an unfair burden to have to upload source files in addition to binaries to a server. And the extra space needed will simply break the backs of the poor little guy just trying to help the rest of us out.

But how are you helping others who might want, or need, to modify your sources if they can't get them? Why do you want to produce a distribution that has no sources? Is it an ego thing, to give something to the world that you retain control over? Your argument is unconvincing. Hosting space is not that expensive. The effort involved to upload sources as well as binaries is not that great.

And the freedoms your proposal removes are too important.

#

Re:GPL is hurting small derivative distros

Posted by: Anonymous Coward on July 16, 2006 01:41 AM
Why shouldn't they have to comply with this? If you are going to distribute software in compliance with the GPL, then you need to fully comply. DamnSmallLinux requires that I pay for him to mail me a CD with the source code on it. Why should I have to deal with that? Do I have to pay for a copy of all the versions? That would get expensive for me. Did DSL's team have to do this to get the knoppix source code that they based their distro on? What goes around comes around. If you enjoy the ease of downloading the source, you shouldn't require me to pay to get it, it should be available for me to download your modified versions as well. Otherewise, work on stuff with the BSD license or other license. The GPL was designed to allow people to see what you have done, and not having it available for me to download is not ocmpliance. Having the source available in compressed format doesn't take that much space, and the bandwidth requirement would be low since it wouldn't be accessed as often. Maybe someone should offer to be a source code repository similar to what sourceforge does.

#

Re:GPL is hurting small derivative distros

Posted by: Anonymous Coward on July 17, 2006 10:03 PM
*** If you enjoy the ease of downloading the source, you shouldn't require me to pay to get it, it should be available for me to download your modified versions as well. ***

Maybe he shouldn't, but the GPL says he can charge for distribution. You don't like it? Go somewhere else. You have that freedom, as does he.

#

Re:GPL is hurting small derivative distros

Posted by: Jeremy Akers on July 18, 2006 10:42 AM
You can charge, but you can not charge whatever you want, as indicated by this section of the GPL:

--snip--
3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:


        a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

        b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange
--snip--

If you distribute the source seperately from the binary, you may only charge "no more than your cost of physically performing source distribution", which is generally very little.

You may charge whatever you want to distribute the original package containing the binaries (And the source if you're so inclined as to include it in the same package). But if you decide to ship the source seperately, you may not charge a large fee for access to the source.

-Jeremy

#

Re:GPL is NOT hurting small derivative distros

Posted by: Anonymous Coward on July 16, 2006 02:53 PM
This is completely ridiculous. First of all, the GPL is why small derivative distros can exist. Secondly, distributing source is not hard nor is it expensive. Just upload up to your FTP server when you are uploading your CD. Since most people don't download them, they won't do much to increase your bandwidth. Small distros are quite able to do this. The distro I use is a very small derivative distro and they have no problem doing this.

Most distros start as derivitive distros. Mandrake (now mandriva) starting as Redhat + KDE. What if they still relied on redhat to distribute their source? It would be that much harder to create derivatives of Mandrivia.

For all that you are getting by using the free software, including the source is not an unfair burden. Also if you are not including the source in your distro, you are limiting it's usefulness.

#

There are subtle issues here

Posted by: Anonymous Coward on July 16, 2006 02:32 AM
There are at least three things here that should be addressed:

1. The project making the source available.
2. The end-user finding the correct corresponding source.
3. The end-user having adequate information and tools to actually compile said source.

I've distributed custom free software CDs in the past in order to introduce others to free software. I always included source on the same CD. It was an amazing hassle in some cases to figure out whether I was actually including the right source (point 2) and whether I was actually enabling anyone to do anything with it (point 3).

For example: Firefox and the OpenOffice.org suite are the best examples of what a nightmare this is. Technically, the firefox binary that you download right now off the front page is not even free software. (Before you start flaming read the actual license! They include software such as Talkback that is not under a free software license!--or at least they did last time I checked. I think they've been criticized for this and were thinking of changing.)

Anyway, NOW Mozilla also offers a source tarball and build instructions. THAT's such a huge improvement over how things stood even a year ago. You had to retrieve the source from CVS and it was not a simple matter to know whether you were getting the latest source with all changes or the actual source for the binary you wanted to distribute. And then building that was a total crapshoot. Maybe you'd have the right environment, maybe not. There were no instructions explaining how the binary you downloaded was compiled. You had to guess via trial and error and probably download all manner of other tools to actually compile anything.

OpenOffice.org suite--same issue but worse, because the project is about 20 times the size of firefox.

So, I know distributors would prefer to roll a binary and just put it on their website, but the downstream distributors and hopeful modifiers of that software are the ones really screwed if this is allowed.

I think the FSF should seriously consider going even further in the obligations of binary distributors by also requring

1) either a tarball/zip of the exact corresponding source of the binary OR explicit instructions on how to retrieve the exact corresponding source from a source repository such as CVS/subversion AND

2) explicit build instructions explaining how to take that exact corresponding source to produce that binary AND a complete and accurate list of all software with version numbers needed/used to compile that binary.

That's more difficult for the distributor, sure, but it makes life WORLDS easier for the person who actually wants to modify the source (and use the result!) and for those who distribute the source to others who one day might actually try to modify it.

Otherwise people are providing source that mostly matches the binary you're using and that you MIGHT be able to figure out how to build if you work at it long enough, etc. That situation doesn't do anything to preserve the freedoms discussed in the article.

#

Guilty Ubuntu Absolved - Why Need the Source?

Posted by: Anonymous Coward on July 16, 2006 05:27 AM
A good example of this issue is Ubuntu. Ubuntu was a guilty party of not even having a LINK to the sources from their download page, not even a declaration that they would make it available at cost for a period fo 3 years.

The good news Ubuntu now has the source code up. (<a href="http://www.ubuntu.com/download" title="ubuntu.com">http://www.ubuntu.com/download</a ubuntu.com>).

Why do people want access to source code? It is people's right to download the code if they want it, period. Crying that it just adds extra bandwidth costs falls on my deaf ears since I don't give a shit about you wanting to skirt your obligations. What I care about my, and others', freedoms.

Also, as a practicle example of why 99% of the time I try to get the code, and you should get it too, is that I want a backup in case they go closed. I've been burned more than once when a project goes closed and the source code disappears so I want the code.

#

Right on!

Posted by: Anonymous Coward on July 19, 2006 06:10 AM
n/t

#

It's more important that people be free....

Posted by: Anonymous Coward on July 16, 2006 06:25 AM
than software.

I don't buy this whole software libre stuff. While it's the authors' right to release software under any license they choose, if they really wanted to promote freedom they'd let people do whatever they wanted with the software, not just limit them to the 4 kinds of freedom that RMS approves of.

Freedom is for people, the GPL is about freeing software. A license is a license. All licenses restrict freedom, one person grants another some "rights" and denies them others. The GPL is no different except generally no cash changes hands.

I find it at least understandable (even if I don't buy their products) that Microsoft restricts my rights to protect their monetary interests. What I find truly repugnant is someone who restricts my rights and tells me its for my own good.

Bah.

#

Hipocrite...

Posted by: Anonymous Coward on July 16, 2006 06:52 AM
Ya...you want the freedom to take other people's freedoms away.

That don't fly with me, bub. You don't like it, dont use the GPL for your works.

Thank you and buh-bye.

#

Re:It's more important that people be free....

Posted by: Anonymous Coward on July 16, 2006 08:37 AM
Freedom is for people, the GPL is about freeing software

It sounds as if you haven't read the GPL, then. It is about the freedom of people to do certain things with the software, not the freedom of the software to do anything, as if it could of its own accord.

What I find truly repugnant is someone who restricts my rights and tells me its for my own good.

You seem to be referring to the GPL with this remark, so I'll assume you feel that the GPL restricts your rights in a repugnant manner. First, if you are using someone else's program, and that program is released under the GPL, you are free to not use it. You are not, however, free to restrict that freedom from others, any more than you are free to shut someone up when you have a difference of opinion. Second, the only thing the GPL restricts you from doing is restricting other's rights concerning the same piece of software. It is not, and never has been, anyone's right to change the terms of someone else's software license. If you feel that is a repugnant restriction of your rights, then you are arrogant beyond belief.

It implies that you feel you have the right to take someone else's program, which they released under license terms of their choosing, and to change those terms against the will of the publisher, presumabley for your benefit alone. It is a parasitic attitude to want to benefit from someone else's work without contributing or allowing others the same benefits. It is extremely selfish to say the least.

#

Re:It's more important that people be free....

Posted by: Anonymous Coward on July 16, 2006 10:27 AM
Second, the only thing the GPL restricts you from doing is restricting other's rights concerning the same piece of software. It is not, and never has been, anyone's right to change the terms of someone else's software license. If you feel that is a repugnant restriction of your rights, then you are arrogant beyond belief.

This is pretty much what the RIAA is saying about music file sharing, except that their license is not the GPL of course. I expect you have no problem with their enforcement of same, then.

#

Re:It's more important that people be free....

Posted by: Anonymous Coward on July 16, 2006 02:38 PM
The difference is that there are laws protecting fair use of material, which, by technical means, they subvert.

However, I have no problem with them releasing their material under any license they choose. And just as with software released under the GPL, I, (or you, or anyone else) am free to say, "No, thanks." I have chosen to opt out of purchasing music (or downloading it, even illegally) and of purchasing software with restrictive license terms.

The music and movie industries think their stuff is so desireable that people will agree to anything in order to have it. Maybe that is true for many people, but not me. But as I said, I have no problem with them, or Microsoft, or anyone else, releasing software or entertainment under any kind of license they choose. If they feel it will make them money and if people are willing to give up their fair-use rights, they can. I won't, but they can.

People have a right to give up their own freedom. They do not have a right to forcibly take it away from someone else. And that is what we are talking about here.

I would guess by your remarks that you expect me to apply one standard to free software and a different, incongruent attitude toward proprietary software and other restrictive licenses. I do not. Before I used free software I was a DOS, OS/2, and Windows user. My friends offered me unlicensed copies of software at no charge to me. I always refused to participate in such transactions.

The result was that I always had fully licensed copies of software, but never had enough, because it was generally too expensive to purchase everything I wanted.

When I discovered I could have a complete system by purchasing a Linux distribution for a fraction of the cost of Windows and its associated applications, I was highly motivated to switch.

So, no, I do not have a problem with them enforcing their license terms. In fact, I encourage them to do so. The more costly it is for people to engage in sharing unlicensed music, movies and software to avoid paying high prices, the more people there will be that will be motivated, like I was, to find reasonably priced, fully licensed, alternatives. And if they are successful in enforcing their licenses, they will have effectively shot themselves in the foot by alienating their market. So I say, "Good shooting."

#

Re:It's more important that people be free....

Posted by: Anonymous Coward on July 17, 2006 03:56 AM
"they will have effectively shot themselves in the foot by alienating their market. So I say, "Good shooting."

Wrong.

The Internet is more than the real world.
I know many examples where authors were successfull without the business model of the RIAA and others, by just being there, by using the www to good advantage.

#

Re:It's more important that people be free....

Posted by: Anonymous Coward on July 17, 2006 04:15 AM
And your point is...?

#

Sorry, but that's not true.

Posted by: Anonymous Coward on July 16, 2006 08:04 PM
First, if you are using someone else's program, and that program is released under the GPL, you are free to not use it.

If you consider your argument to be correct, people in a completely proprietary world are free to not use proprietary software, too. You see, they are free. Then, what do we need the FSF and Richard Stallman for?

Second, if you think economy forces drives people into using proprietary software and thus 'Unfreedom': Be assured this will happen with a GPL software stack, too. Software always has a tendency to create a monopoly. It's due to its cost structure, and to network effects of its usage. Linux in combination with the GNU tools will constitute a monopoly, too, when its competitors are out of business, someday.

Second, the only thing the GPL restricts you from doing is restricting other's rights concerning the same piece of software.


You're wrong -- unfortunately, I must say. It also restricts somebody else who likes to release his own work under a different license, if his software needs GPL'ed software to be installed -- a dependency is no derivation! Yes, there's also the LGPL but that's not what Richard Stallman wants; he just accepts the LGPL because competition drives him to accept it.

You know, it's absolutely OK if there's a tit-for-tat clause in the license to protect the integrity of the product, a copyleft clause somewhere in between the Mozilla license and the LGPL, for example. The GPL, however, does not just do that. By spreading FUD, it makes people use the GPL although it's not absolutely clear whether software using regular library interfaces is legally a derived product.

In combination with the above statement about inherent monopoly power of GPL software, the consequence is that even users are not allowed to accept those proprietary offers. The GPL thus removes certain freedoms of users, namely the freedom of choice.

Now, this would be absolutely OK if the FSF and Richard Stallman would just try to present the idea just like anybody else. Nobody has a problem with another vendor even if he sells his product for a price of zero. However, that's not his claim, you know?

He claims the license creates freedom -- as just explained, it does not. It merely offers a different combination of rights, benefits, and costs.

In fact, if you imaging a world without the FSF, Richard Stallman, or the GPL, no one would be less free! The freedom of speech would still be there to protect all citizens of free nations! In contrast, imaging a Chinese dissident publishing his opinion in a software under the GPL: What do you think? Will the Chinese government feel restricted somehow and stop putting the man in jail for the rest of his life? I don't think so.

Wake up! The recommendations of the FSF are not supporting their claims. Don't get fooled by them.

#

Re:Sorry, but that's not true.

Posted by: Jeremy Akers on July 16, 2006 10:00 PM
"If you consider your argument to be correct, people in a completely proprietary world are free to not use proprietary software, too. You see, they are free."

This is the equivilent, in non-computer terms, of saying that people living in a dictatorship have the freedom not to live there... Huh? In a "completely proprietary world", they are free not to use "proprietary" software. How does that work? They just don't own a computer or any technology whatsoever? Does not sound like the kind of freedom I want to have.

The problem here is that you want to confuse one freedom as a grant of another. The freedom not to own proprietary software (especially in a "completely proprietary world") does not equate to having freedom to do what you wish with software.

The GPL gives you certain freedoms that you can excercise on software you obtain. However, it denies you a right to remove MY freedom as the author of that software.

For example: Greedy little thieves may not take my software, make changes to it, and release it under another license. I'm sorry, but as a developer, I see this as a good thing. If you don't like it, fine, release your code under something else. But don't bitch at ME because I don't want your thieving hands stealing my code and releasing it as your own.

"You're wrong -- unfortunately, I must say. It also restricts somebody else who likes to release his own work under a different license, if his software needs GPL'ed software to be installed -- a dependency is no derivation! Yes, there's also the LGPL but that's not what Richard Stallman wants; he just accepts the LGPL because competition drives him to accept it."

Uhh, the GPL does not state that a dependancy is a derivation.. Go read the license. It's only a derivation if your code links my code, which in programming terms, is no different than you making changes to one of my source files and recompiling. If your code has to link my code, and make direct function calls to my code, then your code is a derivation of my code. The GPL prevents you from now taking my code and linking it into propriatary code, making the overall result propriatary. This is a GOOD THING. And if you don't like it, don't release your code under the GPL.

"By spreading FUD, it makes people use the GPL although it's not absolutely clear whether software using regular library interfaces is legally a derived product."

There's a certain theme I want you to see here, and that is that this is all about the author of the code. If someone writes a peice of code, including a library, they have the right to choose a license that says that no-one can link to their code with non-GPL code. Don't like it? Don't use their code, write your own library. Why do you think you have the right to use someone else's work under a license of YOUR chooisng? It's NOT YOUR WORK.

"He claims the license creates freedom -- as just explained, it does not. It merely offers a different combination of rights, benefits, and costs."

This is like saying the constitution of a free nation does not create freedom because it restricts certain rights. Should you have the freedom to kill your neighbor? Should you have the freedom to yell 'Fire!' in a crowded movie theatre? If we are to assume your arguments are true, no-one is truely free. But if we were 'truely free' under your definition, we would all have the freedom to restrict others freedom. In that case, are we any more free? No, we would be less free.

Bottom line here, is that as authors, we have the right to choose any license we want. We choose the GPL because it grants our users the freedom to use our software, to redistribute it, to modify it and to pass those modifications on.

We also choose the GPL because it does NOT allow that user to take our code, change it or link new code into it, and then redistribute it as a different license. Since it is MY code and MY choice, I like this feature. Since you are the one who wants to be able to take code and make derivitives without obeying the original license, I really don't care that you don't like it.

Coming to an open source site, and bitching about our choice of license because it does not suit YOU, is rather arrogant, and I don't think you're going to find alot of symphathetic ears.

-Jeremy

#

Re: Sorry, but that's not true.

Posted by: Anonymous Coward on July 17, 2006 04:55 AM
If someone writes a peice of code, including a library, they have the right to choose a license that says that no-one can link to their code with non-GPL code.


Of course, they have the right to choose the license of choice. However, claiming moral superiority while acting self-interested is misleading and false.

You don't like the consequences of a truly moral decision? Don't make it. Be honest. If GNU is just a system for the personal benefit of your group of people, say so. Don't confuse everybody else by claiming to protect or create essential freedoms.

There's an easy check: Imaging a world without freedom of speech, and you'll know it's an essential value. Imaging a world without free software, and you'll miss nothing important at all; nothing that cannot be gained by using mere open source software.

This is also what makes your analogy about conflicting freedoms misleading: Your so-called 'free' software is not essential, and it's thus always inferior to any essential freedom. For example, if a clause in the GPL would require me to never write anything bad about the GPL "to protect the freedom of people", it would probably still be OK from a contract point of view. However, everybody would clearly see that you can't claim moral superiority for your choice of a license because it would clearly restrict the freedom of speech.

To be even more precise: Don't expect respect for making wrong and misleading statements! Right now choosing the GPL is just as moral as choosing a proprietary lisence.

#

Re: Sorry, but that's not true.

Posted by: Jeremy Akers on July 17, 2006 11:40 AM
"claiming moral superiority while acting self-interested is misleading and false."

Huh? Since when did being moral and being self-interested become mutually exclusive? And secondly, when did I say the GPL was 'morally superior'? Not only does your statement not make sense, it implies I said something I did not.

"You don't like the consequences of a truly moral decision? Don't make it."

Wait, what are you saying? What is the 'moral', what is the 'decision', and why wouldn't I like it? You seem to like to argue by making statements that don't actually have a statement.

Are you trying to imply that using the GPL is a moral descision? That I'm not going to like the consequences of making that decision, and that I shouldn't make it? I feel like a dog chasing my tail here.

"There's an easy check: Imaging a world without freedom of speech, and you'll know it's an essential value. Imaging a world without free software, and you'll miss nothing important at all; nothing that cannot be gained by using mere open source software."

Go back in time 300 years to find your world without free speech. Or just move to a non free country where there still isn't free speech. Look at how China restricts speech today. Since so many still do not have this freedom, does that make it non essential? They are all getting by, aren't they?

Also, most open source software is also free software. Compare the list of approved 'open source' licenses with the FSF's list of approved 'free software' licenses. A world without free software would be a world without open source software.

"This is also what makes your analogy about conflicting freedoms misleading: Your so-called 'free' software is not essential, and it's thus always inferior to any essential freedom. For example, if a clause in the GPL would require me to never write anything bad about the GPL "to protect the freedom of people", it would probably still be OK from a contract point of view. However, everybody would clearly see that you can't claim moral superiority for your choice of a license because it would clearly restrict the freedom of speech."

What makes a freedom essential is debatable. There are billions of people in the world today that do not have the freedom of speech. Do they consider it essential? You do, and I do, but if you've never had that freedom, do you consider it essential?

Let me paraphrase your argument: If the GPL restricted your freedom of speech, it would be ok legally, from a contractual perspective, but it would be immoral because it limits your free speech.

Ok, I'll admit that. But wait, the GPL doesn't do that. So your argument is null and void.

As a side note, I like the GPL for practical reasons. I do not hold the moral reasons up on a pedestal like a religion. However from a practical standpoint, as both a developer and a user, I find the GPL does an excellent job protecting the interests of both, without granting either one rights to stampede the other.

Furthermore, if you want to claim that the GPL is not morally superior, back that up with facts. What essential freedom does the GPL take away from you? As I like to say, put up or shut up.

"To be even more precise: Don't expect respect for making wrong and misleading statements!"

Show me the wrong and misleading statements.

"Right now choosing the GPL is just as moral as choosing a proprietary lisence."

Your point? It's not wrong to choose a non-free licnese, but I think someone who uses a free license is a more morally inclined person than someone who doesn't. It's the difference between the wealthy man who gives money to charity, and the wealthy man who keeps it all to himself. Neither is wrong, but I think everyone would agree that giving something to someone and letting them do with it what they want is alot more generous than keeping it to yourself. And what the wealthy man who gives to charity understands, is that when you help others, the benefits of that help often come back to you in ways that were bigger than the initial investment. Just look at the effect Linus Torvalds had on the world by releasing Linux under the GPL.

-Jeremy

#

Small note

Posted by: Anonymous Coward on July 17, 2006 05:23 AM
If your code has to link my code, and make direct function calls to my code, then your code is a derivation of my code.


As long as I don't change your code, and the whole product is intact, it's not a derivation in my opinion. Yes, I know you disagree. However, others don't, see <a href="http://www.sitepoint.com/article/public-license-explained" title="sitepoint.com">Rosen's explanation</a sitepoint.com>: He's says the expression in the GPL: "contains or is derived from" has a very specific meaning under copyright law that effectively reduce the reach of the GPL to a licensee's own code.

However, nobody likes to test this in court so that's the FUD I was talking about. The GPL could make stand and be explicit what it wants 'derived' to mean. We'll see whether it'll do so in its next version.

#

Re:Small note

Posted by: Anonymous Coward on July 17, 2006 07:44 AM
I'd agree, making calls to another's code does not mean that it's derived calls.

For example, I have written a tool that allows the testing of Oracle packages by calling the functions/procedures from values provided on a web page. Does that mean that I have extended Oracle in any way?

Similarly with websites, when you make your call back to the server for a new web page you are directly calling a server procedure (regardless of the protocol which is similar to a call stack) but no one would argue that browsers are extending servers.

#

Re:Sorry, but that's not true.

Posted by: Anonymous Coward on July 17, 2006 08:47 PM

If you consider your argument to be correct, people in a completely proprietary world are free to not use proprietary software, too. You see, they are free. Then, what do we need the FSF and Richard Stallman for?


Absolutely. Black-and-white logic with respect to freedom is false logic. Even if group A has freedom, group B may still have more freedom or different types of freedom.


It also restricts somebody else who likes to release his own work under a different license, if his software needs GPL'ed software to be installed -- a dependency is no derivation!


Garbage. Dependencies are only a problem if you bundle them up into your work. For example, if I want to distribute software that requires certain additional libraries, I don't have to bundle those libraries. I only have to include the source for them if I include the binaries as part of my product.

The same applies more generally. You can even sell a closed-source Linux modification if you want to. You just have to keep your work completely and cleanly separated from everyone elses. Packaging your work in the form of an patch that can modify a separately obtained copy of linux would do the job, so long as that patch really didn't include anyone elses work. Similar tricks are done routinely with community 'mods' to commercial closed-source games.

You can license your work any way you want to. You just can't change the license on other peoples work.

#

Garbage

Posted by: Anonymous Coward on July 17, 2006 08:10 PM
Protecting peoples freedom always means that there are limits to those freedoms.

Even the law protects our freedom by limiting our freedom. We do not have the freedom to assault people, to murder people, or to steal. We don't have those freedoms because of the need to protect peoples freedom to live their lives. You can disagree with the way a particular legal system balances the issues, but to opt out of law altogether is to choose anarchy.

In principle, the GPL is an attempt to do the same thing. It protects freedom by limiting freedom.

Personally, if I distribute some software, I don't want anyone to have the freedom to distribute broken closed source variants, get users dependent on them, and then charge for a never ending stream of 'fixes'. The freedom to rip people off is not a freedom that I want to protect.

You can disagree with me. You can point out that it is the end users responsibility to take care not to be ripped off, and I have some sympathy with that. But if you want the freedom to rip people off, there are plenty of options for doing so - just start a closed source software company. Just do it without using my software.

Personally, I want to protect the end users freedom to be able to repair or modify my product if needed - even if they get a modified version of my product from somewhere else. One practical consequence is that even the well-intentioned users of my software will lose some freedoms and gain some responsibilities. Well, sorry, but that's just a basic fact of life. Total freedom is a fantasy, as is freedom without responsibility.

#

Sharing knowledge and software

Posted by: EnviroTO on July 18, 2006 08:47 AM
The GPL is basically a way to share ideas, knowledge, and software with everyone. Patents were created to spawn innovation by rewarding those who innovate with exclusivity. GPL is a different approach to spawn innovation by doing the exact opposite... ensuring growth in public knowledge, allowing minds to come together to think through problems, and sharing amongst everyone the innovation that results. The GPL gives freedom to people such as the freedom to protect the work they have donated to the community from being taken private by someone else, the freedom to know the software they are using and how it works, and the freedom to know the improvements others make to software which belongs to the community.

If a piece of software you are writing is being developed for sharing and the benefit of the community then use the GPL. If the software you are writing is being developed to pay your rent then don't use the GPL.

#

GPL is about keeping software free

Posted by: Anonymous Coward on July 19, 2006 06:21 AM
"Freedom is for people, the GPL is about freeing software." You're just playing with words. The GPL keeps the software free for everyone to use and share -- freely. If you don't like that for some reason, you're free not to use GPL'ed products. Letting people do whatever they want with the software -- that's not freedom, that's anarchy.

#

Zero...

Posted by: Anonymous Coward on July 16, 2006 08:10 AM
... is NOT a number...

#

Re:Zero...

Posted by: Anonymous Coward on July 16, 2006 08:57 AM
??? Did you ever take a Math class?

#

Uh?

Posted by: Daniel Carrera on July 16, 2006 07:45 PM
I assure you that zero is a number. And if you were in any of my math classes I'd probably fail you.

Btw: http://en.wikipedia.org/wiki/0_(number)

#

Re:Uh?

Posted by: Anonymous Coward on July 17, 2006 07:35 AM
From the wikipedia article:

"Before counting starts, the result can be assumed to be zero;"

So how is zero representing a number? Zero is a mathematical abstraction to represent the absence of a number. Zero is named a "number" to ensure that the whole numerical system doesn't break down.

The OP should have more accurately said that you can't have a zero'th freedom since you can't, by definition, have a zero'th anything.

#

Re:Uh?

Posted by: Jeremy Akers on July 18, 2006 03:50 AM
No-one said it was the 0th freedom. RMS was using the numbers to indicate the index. It was given an index of 0, which anyone with even basic programing or even technology knowledge knows that it refers to how many places from the beginning of a list the item occurs. An index of 0 indicates it's the first item in the list.

And furthermore, zero does not indicate a lack of a number, anymore than the digit 9 indicates 9 numbers. A number is used to count how many of some object exist. 0 means none exist, 9 means 9 exist. Every numbering system on planet earth includes 0 as a number.

If you want to pull out a dictionary, look up 'zero'. A couple of my favorite definitions include:

"A cardinal number indicating the absence of any or all units under consideration."

"An ordinal number indicating an initial point or origin."

-Jeremy

#

Re:Zero...

Posted by: Anonymous Coward on July 16, 2006 09:37 PM
For once, I may agree with a strange posting...

Supporting proof by example: Zero is in fact, a beautiful Norwegian Forest cat who adopted my wife and me several years ago, and who stretches out to cover much of my free desk space when I am working at home. Right now, in fact...

So there is at least one Zero that is not a number.

Nevermind I don't agree.

Zero is not only a number, it's a great place to start counting things. Kernighan and Ritchie set the standard for numbering, beginning K&R with Chapter zero to exemplify the fact that C language arrays begin counting with element [0]. That concept unified pointer arithmetic and array element access. FORTRAM counted arrays beginning with element [1], which caused all sorts of confusion in address computation.

It seems to me that Stallman's "riff" on K&R is a nice bit of geek humor...

#

Re:Zero...

Posted by: Anonymous Coward on July 17, 2006 07:27 AM
No it's not, zero is the absence of a number. Therefore to have a zero'th freedom is an oxymoron.

#

Re:Zero...

Posted by: Anonymous Coward on July 17, 2006 08:44 AM
It's a conceit to start counting at zero. It says "I'm in the know, wink, wink, and if you don't know, then you are somehow technologically inferior to me."

Great that it "unified pointer arithmetic and array element access". But the exposure of this in a computer language was a huge mistake leading, if not to numerous subtle errors, at the very least to needless mental offset checking.

The purpose of a language is to make expression natural and intuitive, not to require adaptation to underlying structures. Imagine if your job was to count sheep that enter the pen (supposedly how counting originated). 0, 1, 2, 3,<nobr> <wbr></nobr>,,,, 10. Then you are asked how many sheep are in the pen. Mental gymnastics and doubt start here. Unless 10 now means 11.

To sum up, to start counting real objects starting at 0 is the worst possible way of counting "things". What we have seen in the past 30 years is the orthodoxy of counting from 0. Like all orthodoxies, it must at last fall to common sense.

#

Re:Zero...

Posted by: Anonymous Coward on July 17, 2006 09:02 AM
I'd agree, although I wish

Like all orthodoxies, it must at last fall to common sense.

was always true, alas in todays world of political spin it rarely is.

I think that ulitmately the counting at zero for a license will be a real problem for the GPL. Let's say that the suits in a v. large company are considering using OO (with suitable corporate support) as compared to M$/Office. Someone asks about the license for it and the CIO has to present it to a bunch of directors, how the hell is he gonna explain the 0th freedom? Is he gonna say that it's kind of a "programming in-joke"? The license is a good one (don't think many people would dispute that) but what the hell is the 0th freedom? Does it mean I have one or not? Are the suits gonna see the funny/ironic side?

#

Holy crap

Posted by: Jeremy Akers on July 18, 2006 03:58 AM
Why is this concept so hard?

When 0 is used in programing, it is used as an INDEX. item[0] is NOT the zero'th item. Anyone that ever, ever, uses the word 'zeroth' is an idiot.

item[0] is the first item. The 0 indicates that no items precede it in the list. It makes pointer arithmetic and other programing tasks much simpler to use this number as an index instead of as a counter.

Also, if you note, nowhere in RMS article did he say it was the 'zeroth' freedom, nor is it claimed anywhere else for that matter. It's the FIRST freedom. Preceding something with a (0) does not make it the zeroth.

-Jeremy

#

formal numbers

Posted by: Anonymous Coward on July 17, 2006 12:22 PM
All the formal definitions of numbers that I am aware of include zero as a number. For example:

The Von Neumann natural numbers:

0 is the empty set. {}

1 is the set containing 0. {{}}

2 is the set containing 0 and 1. {{}, {{}}}

3 is the set containing 0 1 and 2. {{}, {{}}, {{}, {{}}}}

N is the set containing all the natural numbers less than N.

The Church natural numbers:

0 is (L (f x) x)

1 is (L (f x) (f x))

2 is (L (f x) (f (f x)))

N is a function which applies f to x, N times.

Zero is a number in formal mathematics.

#

How about a third option?

Posted by: Brian Masinick on July 17, 2006 03:42 AM
Richard, I think that software freedom ought to be observed. If someone just wants to use free software, they ought to be able to do so. But if they want to start sending it to other people, they ought to send that FREE SOFTWARE to other people, and that includes the code that it came from.

You've offered two options, either of which could work. But how about a third option? If the person or project that wants to distribute binary code does not feel that they can distribute it themselves, but they do feel that they can somehow distribute binaries, if they are doing it for absolutely no cost, that is one thing. But if they profit, even enough to pay their Internet bill, then they should help others pay for the cost of storage, for Internet resources, and for the source code.

Why don't you offer a third option? If they won't incur the costs of storing and distributing the sources themselves, why not have the FSF offer to store and distribute the code, and charge the distributors for this service? That's completely fair.

So now, there are three ways:

1. Distribute with your code in whatever method you distribute your binaries: CD, DVD, or Internet, and offer them the same way you distribute your system or service.

2. Offer a mail order service to make the sources available at a reasonable cost, covering the expenses for providing this service and a reasonable and fair profit.

3. Offer to provide the code from the FSF, but then require the distributor to bear the full expense of building up your network backbone and your storage network. You might be able to gain some synergy in sharing these resources, and you have every right to make a profit in offering this service.

#

If you can't provide the full source...

Posted by: Anonymous Coward on July 17, 2006 07:05 PM
For people who, for whatever reason, don't want to provide the full source, the solution is simple. Don't provide the full binary either.

Provide some kind of patch - a binary patch if necessary, but with full source available. Anyone who uses that patch must have been able to access the parent product - source and binary - so long as that parent product itself complies with the GPL.

Since anyone who uses your patch must have been able to get the parent product that it is dependent on, your users cannot become dependent on binaries for which they can't get the source.

Remember - the parent product won't keep the source available forever, so providing a link is no good. If your product goes unmaintained for a while (as so many do) then people may end up downloading your binaries and getting dependent on them when the parent product source is no longer available. That is a bad thing.

Distribute a patch and your product automatically dies a clean death along with the parent. No-one can get dependent on anything that they can't access the source for, that they can't repair or modify if needed. That's a good thing because becoming dependent on a zombie product is a bad thing.

The added bonus - a binary patch has got to be smaller than a full binary, so people worrying about bandwidth for source downloads can stop worrying.

The only downsides are...

(1) That you can't call your product a full distro, because it's just a patch. And if that's essentially all you've developed, well, I don't really see the problem with being honest about it.

(2) The dependency on the parent product requires some effort to keep your product alive - to make sure that current versions of your product only depend on versions of the parent product that are still available. But unmaintained products are a problem anyway, this issue is nothing new.

(3) It may be a bit more difficult for the user since they need to apply the patch to the parent product before using it. But that is really down to how you set up the patch. If you set it up to be fully automated, it's not much of a problem.

So that's basically it. If you want to distribute a product that is basically a patch rather than a full distro, do exactly that - distribute it as a patch.

#

Makes sense to me

Posted by: EnviroTO on July 18, 2006 08:12 AM
With more than half the distros out there being minor derivates of a major distro I agree that those who find it too much of a burden to distribute source code should be simply stick to distributing their enhancements and related source code instead. Instruct people to install the major distribution your minor distribution is based on and have them use your CD or URL to provide updated packages.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya