Skip to content
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

Adds a GPLv3 exception for Errbot plugins. #762

Merged
merged 2 commits into from
Jun 7, 2016
Merged

Adds a GPLv3 exception for Errbot plugins. #762

merged 2 commits into from
Jun 7, 2016

Conversation

gbin
Copy link
Member

@gbin gbin commented May 21, 2016

This was the original intent, the goal here is to avoid forcing the entire ecosystem under GPLv3 or making them run with a "main" or a separate process. The GPLv3 is not totally clear about it, so I would prefer to totally clarify that.

This was the original intent.
@gbin
Copy link
Member Author

gbin commented May 21, 2016

Edit: (see below) I extend this to every code contributor of Errbot .

@sijis
Copy link
Contributor

sijis commented May 21, 2016

+1

@jamesob
Copy link
Contributor

jamesob commented May 22, 2016

+1!

@gbin gbin assigned gbin and zoni and unassigned gbin May 23, 2016
@zoni
Copy link
Member

zoni commented May 23, 2016

I will come back with a detailed response on this somewhere over the next couple of days. In short, while I fully support the goal of this 100%, I think there's some additional things that we should discuss and take into account.

@gbin
Copy link
Member Author

gbin commented May 23, 2016

@zoni, sure, that's why I opened the discussion !

@gbin
Copy link
Member Author

gbin commented Jun 4, 2016

Any update on this ?

@zoni
Copy link
Member

zoni commented Jun 5, 2016

Yes, apologies for the delay.

So there's some conflicting reports on whether the GPL extends to plugins which are loaded by the software (errbot) itself, but the official stance by the Free Software Foundation (FSF) is that it does. This means that currently, all plugins in the ecosystem should be GPL-licensed. 😞

We can certainly add the proposed license exception to clarify our position that this was never the intent. We will have to be very careful with the phrasing however as errbot itself consists largely of plugins and we would not want this exception to apply to that code.

The other option that I think is worth considering is switching the license over entirely. GPL is a complicated beast which takes away many rights in order to ensure the software remains open and free. The alternative is re-licensing under MIT, BSD (either 2- or 3-clause) or Apache 2.0.

Very broadly speaking, these are highly permissive licenses which would allow anyone to do basically anything with errbot, provided some copyright notices and disclaimers remain intact. Due to their highly permissive nature, it would free users of errbot from many license-related issues. It may result in somebody taking all of our code and distributing it in modified form (even commercially) without contributing back to us, but it may also result in novel applications where errbot is in some way embedded into another product which is not otherwise possible with GPL licensing.

It is perhaps worth pointing out that for example Django is BSD licensed and Ruby on Rails is MIT.

Finally, and this applies especially with re-licensing, legally speaking we would need approval from every single person who has contributed code to errbot before we could make changes to the license because we have never asked contributors to sign over the copyright of their contributions to us.

Large projects tend to have Contributor License Agreements (CLAs) for this which is something to keep in mind as well as errbot grows further in popularity, but more of a hassle than it is worth at this point I think.

@gbin
Copy link
Member Author

gbin commented Jun 5, 2016

As per discussion on the chat, I gonna extend the notification to all the contributors of Errbot.
Please +1 this clarification of the Errbot license for our plugin designers !

@gbin gbin assigned gbin and unassigned zoni Jun 5, 2016
@gbin gbin added this to the 4.2 milestone Jun 5, 2016
@jasedit
Copy link
Contributor

jasedit commented Jun 5, 2016

+1

4 similar comments
@azlekov
Copy link
Contributor

azlekov commented Jun 5, 2016

+1

@mk-fg
Copy link
Contributor

mk-fg commented Jun 5, 2016

+1

@mrshu
Copy link
Member

mrshu commented Jun 5, 2016

+1

@apophys
Copy link

apophys commented Jun 6, 2016

+1

@andrevdm
Copy link
Contributor

andrevdm commented Jun 6, 2016

+1

On 6 June 2016 at 12:07, Milan Kubík [email protected] wrote:

+1


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#762 (comment), or mute
the thread
https://github.com/notifications/unsubscribe/AAEhqkfKYkqJV6Hsi3QrvCBnNBjgk9cEks5qI_F4gaJpZM4Ij1ec
.

@joshuatobin
Copy link
Contributor

+1

1 similar comment
@TomNeyland
Copy link
Contributor

👍

As a special exception, the copyright holders of Errbot hereby grant permission
for plug-ins and script add-ons to be used with Errbot, provided that you also
meet the terms and conditions of the licenses of those plug-ins and script
add-ons.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To avoid any ambiguity, I think we should change the wording to:

As a special exception, the copyright holders of Errbot hereby grant permission
for plug-ins and script add-ons not bundled and distributed as part of errbot itself,
potentially licensed under a license other than the GPL, to be used with Errbot,
provided that you also meet the terms and conditions of the licenses of those
plug-ins and script add-ons.

This emphasizes that it applies to third-party plugins rather than core plugins shipped as part of errbot itself and further emphasizes that it's OK to license said plugins under a license other than the GPL.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, I reworded also a little bit to be sure we include all sorts of external contributions (install scripts, backends etc...)

@ifigotin
Copy link
Contributor

ifigotin commented Jun 6, 2016

+1

@Kromey
Copy link
Contributor

Kromey commented Jun 6, 2016

+1
Always felt the "viral" nature of the GPL was overly restrictive for a "free" license; don't mind the rest of it, but if someone wants to write a plug-in with a different license I'm all for making it crystal clear that we support that!

@boidolr
Copy link

boidolr commented Jun 6, 2016

+1

@gbin
Copy link
Member Author

gbin commented Jun 7, 2016

As we have now less than 10 lines of code impacted, I gonna merge this one, Thanks y'all for your support !

@gbin gbin merged commit 924d6b7 into master Jun 7, 2016
@gbin gbin removed the in progress label Jun 7, 2016
@gbin gbin deleted the gplv3-exception branch May 8, 2017 17:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.