WWBN / AVideo

Create Your Own Broadcast Network With AVideo Platform Open-Source. OAVP OVP
https://avideo.tube/AVideo_OpenSource
Other
1.88k stars 971 forks source link

Licensing issues #304

Closed joepie91 closed 6 years ago

joepie91 commented 6 years ago

The license for this project is listed as the AGPL 3.0, however the README states the following:

This Software must be used for Good, never Evil. It is expressly forbidden to use YouPHPTube to build porn sites, violence, racism or anything else that affects human integrity or denigrates the image of anyone.

Such an additional clause is not allowed by the AGPL (nor any other GPL licenses):

You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License.

Specifically, the additional restrictions you've stated are not allowed for open-source software, and introducing such restrictions makes your software not open-source. The specific clause of the Open-Source Definition that is being violated here is the following:

  1. No Discrimination Against Fields of Endeavor The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.

The Open Source Initiative also explicitly states that excluding "evil" uses of your software is not allowed for open-source licenses.

Generally speaking, you have two options to resolve this issue:

  1. Remove the usage restrictions, and license it under a standard AGPL license. This would keep your software open-source.
  2. Release the software under a license that restricts what people can use it for (eg. a modified version of the AGPL), but that otherwise allows redistribution and modification. This would make your software not open-source, and it would mean that it's not licensed under the AGPL, but rather under a modified version of it.
DanielnetoDotCom commented 6 years ago

@joepie91

Thanks for this clarify, I would like to keep the "This Software must be used for Good...", what license do you recommend?

joepie91 commented 6 years ago

I'm not aware of any general (A)GPL-like licenses that include such a provision - the closest thing is the JSON license, but it doesn't include the requirement to publish the modified source (like the various GPL licenses do). These kind of licenses are not very common, precisely because* they're not open-source.

Modifying the AGPL to have the "must be used for good" requirement would probably be quite a lot of work, due to how complex the AGPL is - it's possible, but I'd definitely recommend having a lawyer look over it, if you want to be sure that it does what you intend. It'd also mean that (as mentioned before) you can't claim the software to be open-source.

I'm not a lawyer, so unfortunately I can't help in reviewing a modified version of the AGPL. Possibly you could place a notice in the README that you're looking for a lawyer (or somebody who's otherwise more legally qualified than I am) to help out with this.

skreutzer commented 6 years ago

Just drop that clause. People who want to do bad don't tend to care about copyright too much. If you want to prevent certain uses, then you need to make your package non-free and drop the AGPL.

DanielnetoDotCom commented 6 years ago

This issue was closed due to inactivity. Feel free to reopen if you have more feedback or are interested it working on it

joepie91 commented 6 years ago

But... the issue wasn't resolved?

skreutzer commented 6 years ago

@DanielnetoDotCom, you have to decide that, plus all the other 12 contributors need to accept if it should be changed, because they submitted their contributions under the license as it is now, not a new, different one. Also, you might want to not only limit the project to AGPLv3, but AGPLv3 +, at the user's option, any later version of the license, so the FSF can publish a new version v4 to counter new problems as they emerge, without this project being stuck on the old version. The sooner those issues get resolved, the better, because if you have more contributors, you might not be able to reach them any more, or have contributors who object.

To add more reasons why the clause should be dropped: "good" and "evil" are very subjective terms, good luck with enforcing them in court based on some interpretation by somebody. Furthermore, libre licensed software demands essential freedom 0, to use the software for whatever reason, so both the good as well as the bad guys can use it without restriction, as software licensing or copyright in general is a very specific law that doesn't make statements about other areas of life. The clause essentially renders YouPHPTube a non-free, proprietary software package.

DanielnetoDotCom commented 6 years ago

I have changed the license for JSON license

skreutzer commented 6 years ago

What are you doing?!?

  1. The “JSON license” is totally, totally different than GNU AGPLv3
  2. Nobody asked you to do this, to the contrary: this issue is about asking you to decide if you want to drop the additional “good/evil” clause or to keep it, but not to make it worse as it already is
  3. “JSON license”? Is that even a thing? Sounds like CSV license, SQL license, ASCII character 65 license...
  4. Did you ask your contributors, if they're fine with the re-licensing?
DanielnetoDotCom commented 6 years ago

Sorry about that, I won't drop “good/evil” clause

skreutzer commented 6 years ago

Just checked the claim by joepie91 that you cannot add the clause to the AGPL, and it seems like he is right, 7. Additional Terms doesn't seem to permit that. As you want to keep the good/evil clause and make the software non-free, therefore restrictive software, you need to ask all contributors if they accept the license change, and if not, you might need to remove their contributions, if they're copyrighted (non-trivial).

DanielnetoDotCom commented 6 years ago

@skreutzer If some one complain I don't mind to remove the contribution

skreutzer commented 6 years ago

Do you consider them being notified/aware?

maverick74 commented 6 years ago

@DanielnetoDotCom

WT...?!

Daniel, i understand your concern about the good/evil clause, but let me tell you 3 things (personal opinion, if you allow me):

  1. AGPL was a good license (that's why i suggested it to you in the first place) and i believe everyone here was happy with it. I think it would be good for your software/project.
  2. Changing licenses should not be taken lite. It affects your software, the community around it and eventually it's future
  3. The Good/Evil clause will not prevent the software from being used for Evil. It just states your wish. You will probably never be able to do anything with that clause primarily because what for me is *good, for you maybe bad!!! Proving either point will be a pain.

Concerning point 3, here's an example: For some People Porn websites are bad, for others they are good. That Clause does not define anything.

I'll leave you with another suggestion: Change the license back to AGPL and state clearly (on the project front webpage) that your intentions for this project are that it should only to be used for Good.

I understand you have good intentions, but I believe my suggestion above is your best shot, because you will never be able to force anyone to use it just for "your" definition of Good! (Judgment is up to God alone)

maverick74 commented 6 years ago

@DanielnetoDotCom By the way, my personal interpretation of JSON license is that it will allow anyone to use your software for ANYTHING (including Evil! - How will you prove that it is not a good cause?). ( i can elaborate more, if you wish me to... but it will dive into the realms of philosophy / theology / psychology )

DanielnetoDotCom commented 6 years ago

Hi @maverick74 I will appreciate your help on it. I am not good on license . I just want to avoid see things I work on being used to evil things. I really prefer to abandon the project, than to having to approve the use of YouPHPTube in things that I disapprove

DanielnetoDotCom commented 6 years ago

In my understanding evil things is the works of the flesh, which are these; Adultery, fornication, uncleanness, lasciviousness, idolatry, witchcraft, hatred, variance, emulations, wrath, strife, seditions, heresies, envyings, murders, drunkenness, revellings, and such like

maverick74 commented 6 years ago

Hi @DanielnetoDotCom OK, lets take it easy then!

Lets evaluate the points first: Let me tell you first that, usually , the OpenSource community are good people - humans, that make mistakes, but usually good people - that is why they give up from their free time to give something to the world. These guys are the people that might contribute to your project, help it grow, and drive it to good places. You are clearly one of these persons! And a very skilled one.

But you have a choice to make: Either you want to give something to the World free or you don't! I suppose you do, because you already started it! But you have to be prepared that someone, somewhere will use it for evil! Einstein, for example, never thought his theory would allow others to build the atomic bomb. But that same theory also bought a lot of Good.

You must be thinking now that it's better not to build it anymore. And that is an option!

The thing is just this: Someone will do it, sooner or later. Now, think for yourself: What's better: to have a Captain on the wheel that cares for good and, no matter how bad the storm is, it will always try to turn his ship to Good or a Captain that just does not care about the direction?

I think the first is preferable! And i think that you are that captain!

Now... about the licenses:

JSON: You will, most probably, never be able to use the Good/Evil Clause because of the problem of defining "Evil". What is evil for you might not be for me. That is why i think that clause is mostly useless! There is, naturally, the law... but the Law most surely won't stop others from using this for porn, for example. So, it will be useless... Also even the law is subject to interpretations (specially in such abstract concepts such as evil can be in some areas)...

AGPL, on the other hand, will - by law - force whoever uses your software to contribute back the code. If they create and amazing feature that they use in their "evil" site, they are "forced" to give that feature back to you under the same license, so that it can also be used for good.

Those are the differences (from my point of view)!

That's why i say You should get the license back to AGPL. If you really want to state your wish do it so clearly. But there is no license that will enforce a person to use it for Good only (very unfortunately!!!) If a person does something bad with your software, it is not your fault! Like it was not Einstein's fault on the Nuclear Bomb. Your intentions are good. Their evil doing will be up to them and God.

Again, Daniel, this is my personal opinion. It does not mean you have to follow it. You, my friend, should be the one to decide.

DanielnetoDotCom commented 6 years ago

Thanks @maverick74 I just want to make clear I do not approve evil things. of course I do not have control of all YPT installations. But as I said before, I prefer to lose the project by hurting God's principles. This project was given to me by God, He let me guide it, I will do it in the way I imagine Jesus would do.

maverick74 commented 6 years ago

You are a GOOD person @DanielnetoDotCom !!!

Don't ever stop being it even when life (or evil) tries very hard to make you bad.

I believe you're not hurting God's principles, because you have good intentions. If it's used for bad by others, that will be up to them.

Instead of changing Licenses why not add a ReadMe (or even better a LetterToTheUser) file where you can state whatever you wish!!! It might be the better way to do it!!!

Also, If it was God that gave you this project, then you should not abandoned it!

maverick74 commented 6 years ago

@DanielnetoDotCom Please, after your decision upon what you'll do, let us know :)

maverick74 commented 6 years ago

@DanielnetoDotCom any news?

DanielnetoDotCom commented 6 years ago

@maverick74 For now, still JSON license, also I have talked with some contributors and they agree with the license.

maverick74 commented 6 years ago

hi @DanielnetoDotCom Ok. It's your call. :)

Please consider 3 things still:

  1. The more contributors you get, the more complicated will be to change the license later (and licenses truly are one of the most important things about a project).
  2. JSON will allow others to pick your work, use it for whatever they want, sub-license it in a way you cannot get their improvements back to you, and so on...
  3. Also, i've been thinking about another detail: You might want to consider changing the project's name and logo to avoid problems with Alphabet / Google's YouTube down the road.

While the project doesn't get too big you should be OK, but as soon as they see it as a threat you can start having problems.

Just mentioning this in order to get some personal peace of mind... :)

best wishes for you and YouPHPTube :)

Amunak commented 6 years ago

@maverick74:

While 1) is true, JSON license is pretty permissive and changing it shouldn't require approval of contributors (which licenses like the GNU GPL do require).

I see n. 2 as a good thing, though I'd say MIT license is overall better.

Changing both should definitely be considered, especially since even if it's not infringing on any trademark if Google ever sued just the money you'd have to spend defending yourself isn't worth it.

tvmanus commented 6 years ago

Hi Daniel,

I'm not a lawyer, but from my experience dealing with legal documents, you CAN write pretty much whatever you want in the license. The only complication would be to defend it in the court if needed. The easy fix for your problem would be to clearly state that you offer MODIFIED AGPL or whatever license followed by a complete text of the license with your modifications. You cannot just refer to the original license URL, you have to provide a COMPLETE text of the license. It is responsibility of the party accepting the license to read and understand it. Making modifications to the license does not make your software less open source or free in terms of not requiring a monetary or other form of compensation for use of the software. There is a variety of Open Source licenses and none of them makes the open source software less open. Legal documents are not very complex, however they must be very precise, this is why they are written in such language, which appears pretty cryptic for basic people.

maverick74 commented 6 years ago

@Amunak about your 1. You're probably be right about not requiring approval of contributors. Didn't thought it strait... I would still double check it, but you're probably right!

About 2. I do not agree! I think it fair that if someone uses and improves ones work, it should contribute back the code improved so that the original author could also benefit from it. Anyway: this is just an opninion :)

@tvmanus : So, you're saying @DanielnetoDotCom could, for example, copy the text from AGPL and add the JSON clause about not using it from evil? Am I understanding it right?

That would kind of create a "completely new license" just for YPT! But, still, it could work... I didn't consider that! That way Daniel would be backed from the AGPL and still have some peace of mind about it not being available for "evil uses".

In this case i would recommend to first consider if changing name is a GO and after that naming the license after the project.

