New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch license to GNU AGPL? #49

Closed
mattl opened this Issue Sep 21, 2016 · 12 comments

Comments

Projects
None yet
4 participants
@mattl

mattl commented Sep 21, 2016

It would be good to promote this on gnu.io, but with the current license it would be inappropriate. The GNU AGPL v3 or later versions would be a good license choice for this project.

@Gargron

This comment has been minimized.

Member

Gargron commented Sep 21, 2016

Could you please list the differences between the current GPL-2.0 license and AGPL v3 or later?

@Gargron Gargron added the question label Sep 21, 2016

@mattl

This comment has been minimized.

mattl commented Sep 21, 2016

Effectively, the AGPL is the GPL for networked applications. If someone takes mastodon and modifies it right now, their changes live on their server and nobody ever sees them. GNU social, and other AGPL projects make usage over the network a form of distribution, so changes are available to everyone.

It's one of the core principles of gnu.io and GNU FM and GNU social.

@Gargron

This comment has been minimized.

Member

Gargron commented Sep 21, 2016

How would you enforce something like that? And what kind of changes? Even if somebody just re-styles the frontpage? I know that a lot of developers lose interest when they hear AGPL, so I don't want to accidentally kill this project with a license switch.

@mattl

This comment has been minimized.

mattl commented Sep 21, 2016

Restyling their homepage may not be a change, depending on how the code is structured. You could always license the templates and visual elements under GPLv3 for compatibility.

My worry about non-AGPL version of this is that it'll create proprietary silos.

@Gargron Gargron closed this in d709151 Sep 21, 2016

@Gargron

This comment has been minimized.

Member

Gargron commented Sep 21, 2016

After thorough consideration I have decided that you're right. We're AGPL now.

@rmoriz

This comment has been minimized.

rmoriz commented Apr 7, 2017

Nearly all tools used by Mastodon are MIT/BSD licensed. It's sad that you've decided to apply a restrictive license. As pointed out by http://tomash.wrug.eu/blog/2010/09/16/diasappointment/ this was probably a reason Diaspora failed, too.

@marcan

This comment has been minimized.

marcan commented Apr 15, 2017

For what it's worth, this makes Mastodon not Free Software - it isn't legally any different from, say, Windows. The AGPLv3 is not a Free Software license, as it violates Freedom 0 (The freedom to run the program as you wish, for any purpose). It does not only control redistribution (as real free software licenses do), but also usage (which is what EULAs do), so it is an EULA.

@mattl

This comment has been minimized.

mattl commented Apr 15, 2017

Please troll somewhere else. Nobody is stopping you from running Mastodon or GNU social how you wish. If you wish to make a ton of proprietary changes, you can. You just can't let anyone else use your instance outside of your organization.

@marcan

This comment has been minimized.

marcan commented Apr 15, 2017

@mattl That's not actually what the AGPLv3 says. The license requires anyone running an instance, regardless of whether it is invite-only or not, or used by multiple people or not, to offer the source code to its users, and the provision is broad enough that federation is included. There is no exemption for closed organizations. So anyone running an instance at all that has more than themselves as a single user or federates at all would need to make their source code public to their users (which in the federation case includes anyone they federate with). Basically anyone that can hit an HTTP endpoint on your instance needs to be offered the source code.

If you give it a careful reading, it's actually an incredibly intrusive clause, and goes much, much further than any standard free software license. It is a massive overreach on the principles of free software. It fundamentally goes beyond what every standard Free Software license is: it goes beyond controlling distribution. I'm not trolling when I say it falls squarely in the definition of EULA; it really does. I can't think of a way you could possibly argue it doesn't violate Freedom 0. The whole purpose of the AGPLv3 clause 13 is to control usage.

Now you may well think that this is an acceptable compromise, and consider it the right choice, and that's fine. I'm just pointing out that there is a massive qualitative difference between the GPL and the AGPL, that the difference is profound, and so are the implications (in many respects: freedom and openness, but also developer image, marketability, etc.). Food for thought.

@mattl

This comment has been minimized.

mattl commented Apr 15, 2017

"Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software."

If you run a copy of Mastodon or GNU social on your internal company network, you only need to make your changes available internally. The point isn't to prevent internal modified copies, but to prevent public modified copies.

@mattl

This comment has been minimized.

mattl commented Apr 15, 2017

GNU social is an FSF project. I'll ask an FSF licensing staff member to comment here and clarify.

@marcan

This comment has been minimized.

marcan commented Apr 16, 2017

If you run a copy of Mastodon or GNU social on your internal company network, you only need to make your changes available internally.

As long as you don't federate, because if you do, you're running a public service. And then again if you don't, anyone in your company could take the source code and publish it publicly (unless you start imposing additional limitations by contract a la grsecurity, which goes even further against the spirit of Free Software).

akihikodaki pushed a commit to kagucho/mastodon that referenced this issue May 3, 2017

tomoasleep added a commit to tomoasleep/mastodon that referenced this issue May 31, 2017

Merge pull request tootsuite#49 from tomoasleep/fix/build-settings-fo…
…r-v1.4.1

Make build settings compatible for v1.4.1

alpaca-tc pushed a commit to pixiv/mastodon that referenced this issue Jun 15, 2017

hcmiya pushed a commit to hcmiya/v6don that referenced this issue Jul 29, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment