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

Allow explicit use of any CC license for UMC assets #647

Merged
merged 4 commits into from
May 13, 2017

Conversation

pydsigner
Copy link
Contributor

The mandatory use of the GPL for all things Wesnoth has long been a sticky point for contributors, especially those not contributing to core (i.e. creating UMC add-ons). Here are a few examples of forum discussion, and an explanation of why the current state of affairs is not ideal.

There's been much talk about addressing the issue, but no action, and the only actual planned solution is to allow use of Creative Commons licensing, which still forces content creators to give up some rights beyond simple redistribution of the unified work. Some authors wishing to use non-GPL resources have gone so far as to attempt to disanull the upload agreement by asserting licensing terms within the add-on itself.

This PR seeks only to allow content authors to not agree to sign away all their work under the GPL, instead only requiring that they allow distribution through the official add-on server, while still maintaining current behavior for all content not explicitly licensed. Changing the default license is far beyond the scope of this PR. Any discussion of the exact text changes is welcomed.

@gfgtdf
Copy link
Contributor

gfgtdf commented Apr 13, 2016

I don't think we shoudl allow arbitary licenses in our addons.

First, note that most of this discussion was about the licensing of the art not about the programming code. We shouldn't allow people to put obfrucased code in their addons.

Second, i think thats a good thing to allow only licences that enable other addon authors to reuse those arts without too much effort.

@AI0867
Copy link
Member

AI0867 commented Apr 13, 2016

There are two big issues here:

  • UMC authors frequently copy from other UMC without bothering to acquaint themselves with licensing
  • mainline wesnoth occasionally mainlines UMC content

If we require all UMC contributions to be GPL-licensed, that makes all of this mostly work, by assuming that the author either used GPL-compatible content or made it himself.
If we allow other licenses, that means people need to keep track of which license applies to what, which license is compatible with what, and will cause the addon server to generally descend into licensing-hell.

You're perfectly free to also provide your content under other licenses, but to ensure that the common workflow remains legal, we must require that the content is also available under the GPLv2.

I haven't been involved in wesnoth recently, but that's the reason it wasn't changed in the past.

@Elvish-Hunter
Copy link
Contributor

you certify that you have the right ... to release all explicitly licensed content for download on this server, and that you choose to do so.

I guess that some users might interpret this as allowing even fair use contents, so I won't be surprised if someone ends up releasing an add-on based on another intellectual property. That will create even bigger problems (DMCA notices, for example).
It'd be another matter if we allowed only a subset of CC licenses as alternatives to GPL instead (example: CC BY-SA might be allowed, but CC BY-NC-ND shouldn't be).

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

I don't recall how compatible the GPL is for dual-licensing items or how lenient other licenses would be to being distributed under the GPL.

If we can allow dual-licensing items under both the GPL (mandatory) and whatever other license content creators decide to use, either by choice or under terms of licensing of third party content they want to use in their addons, then it should just be a matter of updating this PR to reflect that.

However, I seem to recall there being some discussion regarding the fact that the GPL does not require attribution. Licenses for thirds party content such as CC-BY-SA require attribution. Wouldn't having dual licensing under the GPL and, for example, the aforementioned CC license, mean that content would be usable without attribution under the terms of the GPL?

All being said, we do have a pretty open sharing policy within the Wesnoth modding community thanks to the GPL. The Skyrim modding community, for example, doesn't take kindly to assets used without permission from the author. It's great that we have such an open sharing environment, but it does cut us off from great content that's out there simply because its creators do not want it relicensed under the GPL.

Furthermore, there will be cases where addon authors do not want others to freely use the content provided in their addons, such as commissioned art. How do we plan to deal with such contingencies?

Honestly, I think @gfgtdf has the right idea. We definitely want code (anything within .cfg files) to remain strictly under the GPL. It's art/music/etc that we want to allow under other licenses.

The way I see it, either we find out if it's possible to allow dual licensing with the GPL and other licenses (mostly CC and subsets), or we declare all art and music assets under CC-BY-SA and require all addons to have correct attribution.

@pydsigner
Copy link
Contributor Author

@Elvish-Hunter

I guess that some users might interpret this as allowing even fair use contents, so I won't be surprised if someone ends up releasing an add-on based on another intellectual property. That will create even bigger problems (DMCA notices, for example).

The solution to this seems to be to clarify the text, not to restrict licensing.

@CelticMinstrel
Copy link
Member

Vultraz, you can dual-license something under GPL with any other license you want – even a restrictive proprietary license!

Personally, I think some Creative Commons license should be the official license for all addons, rather than GPL, and in fact I think CC should be used by the core project for not only its art, sounds, and music, but also for the campaigns, multiplayer scenarios, and unit type definitions (at least; possibly even for the entire core directory).

We definitely want code (anything within .cfg files) to remain strictly under the GPL. It's art/music/etc that we want to allow under other licenses.

I disagree. The cfg files contain content that falls into your "art/music/etc" label – specifically, plot, dialogue, and similar. These are creative content, not code (thought it may be expressed amidst code).

@pydsigner
Copy link
Contributor Author

@AI0867

UMC authors frequently copy from other UMC without bothering to acquaint themselves with licensing

You're right, it is very common to pull down an add-on and have no information on where assets came from. If you're the original content author, nothing can currently be done because the GPL doesn't require attribution. Part of the goal of this PR is to stop this.

mainline wesnoth occasionally mainlines UMC content

Also true, but to prevent UMC authors from choosing their own licensing on the off chance that it will one day be mainlined without opportunity to discuss that process with the author seems a bad cost/benefit tradeoff.

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

Vultraz, you can dual-license something under GPL with any other license you want – even a restrictive proprietary license!

Well that makes everything easier :)

@pydsigner
Copy link
Contributor Author

@gfgtdf

First, note that most of this discussion was about the licensing of the art not about the programming code.

  • It's much simpler to allow licensing both instead of trying to denote what types of content can be released under non-default licenses
  • Code is actually often a minor part of *.cfg's. What about the dialogue?

We shouldn't allow people to put obfrucased code in their addons.

Why not?

Second, i think thats a good thing to allow only licences that enable other addon authors to reuse those arts without too much effort.

I strongly disagree. Good art and music aren't cheap, whether the UMC author produces it himself or commissions others to produce it for him. If it's required to be licensed under the GPL or even the CC, I'd give it a couple of weeks of uniqueness before some other author uses it in his own project, where probably many of the players of the derivative work will never realize the actual source. It is my belief that we would have more good UMC content if we didn't force people who put it on the add-on server to in essence pay for everyone else to get some new assets.

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

As for making CC the official license of the addon server and possibly core, I wouldn't be opposed to that. It might be the simplest way to start forcing attribution, which is always good.

That still doesn't solve the issue raised by @pydsigner above, though.

@CelticMinstrel
Copy link
Member

Note that making CC the official license of core and the mainline campaigns would be a process that requires contacting everyone who ever contributed to them and asking them if they mind changing the license. (Of course, we also first need to decide which CC license.) I definitely think it would be worth it, though.

I'm not sure which specific issue you're referring to, @Vultraz

@pydsigner
Copy link
Contributor Author

@CelticMinstrel Presumably

Creative Commons licensing, which still forces content creators to give up some rights beyond simple redistribution of the unified work.

@pydsigner
Copy link
Contributor Author

A couple other things I'd like to point out:

  • If we're eventually going to switch the default license to something CC, allowing explicit licensing can help prepare for that and allow those who wish to keep their work GPL only to do so.
  • We don't lose our existing content — everything currently on the add-on servers has been released under the GPL and anyone wishing to retain access to the current GPL assets may download them from 1.12 server as long as that remains up and from the 1.13 server until a new non-GPL version of the add-on is uploaded.

@CelticMinstrel
Copy link
Member

I think we do also need a way to know the license of an add-on without having to download it first. Probably a new key in _server.pbl or something. It could be set to either some standard value ("gpl2", "cc-by-sa") or the path to a license file.

@pydsigner
Copy link
Contributor Author

@CelticMinstrel Would that then be the primary license for all files not explicitly assigned to a license for that add-on? Multiple licenses for various parts of a project is a real thing.

@aginor
Copy link
Contributor

aginor commented Apr 13, 2016

One of my worries with these changes is that they will require a lot of policing and administration. We'd have to be able to tell which content is licensed under what, provide a mechanism for authors to complain that their contents is mis-used (by not attributing or following the forms of the licensing).

As a whole, I think we need to discuss this further, and I suggest we develop a plan over the mailing list. I think it would be good to allow other licenses for UMC and assets, but we'd have a colossal job on our hands to either get the artwork relicensed or replaced.

I am not a lawyer, but I do not think that the PR as it stands is sufficient to accommodate the goals of @pydsigner, so I am strongly opposed to this being merged at this stage.

@pydsigner
Copy link
Contributor Author

@aginor

we'd have a colossal job on our hands to either get the artwork relicensed or replaced.

This PR does not require anything to be relicensed, it just allows choice in the future. Or are you talking about the CC change that's been mentioned? As I noted initially, that is a much bigger task that is outside the scope of this PR.

@CelticMinstrel
Copy link
Member

I agree with the final thing @aginor said – I'm in favour of this PR, but don't consider it sufficient to address the issue.

@pydsigner – That's a good question. I think projects that use different licenses for different parts would have to be encouraged to not use one of the presets; using a preset would imply everything in the add-on is available under that license. I suppose there could be a way to specify separate licenses in the _server.pbl for binary files (images, music, sounds) and text files (cfg, lua), though.

@aginor
Copy link
Contributor

aginor commented Apr 13, 2016

@pydsigner I realise that, but I think the two problems go hand in hand. I am not a lawyer, but I would be very surprised if you were not to break the licensing terms if you reused any GPL licensed contents in your CC-licensed code.

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

If we intend to relicence core (would this also relicense the game as a whole?), then @CelticMinstrel is correct:

Note that making CC the official license of core and the mainline campaigns would be a process that requires contacting everyone who ever contributed to them and asking them if they mind changing the license. (Of course, we also first need to decide which CC license.) I definitely think it would be worth it, though.

In that vein, most of the new files I've added recently have simply been copyrighted to 'the Battle for Wesnoth' project as opposed to me specifically. Might I suggest anyone here who has copyright on specific files and would be willing to have them copyrighted to the project instead amend the headers in any of their relevant files? It would make a transition to a new license easier, since it'd be fewer people to talk to.

NOTE that this only applies to the source files. I'm slightly unclear if @CelticMinstrel means we should have CC for only non-source or not.

If that's the case, it might be very hard to do as suggested and contact everyone. Do we contact anyone who ever committed anything to a mainline campaign scenario? Only the original author? What if significant changes have been made (such as what I did with NR?)

@aginor
Copy link
Contributor

aginor commented Apr 13, 2016

In that vein, most of the new files I've added recently have simply been copyrighted to 'the Battle for Wesnoth' project as opposed to me specifically. Might I suggest anyone here who has copyright on specific files and would be willing to have them copyrighted to the project instead amend the headers in any of their relevant files? It would make a transition to a new license easier, since it'd be fewer people to talk to.

Depending on the country you're worried about, that's not sufficient. Some countries require there to be an actual signed piece of paper.

@CelticMinstrel
Copy link
Member

(would this also relicense the game as a whole?)

No, when I say core I'm referring to specifically the data/core directory.

Might I suggest anyone here who has copyright on specific files and would be willing to have them copyrighted to the project instead amend the headers in any of their relevant files?

Um, I think you're overly simplifying the issue here. Just contacting the person named at the top of each file isn't sufficient. You need to run git blame on every file and contact every person who appears in the result. And you might need to contact some people gleaned by other methods as well. For example, images, sounds, and music are usually committed by someone other than their creator.

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

You need to run git blame on every file and contact every person who appears in the result.

That would imply every single contribution to a file, no matter how small, constitutes copyright holding :/

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

@CelticMinstrel there are 836 names listed in about.cfg. Even assuming a good ~200 of those are translators, that's still over 600 people whom have contributed something in some form or another in the past. Do you really think we can contact every one of them? And that isn't even counting the people who aren't listed in about.cfg.

