According to the FSF, it is about freedom for users.
"Free software is a matter of the users' freedom to run, copy, distribute, study, change and improve the software. More precisely, it means that the program's users have the four essential freedoms:
* The freedom to run the program, for any purpose (freedom 0).
* The freedom to study how the program works, and change it to make it do what you wish (freedom 1). Access to the source code is a precondition for this.
* The freedom to redistribute copies so you can help your neighbor (freedom 2).
* The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this."
Freedom 2 is not absolute, since I can't help my neighbor by making an improved version of the software that compiles against closed source libraries and distributing it to them.
Same with freedom 3 - if I make changes in that manner, I may not distribute them.
As a user, I am less free with the GPL than other licenses.
Not that this is a bad thing, but if the goal of the FSF is freedom of the user, they've got a ways to go.
What do you mean "run the program in public?" I don't think you mean putting a projector up and showing it off to an audience. (Which would be OK.)
I'm guessing you mean a web-app where your "audience" is running the software provided as a service. In that situation, the AGPL requires that you provide them the source code so they aren't beholden to you.
Otherwise, a web service is even more closed source than a binary executable.
You can't run the program on your own computer if other people can connect to it over the network without assenting to the license. It's a goddamn clickwrap EULA, something Stallman used to stand strongly against until he felt the need to rail against "the cloud" as that came into fashion.
The "audience" absolutely does not run the software, you do, on your computer — you just allow them to interact with it.
Also you're absolutely mistaken in thinking that the AGPL makes your users any less beholden to you when you still control their data — the program by itself is absolutely worthless, even with the means to develop and deploy it.
I think I see where we're misunderstanding each other. The freedoms the GPL ensures aren't for the developer of the software; but, for the users of that software.
The point is that, from the perspective of your users-- your "audience"-- they're running software somewhere out in the Internet. Where the GPL ensured (amongst other things) that they'd have access to the source of their local programs, the AGPL ensures they have access to the source of their remote programs.
From your perspective, this decreases your freedom as a developer because you're required to distribute your source code to your "audience." But, you have a simple recourse: don't use the AGPL!
wrt. the clickwrap EULA, I think the GPL and its variants have always been a set of terms and conditions. I don't know Stallman's arguments or what you're railing against; but, I will guess that his problem with clickwrap EULAs were that they limited how a user could personally use the software... or, worse, made other at-best tangentially related demands of them. The GPL and its variants do not limit your personal use, but rather constrain your ability to re-distribute the software.
wrt. the AGPL making users any less beholden due to the data silo effect, my position is that a program isn't intrinsically useless without a user's data... or even the developer's own custom data.
Consider a site like Facebook, where the primary value is in its network effects: anyone could open a competitor site that had feature parity. If the original site (Facebook) changed its policies in a way the userbase disliked, they could move to a competitor knowing the functionality would be the same.
Or, consider the GPL release of id software's old games. None of the assets are free. However, that didn't stop a huge ecosystem from springing up. Derivatives, alternate games, and the many thousands of people gaining an understanding of how to make a Real Game.
You're still mistaken — the freedoms the GPL ensures are for the software itself, not the developers or the users. In the case of VLC the developers have lost the freedom to publish it and end-users can't get it anymore, but those lines of code are sure free from the shackles of the App Store!
Facebook users do not see themselves as running software beyond their browser — it's just a website they use to communicate. It would be just as ridiculous to want the source to a SMTP/IMAP or XMPP server just because you have an account on it. The user-facing software is just CRUD plumbing — the account is what has value, and future control over that identity on that ___domain is usually more valuable than even the past data.
The GPL's conditions cleverly fit within the enforcement mechanisms of copyright law, it's a license to redistribute not a contract for use. The AGPL is totally different, it attempts to restrict your ability to run the software on a network-connected computer, much like the standard EULA text forbids you from using it in a nuclear facility. Unlike the GPL, you have to agree to its terms to execute it. One of these things is not like the other.
The id software games are a poor example, those ecosystems of mods were established when the games were commercially released, with tens of thousands of users making their own assets for the game engine they purchased. The GPL releases all came years into their decline, and several of the games had FOSS implementations of their engines before the original source was released.
Maybe we simply disagree. I don't think software, personified, has the capability to appreciate freedom. And, I think both the FSF and Stallman think the same[1][2].
Apple lost (or, more accurately, never had) the freedom to distribute VLC under the terms and conditions of the App Store. And the end users cannot get VLC from the App Store; though, it's readily available from other sources.
Whether or not Facebook users see themselves as running software isn't relevant to the argument. A person who licenses their software under the AGPL does view it that way. Therefore, if you choose to host that software, you're required to redistribute the source code. The AGPL doesn't restrict your ability to use the software on a network-connected computer. It does, however, require you to distribute the source code to any other users who use the software. If you don't want to distribute the code, then don't let other people use the software over the network!
I don't think it would be ridiculous to want the source to a server-- whether or not I had an account on it. But, I'm a curious guy.
I also agree that there is a lot of value in the account and identity. But, that's a different issue than the software and its license.
The id software games all had previously existing ecosystems. However, I was specifically referring to the ecosystems around the engines. Those improvements, derivatives, and the insight into a professional game engine were only possible after those releases. And I think that Quake's position as the often first-ported game to new game systems is a good testament.
Quite frankly, your argument confuses me because you claim the software itself is of limited value while simultaneously taking umbrage at being required to redistribute it.
[2] "Authors often claim a special connection with programs they have written, and go on to assert that, as a result, their desires and interests concerning the program simply outweigh those of anyone else—or even those of the whole rest of the world. ... To those who propose this as an ethical axiom—the author is more important than you—I can only say that I, a notable software author myself, call it bunk." http://www.gnu.org/philosophy/why-free.html
Windows has the OS exception in place, as would iOS. RMS has expressed the opinion that GPLed PhotoShop plug-ins aren't legal, nor is it legal to use a closed-source plug-in in the Gimp. The whole question of GPLed code in a non-free JVM has never been answered, as the JVM isn't quite an OS to qualify for the OS exception.
Thus, freedoms 2 & 3 are somewhat…flexible in practice.
There is no official "OS exception." But, the GPL does discriminate against "System Libraries"
Can you link to where RMS expressed that opinion? It goes directly against GNU's FAQ on the GPL[1].
It is a copyright violation to distribute closed source plugins for the GIMP. But, that is the reverse of the photoshop situation. The GIMP is GPL and so anything linking with it must also guarantee the same redistribution rights.
But, neither of these examples conflicts against your earlier examples. The GPL places no restrictions on your-- or your neighbor's-- personal use. And, you may distribute a GPL extension to a closed source product.
Of course, GNU would rather you'd implement a free software equivalent. :rolls eyes: