License Change Proposal from Modified BSD license to GNU AGPL #14

Closed
anton wants to merge 1 commits from (deleted):master into master
First-time contributor
No description provided.
Owner

@amcclure: Is there any particular reason you want this change in place?

@amcclure: Is there any particular reason you want this change in place?
anton changed title from License Change Proposal from BSD to AGPL to License Change Proposal from Modified BSD license to GNU AGPL 2019-04-01 15:59:58 +00:00
Author
First-time contributor

I prefer GNU Affero General Public License (GNU AGPL https://www.gnu.org/licenses/agpl-3.0.en.html) over the Modified BSD License that's currently being used.

The GNU AGPL would be better to use as anyone that downloads and modifies wouldn't be able to keep their changes secret from everyone else. It would be better to make it free software that follows the four essential freedoms https://www.gnu.org/philosophy/free-sw.en.html.

This page may help explain it better and help show benefits to using AGPL: https://www.gnu.org/licenses/why-affero-gpl.html

I prefer GNU Affero General Public License (GNU AGPL <https://www.gnu.org/licenses/agpl-3.0.en.html>) over the Modified BSD License that's currently being used. The GNU AGPL would be better to use as anyone that downloads and modifies wouldn't be able to keep their changes secret from everyone else. It would be better to make it free software that follows the four essential freedoms <https://www.gnu.org/philosophy/free-sw.en.html>. This page may help explain it better and help show benefits to using AGPL: <https://www.gnu.org/licenses/why-affero-gpl.html>
Owner

@amcclure: As it is now, the BSD 3 clause license allows for the four essential freedoms:

  1. The freedom to run the program as you wish, for any purpose.
  2. The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this.
  3. The freedom to redistribute copies so you can help others.
  4. The freedom to distribute copies of your modified versions to others. 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.

Looking over the TL;DR Legal pages for the modified BSD license and AGPL license, the differences show that:

  • Both allow users to do the same things with the code
  • BSD does not allow others to use my trademark while AGPL does not allow others to sublicense the software
  • BSD only requires a copyright and license is included, but AGPL requires that along with all changes to be stated, the new source be disclosed, and install instructions listed

I care more about others using my trademark than restricting others from sublicensing the software, and I do not want to burden users with publishing their forks of my code or including any instructions. I personally believe the differences of the AGPL hinders more than it would help in this case, given I already have others using babili-bot that would not have if they knew that there would be this new responsibility on them for using it.

@amcclure: As it is now, the BSD 3 clause license allows for the four essential freedoms: 1. The freedom to run the program as you wish, for any purpose. 2. The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this. 3. The freedom to redistribute copies so you can help others. 4. The freedom to distribute copies of your modified versions to others. 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. Looking over the TL;DR Legal pages for the [modified BSD license](https://tldrlegal.com/license/bsd-3-clause-license-(revised)) and [AGPL license](https://tldrlegal.com/license/gnu-affero-general-public-license-v3-(agpl-3.0)), the differences show that: * Both allow users to do the same things with the code * BSD does not allow others to use my trademark while AGPL does not allow others to sublicense the software * BSD only requires a copyright and license is included, but AGPL requires that along with all changes to be stated, the new source be disclosed, and install instructions listed I care more about others using my trademark than restricting others from sublicensing the software, and I do not want to burden users with publishing their forks of my code or including any instructions. I personally believe the differences of the AGPL hinders more than it would help in this case, given I already have others using `babili-bot` that would not have if they knew that there would be this new responsibility on them for using it.
Author
First-time contributor

If the issue is trademark/ip, would it be possible to fork the bot without any of the trademarked/copyrighted parts?

If the issue is trademark/ip, would it be possible to fork the bot without any of the trademarked/copyrighted parts?
Owner

@amcclure: The trademark bit, from the scope of the license (which is quite short if you want to go over it yourself) refers to this section:

Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

Which essentially means that someone is not allowed to use my name for a forked version of this project. However, of the differences of BSD over AGPL I mentioned earlier, my biggest gripes was that the AGPL prevents sublicensing (which would be a potential solution to this issue where you could use dual licenses if AGPL didn't forbid it) and requires all forks to state all changes, disclose the new source, and provide instructions (which can hinder new developers from forking babili-bot that otherwise would).

With all that being said, the majority of the functionality of babili-bot as an IRC bot is in the bot directory with the actions and coroutines directories being where developers can customize their bots. So you could retain the core of the bot under the BSD license (the bits I wrote) and you can rip out what is in actions and coroutines to put under your own license (as you would have every right to under the BSD license since these changes would be separate from what I have licensed). Though, I am not sure if AGPL's restrictions on sublicensing applies to its parent code base or only its offspring code base.

@amcclure: The trademark bit, from the scope of the license (which is quite short if you want to [go over it](https://tildegit.org/aewens/babili-bot/raw/branch/master/LICENSE) yourself) refers to this section: > Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. Which essentially means that someone is not allowed to use my name for a forked version of this project. However, of the differences of BSD over AGPL I mentioned earlier, my biggest gripes was that the AGPL prevents sublicensing (which would be a potential solution to this issue where you could use dual licenses if AGPL didn't forbid it) and requires all forks to state all changes, disclose the new source, and provide instructions (which can hinder new developers from forking `babili-bot` that otherwise would). With all that being said, the majority of the functionality of babili-bot as an IRC bot is in the `bot` directory with the `actions` and `coroutines` directories being where developers can customize their bots. So you could retain the core of the bot under the BSD license (the bits I wrote) and you can rip out what is in `actions` and `coroutines` to put under your own license (as you would have every right to under the BSD license since these changes would be separate from what I have licensed). Though, I am not sure if AGPL's restrictions on sublicensing applies to its parent code base or only its offspring code base.
Owner

An article I recently came across goes into some interesting consequences of the AGPL license:

AGPL extended the GPL to apply to software accessed over a network; since the software is only being used, not copied, the GPL would not triggered, but the end result is even more onerous than the GPL.

The license places restrictions on software used over a network which are extremely difficult for Google to comply with. Using AGPL software requires that anything it links to must also be licensed under the AGPL. Even if you think you aren’t linking to anything important, it still presents a huge risk

Given the nature of Babili being its integration into other services, along with the other reasons mentioned above, I will be retaining the license as BSD and closing this ticket.

An [article](https://stratechery.com/2019/aws-mongodb-and-the-economic-realities-of-open-source/) I recently came across goes into some interesting consequences of the AGPL license: > AGPL extended the GPL to apply to software accessed over a network; since the software is only being used, not copied, the GPL would not triggered, but the end result is even more onerous than the GPL. > The license places restrictions on software used over a network which are extremely difficult for Google to comply with. Using AGPL software requires that anything it links to must also be licensed under the AGPL. Even if you think you aren’t linking to anything important, it still presents a huge risk Given the nature of Babili being its integration into other services, along with the other reasons mentioned above, I will be retaining the license as BSD and closing this ticket.
aewens closed this pull request 2019-04-04 22:04:30 +00:00

Pull request closed

Sign in to join this conversation.
No reviewers
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: aewens/babili-bot#14
No description provided.