Different opinions sometimes bring good ideas :D

joepie91 commented 6 years ago

@tvmanus: Making modifications to the license does not make your software less open source or free in terms of not requiring a monetary or other form of compensation for use of the software. There is a variety of Open Source licenses and none of them makes the open source software less open.

This is not correct. If a license is modified in such a way that it violates the Open-Source Definition, that makes the software no longer open-source. The reason that there are many different open-source licenses that don't make the software less open-source, is because despite their differences, they do comply with all the points of the Open-Source Definition.

tvmanus commented 6 years ago

In my opinion, the proposed modification does not violate any of the definitions, which are pretty broad and could be legally challenged if anybody would really care. If you clearly define Good or Evel in legal terms and prove that it maps into any specific field or endevour according to definitions, consider that you convinced me. Please don't give any examples, stay purely generic. The biggest problem that any derived work would be required to drag that modified license with it and some people may not like it, so it artificially reduces number of potential followers, not only contributors.

On Tue, Mar 6, 2018 at 2:50 PM, Sven Slootweg notifications@github.com wrote:

@tvmanus https://github.com/tvmanus: Making modifications to the license does not make your software less open source or free in terms of not requiring a monetary or other form of compensation for use of the software. There is a variety of Open Source licenses and none of them makes the open source software less open.

This is not correct. If a license is modified in such a way that it violates the Open-Source Definition https://opensource.org/osd-annotated, that makes the software no longer open-source. The reason that there are many different open-source licenses that don't make the software less open-source, is because despite their differences, they do comply with all the points of the Open-Source Definition.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/DanielnetoDotCom/YouPHPTube/issues/304#issuecomment-370905746, or mute the thread https://github.com/notifications/unsubscribe-auth/ARbevayKBpO8cRIJodrtmPImPf_ORLzFks5tbuh6gaJpZM4RVEta .

joepie91 commented 6 years ago

That's not how this works, and it's quite clearly an attempt to circumvent the spirit of the OSD by technically'ing your way through it. The OSD forbids any discrimination in fields of endeavour whatsoever - any license term that does so therefore violates the OSD, you don't need any definitions of specific fields.

Saying "this code cannot be used for evil" excludes "evil fields of endeavour", and therefore - regardless of what those fields of endeavour actually are - clearly violates the OSD.

maverick74 commented 6 years ago

I think @tvmanus hit the same spot i did. The problem is going to be legally defining what's "evil". Because that's kind of a personal opinion. What's evil to one person may not be to another. So, from my POV the license will never be able to enforce usage only for "good", as a stated above.

Still, personally, i think this is a very instructive and productive discussion!!!

tvmanus commented 6 years ago

Unfortunately this is how does it work. Let's open up a legal dictionary, without going into long details, good or evil are defined as intent, which is perfectly valid legal term. And when we look up field or endeavour, intent is not in the list of synonymous, so any lawyer will tell you that formally those are different things.

The clause proposed in this edition of the license is indeed limiting, just as many open source licenses require to disclose derived work, which could be considered as a limitation of my freedom to do whatever I want, which does not make the software less free in terms of requiring monetary compensation for it, but it may require compensation in terms of contributing back derived work, which consumed some amount of your time and possibly other resources like electricity, hosting services and etc, which makes it not completely free. There are licensees, like BSD, which pretty much state, do whatever you want, we don't want anything from you.

The whole purpose of the license is to set limits on consumers of the software products as deemed necessary by the owner. This gives the owner of the product complete freedom, within applicable legal framework, to set any terms and conditions how the product can be used. The question here if you, personally agree with the licence requirements, if it looks unacceptable, please decline it and move on, this would the problem for the owner, who is trying to promote the product on the market and may fail to do so if many prospects will decline proposed license terms. In our position we can only suggest to use something well known in the industry instead of demanding it.

I know some open source licenses which actually require payment for the use of the software, it is hardly enforceable, but there is a price tag on the product and anyone using it is actually violating the license terms if the requested payment has not been made.

Once again, the reason all the licenses are written in that weird language is to make sure that it disambiguates as much as possible and every clause can be examined through formal logic exercise in order to resolve any possible legal claims. And proposed modification is introducing a great deal of uncertainty, so the resulting quality of the whole license document reduced dramatically compared to the original.

