code-charity / youtube

[top~1 open YouTube & Video web-extension] Enrich your experience & choice! 🧰180+ options & clever features📌set+forget📌Longest-standing(yet rare&tough alone. Please help/join🧩us👨‍👩‍👧‍👧) ..⋮ {playback|content discovery|player|extra buttons|distractions|related videos|shorts|ads|quality|codec|full tab|full screen}
http://improvedtube.com
Other
3.31k stars 500 forks source link

license suggestions / "Charity Code License" #920

Closed Maniues closed 3 years ago

Maniues commented 3 years ago

Your license:

All accepted pull-requests are assumed to come under GNU agpl-3.0-7abcdef for the world and MIT/royalty-free to the original maintainers.

You should add "NOTICE" file to the repository and add all copyright notice (names of the contributors?) and MIT/X11 license text. You can use git shortlog for that. It is a big copyright violation (about 61 contributors including you!!!). You can choose AGPL 3.0, but then you are obligated to make this software available under AGPL. This is good moment to change a license from NON-FREE to free license (AGPL or another) but I know that you don't want to do that, so I can suggest you some license changes:

ImprovedTube commented 3 years ago

wow thank you! @Maniues welcome!

ImprovedTube commented 3 years ago

Github(with readme.md & credits list) is on the extension's front page. This seems to be the most efficient/familiar way to explore the contributors. We might add a list inside the extension too still.

Much of your specification helps clarity <3

if the contibutions by pull-request, come under GNU license for the world, this means anybody can use those single lines of code if they include GNU license and research themselves which are by pull request and if they trust by this assumption. (Contributors might not include their own license because they dont want to). But If the original maintainer and original cause have full rights (very assumeable), then the main release needs not to submit to the above.
Original means earlist by default(?) (Might not define more original maintainers. Might add a time-cap i.e. "if the licence is not updated for some years, then it turns completely free or GNU at least")

if the price is not higher than costs of distribution

no costs are necessary for distribution usually, but if commecial modified use is allowed like this, then an adware/spyware distributor might argue that millions of downloads still not pay all their rich city salaries....?

'you' means you, the licensee of this license.

= 'you' is everyone who wants. Some such definitions don't help / shouldnt possibly be subject of any real law case. i.e. 'pull-request' has no dangerous synonyms. - Yet of course we get you, avoiding issues or making it waterproof will be appreciated for this & for future projects 👍 thank you 🎇

Maniues commented 3 years ago

@ImprovedTube I knew there would be a problem understanding this. Commercial use also includes distribution. The license itself is not complete yet, but it is already working effectively against Adware / spyware.

non-commercial purposes "means doing anything with the software primarily for money-earning / money-making purpose.

So, if you add Adware features and distribute the program for free, it is a violation of the license as you are distributing the program mainly for profit. The price must not exceed the cost of distribution, and advertising can always exceed this limit. Same with spyware. It doesn't look precise at this point, but I am able to fix it. I have edited the license itself many times and there is still some work to be done.

As for the GNU AGPL and pull requests, it's like this: I made a mistake with that GNU AGPL contributor, but you can still use these PRs on the AGPL, so there is no difference here. NOTE: what you did in the last commit is wrong. first: what does "royalty-free" mean? Suppose you hire me as an employee. We sign a contract. The copyright notice on the contract ONLY says "Employee grants a royalty-free license to the employer". What can you do with these lines of code? Answer: Nothing. It is imprecise and wrong. There is currently 1 PR, please do not accept it until you fix the problem. second: the previous source codes are still licensed to you from MIT. The change in the license did nothing in this case.

I see you are trying to repair your license. Very good, but see what's wrong with it (it's not about whether it can be used commercially, it's about how the license is written).

(Reason for specific restriction: Commercial projects keep using our code without permission. Some with excessive adware / spyware.

It's not a good idea to add these types of comments in the license itself. Sure, it can be something like this sometimes, but it's wrong here. Why? Because "Commercial projects keep using our code without permission" in the license can be confusing. For the purposes of adding comments, there is one place: the preamble. The license itself is quite chaotic and difficult to analyze legally. For this reason and because it says "FUTURE DRAFT (Talk to us? ☺):" I wrote the license which is above. It leaves a few more doubts that I will fix and let you know. I will leave a few more comments about my license here:

Not a problem, see OSS / FREESOFTWARE Licenses. "You may make, run and propagate covered works that you do not convey" excerpt from the GNU GPL license. There is also the word "us" in your license. This is not a problem, but in fact my definition of "you" in the license is wrong. Today I will try to refine the license and let you know. If you are willing, I will "prepare it" for distribution by you (some information, headers, etc.)

ImprovedTube commented 3 years ago

hi! :) :) how will your / our license be called? 👍

preamble

yes! ideas for the draft were:

  1. 'a draft is better (/more entertaining) than nothing'. Before there was no license file.
    ( do github pull request default to MIT? )
  1. only but completely excluding 1in8 groups in a 2x2x2 matrix:
    * private publisher
    nonprofityesYes. (talking is good)
    commercialyesOnly unmodified (/not tampered with)

    so when un-modified, everybody can mirror (host) the download, whatever else they might sell. (you exclude that?) Only once they modify they better hold a charity status or just dont. no meaningful commercial fork is expectable. if any, then they can ask. Maybe later inclusions can be defined within the group of modified commercial publishing too. your is essentially same as non-profit tho?('Priced below costs of distribution (~<$0.0001?), including indirect pay / ads')

yes, alternatively: "commercial publishers are disallowed to ad any ads or tracking (let alone malware)" / "willing to pay a fine largely exceeding those earnings?"


  1. Experiment with establishing cooperative-/share-holder-a-like fairness/decentralization by a license. Maybe adding counting method/s. I.e. if somebody programms >1% of the applied code, then they should have >1% voting rights, receive >1% of potential income. etc.
Maniues commented 3 years ago

@ImprovedTube

I think "Charity Code License "CHCL" will be good idea. It applies only for my draft, not for your actual license, because my draft it's designed to use by any project, not only ImpovedTube.

(Mainly for ImpovedTube, but still universal.)

The problem is the "unmodified" version because your license is probably incompatible with all other licenses. It's so bad that it's not even compatible with itself (the fork can't be under that license). This is because if you allow commercial distribution of unmodified versions and someone makes a fork and starts licensing their fork under the same license as the original version, then he allows others to distribute his fork for commercial purposes as long as no one has modified it. And that would be illegal!

I tried to do something like "first version" (check in edit my messages) but then it gets more problems (taking up license space or complicating it).

You can add a license exception, for example: "As a special exception, you may commercially distribute unmodified versions of this software, provided you comply with any other license conditions + include a copy of this exception in all copies you distribute."

This should fix the problem. Implementing this in the license would be difficult and unnecessary, because every fork (including fork forks) would have to contain information about some software that allows for something that is out of date here anyway. In fact, commercial distribution of ONLY original software does not give me any advantage. Why, when every modification eliminates it? Allowing this raises the problem of "installers" with advertising.

I have reviewed my license and it is enough to change "commercial distribution" to selling. This will remove the adware problem.

Counting voting rights is unnecessary and difficult. It causes a lot of problems. You don't know if it's about the number of commits or the number of lines of code, characters, words. The counting process is also difficult.

Maniues commented 3 years ago

@ImprovedTube I saw your commit. I recommend you to use this text: "Except for maintainers: you grant non-exclusive, free-of-charge and any warranty license to use, pull, merge, modify and/or distribute your changes under any license. Original maintainers must credit you." instead of "free of all copyright". Credit is required, because of moral rights (in some countries)

ImprovedTube commented 3 years ago

hi! :) 👍 Voting rights.. yes! difficult just a thought.

The problem is the "unmodified"

Yes! so at fork commercial publishing rights are lost. To make the license file forkable, it can state what is the original repo/purpose.
The virality/exceptionlessness of free licenses/GNU could also be a problem. Depends the project. For ImprovedTube. I just cant imagine a good commercial fork, who is requiring not to ask first. (if they even care) (I might underestimate how introverted some people are. Yet services for the public wont be completely silent and it will be more meaningful for everyone, if they talk. .For improvedtube's purpose, history has shown (https://github.com/YePpHa/YouTubeCenter , MIT licences), that the few contributors should stick together to maintain one good version at most. - Other development can be easier and more satisfactory than relying on another Website like Youtube.

Thank you! sorry for not answering everything today.