@CelticMinstrel
Copy link
Member

That would imply every single contribution to a file, no matter how small, constitutes copyright holding :/

I'm pretty sure this is the case.

But you know, we don't have to contact every single contributor to the project. No-one has suggested re-licensing the code, for example. I don't have a problem with the code being licensed under GPL. It's the content I don't think this is appropriate for. So you'd restrict your git blame checks to the data/core directory and possible the data/campaigns and data/multiplayer directories. For images, sound, and music, you'd probably need to use a different means of determining who contributed what.

I'm not sure if translators need to be contacted.

@pydsigner
Copy link
Contributor Author

http://www.gnu.org/licenses/gpl-faq.en.html#WhatCaseIsOutputGPL looks very helpful here:

Keep in mind that some programs, particularly video games, can have artwork/audio that is licensed separately from the underlying GPLed game.

So it does look like we can switch any assets to CC or other licensing without worrying about code.

However, note http://www.gnu.org/licenses/gpl-faq.en.html#Consider as well.

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

Well that's a massive PITA :(

I seem to have mixed up a few of the issues at hand, (ie, src/ vs data/) but any bit of code we change license on will be a HUGE task.

As far as I know, we do not have any disclaimer that new contributors have to agree to... it might save future hassle if we implemented such a thing.

  • If we had a unified project copyright, it would be a simple matter of saying all contributions will be copyrighted to the project and we would have the right to do with them as we see fit.
  • We could do something along the lines of the Google Individual Contributor License Agreement and basically say contributors own copyrights to their submissions but we may distribute them as we see fit. Which might be useful as we look towards Steam and App Store distribution...

Either way, no matter what we do it seems like we'll be sending out a couple hundred emails. ;_;

@CelticMinstrel
Copy link
Member

Either way, no matter what we do it seems like we'll be sending out a couple hundred emails.

Yes, that's right. There is no other way to convert something from GPL to another license. (Well, okay, you could also rewrite it from scratch, but that would be far more of a pain than contacting everyone.)

@Vultraz
Copy link
Member

Vultraz commented Apr 13, 2016

There's a problem, though: we're unlikely to hear back from a portion of them. Plus, we may not even have valid emails for all of them. What then :/

@pydsigner
Copy link
Contributor Author

I've changed the text to be less permissive, hopefully the new text is something that we can all agree upon.

@gfgtdf
Copy link
Contributor

gfgtdf commented May 14, 2016

Hmm yes i wonder whether we should add a note about where exactly the licence files must be placed, to prevent the case that somone assumed a file was GPL licensed becasue he couldn't find any license file.

@Vultraz
Copy link
Member

Vultraz commented May 14, 2016

I'd say all license files should either be in the addon toplevel, or in the same directory as the asset in question.

@pydsigner
Copy link
Contributor Author

How about allowing ./ART_LICENSE and <resource.path>.license?

@gfgtdf
Copy link
Contributor

gfgtdf commented May 15, 2016

Hmm not sure if i understood correctly, if i have my art file at "images/units/axeman.png" should i them put the license informtaion at "images/units/axeman.png.license" or "images/units/.license" ?

In any case i don't think i personally see a problem with it. But still i think we should, before merging this, agree that we want to do it the same way with mainline content or not. Specially because we might want to mainline some addons.

@pydsigner
Copy link
Contributor Author

@gfgtdf add-ons/My_Addon/ART_LICENSE or add-ons/My_Addon/images/units/axeman.png.license.

It sounds like there is a desire to go to CC for mainline, but having split licensing while people are contacted or art is eventually replaced seems like the sane (practical) way to go about it.

@CelticMinstrel
Copy link
Member

CelticMinstrel commented May 17, 2016

I think ART_LICENSE is better, since the other way would imply having a license file for every image, though it's good to allow that for occasional specific images that have a different license from the main art license (or, if ART_LICENSE is missing, occasional specific images that are not GPL).

@pydsigner
Copy link
Contributor Author

pydsigner commented May 17, 2016