On Wed, Mar 7, 2018 at 1:33 AM, Sven Slootweg notifications@github.com wrote:

That's not how this works, and it's quite clearly an attempt to circumvent the spirit of the OSD by technically'ing your way through it. The OSD forbids any discrimination in fields of endeavour whatsoever - any license term that does so therefore violates the OSD, you don't need any definitions of specific fields.

Saying "this code cannot be used for evil" excludes "evil fields of endeavour", and therefore - regardless of what those fields of endeavour actually are - clearly violates the OSD.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/DanielnetoDotCom/YouPHPTube/issues/304#issuecomment-371038021, or mute the thread https://github.com/notifications/unsubscribe-auth/ARbevThvwxWfP6-dGtGCgLJQe0CkAR6kks5tb39NgaJpZM4RVEta .

tvmanus commented 6 years ago

@maverick74 , yes and no. Evil in legal world is a synonymous to malice and typical dictionary will define it exactly like evil intent. So it could be defended in court, but result will depend where it is located and other specifics of the claim.

joepie91 commented 6 years ago

@tvmanus Legal definitions or processes are irrelevant here. The Open-Source Definition is not a law; it's a set of third-party guidelines, and it's quite clear about what is and isn't open-source. According to that definition, "can't be used for evil" very clearly isn't open-source because it discriminates by field of endeavour. You don't have to like it, but that's how the OSD works.

As for "licenses which require payment for the use of the software" - these licenses are also not open-source, if they really do work as you stated. The typical approach to commercial open-source is to simply not give people access to the binaries (and therefore also not to the source) unless they pay you; but once they do have access, nothing can keep them from redistributing it for free, and a license that requires each user to pay for the usage of the software, is also very clearly not an open-source license.

If you disagree with how the Open Source Definition works and what requirements it sets, then please take that up with the Open Source Initiative rather than making pseudo-legalese posts here. This is what "open-source" means, for very good reason, and you don't get to arbitrarily redefine the term.

tvmanus commented 6 years ago

If you define open source like this, I cannot stop you from doing so, however you cannot demand the author to use any specific license. If you think that it is not Open Source license and your belief does not allow you to use anything what does not fit into the definition how you understand it, it may not stop people from accepting the license as specified, as long as it is properly formatted and the complete text of the license is supplied with the source code. It is author right and consumer responsibility to agree on licensing terms. If you don't like proposed license, it is your right to decline it and move on. The suggestion to stick with something known in the industry is very valid and I would also recommend to use unmodified variant, produced by pretty good lawyers and covering a lot of grounds.

On Wed, Mar 7, 2018 at 2:44 PM, Sven Slootweg notifications@github.com wrote:

@tvmanus https://github.com/tvmanus Legal definitions or processes are irrelevant here. The Open-Source Definition is not a law; it's a set of third-party guidelines, and it's quite clear about what is and isn't open-source. According to that definition, "can't be used for evil" very clearly isn't open-source because it discriminates by field of endeavour. You don't have to like it, but that's how the OSD works.

As for "licenses which require payment for the use of the software" - these licenses are also not open-source, if they really do work as you stated. The typical approach to commercial open-source is to simply not give people access to the binaries (and therefore also not to the source) unless they pay you; but once they do have access, nothing can keep them from redistributing it for free, and a license that requires each user to pay for the usage of the software, is also very clearly not an open-source license.

If you disagree with how the Open Source Definition works and what requirements it sets, then please take that up with the Open Source Initiative rather than making pseudo-legalese posts here. This is what "open-source" means, for very good reason, and you don't get to arbitrarily redefine the term.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/DanielnetoDotCom/YouPHPTube/issues/304#issuecomment-371260425, or mute the thread https://github.com/notifications/unsubscribe-auth/ARbevTjFqdQxcDg9ogydapNTn47Wifmlks5tcDiFgaJpZM4RVEta .

bab55z commented 6 years ago

this is very weird! maybe you should distribute your software somewhere else and distribute it under proprietary license.

maverick74 commented 6 years ago

Yes, that's exactly what we need!!! Proprietary licenses!!!

As if we didn't have enough of those already...