@CelticMinstrel ART_LICENSE would have information about which resources are under which license in most cases rather than just being a copy of the GPL or CC BY-SA.

@CelticMinstrel
Copy link
Member

That makes sense. I think that's better than placing the licence right next to each file, unless there are only a few files under a different license.

@pydsigner
Copy link
Contributor Author

@gfgtdf Specifically added example paths.

@pydsigner
Copy link
Contributor Author

Some other things to think about in the context of this PR (but beyond its scope):

  • Having a more lengthy, lawyer-approved text bomb in an ART_LICENSING file included with wesnoth that we can point to in this text
  • Having a comprehensive wiki page about licensing

@irydacea
Copy link
Member

irydacea commented Jun 9, 2016

@pydsigner Would you be able to draft that wiki page in the meantime?

Personally, I am completely in favor of this change, and I'm willing to merge it provided that no-one has any last minute objections -- in particular @ln-zookeeper, who has done add-ons server policying work in the past.

@ln-zookeeper
Copy link
Member

I don't have any particular objections, but that's just because I don't want to touch licensing issues and discussions with a ten-foot pole. As far as I recall, I've only done some light policing regarding issues like add-ons unnecessarily affecting other content, removal of garbage add-ons or pointing out that we don't want add-ons based on commercial IP on the server. Resolving licensing disputes between add-on authors would be something else entirely.

@GregoryLundberg
Copy link
Contributor

GregoryLundberg commented Jul 25, 2016

BfW uses a GPL license.

As such, it already allows BfW to distribute non-GPL elements, provided they are compatible. In fact, the project is already doing so by using the Boost library. GNU maintains a list of such licenses at https://www.gnu.org/licenses/license-list.en.html

It seems the suggested change simply should be re-worded to make it clear that all uploaded content must use one of those licenses. It does not appear to do so.

It should also be made clear that "CC" and "Creative Commons" license refers to the CC0 (public domain) license. The other CC licenses are not GNU compatible and should not be allowed for that reason.

Something like:

"I certify I have the rights to upload, that all contributions
 are licensed under a GNU-compatible license, as defined
 and listed at https://www.gnu.org/licenses/license-list.en.html."

should be enough.

@pydsigner
Copy link
Contributor Author

pydsigner commented Jul 25, 2016

@GregoryLundberg

The other CC licenses are not GNU compatible and should not be allowed for that reason.

That would only apply if we were going to use the CC license for code linked to Wesnoth, the image and audio assets used with Wesnoth are under no licensing constraints from the GPL, according to the GPL FAQ.

@pydsigner pydsigner changed the title Allow explicit use of any license for add-ons Allow explicit use of any CC license for UMC assets Oct 22, 2016
@pydsigner
Copy link
Contributor Author

I've finally found time to pick this back up again, and have here the working draft of an informative post for the forum as requested by @shikadilord in #wesnoth-dev back in July: https://gist.github.com/pydsigner/12dcea9426ba242f465881d9e9c2eb0c

@GregoryLundberg
Copy link
Contributor

It needs a TL/DR at the top.

The background and rationale are fine but clearly delineate them from the proposed policy
statement.

What about "more free" CC licenses such as CC-C0 (I know, not a license), CC-SA and CC-BY? I can see drawing the line at CC-BY-SA but a rationale for putting the line there might help.

@Vultraz Vultraz added this to the 1.13.7 milestone Feb 16, 2017
@Vultraz Vultraz modified the milestones: 1.13.8, 1.13.7 Mar 21, 2017
@CelticMinstrel CelticMinstrel added High Priority Issues that cause significant usability problems and must be addressed quickly. Add-ons Issues with the add-ons client and/or server. labels May 9, 2017
@CelticMinstrel
Copy link
Member

This seems like it needs bumping. I hope @Vultraz has finally decided what should be done about this.

@pydsigner pydsigner merged commit 54ccfcb into wesnoth:master May 13, 2017
@pydsigner
Copy link
Contributor Author

@Vultraz @CelticMinstrel work has been merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Add-ons Issues with the add-ons client and/or server. High Priority Issues that cause significant usability problems and must be addressed quickly.
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet