Update Complying with Licenses page
- Clarify that it is not legal advice.
- Remove outdated third-party attributions, and point them to COPYRIGHT.txt instead.
Q: I am working on an addon to simplify the attribution process. Would it be okay to add a note of it to this documentation?
I'd like @akien-mga to give this a glance.
The legal advice note is okay I think, pointing to COPYRIGHT.txt is also a good idea (although not sure how good that works with third-party licensing and how it interacts with our "its fine if you just link to that page" thing).
No idea about the addon, but IMO pointing to a third-party addon on our license page may not be the best look? Unsure. Open for input. :)
I could also add a licensing demo to https://github.com/godotengine/godot-demo-projects and link to that instead, that would be more official.
Also, I think in addition to looking at COPYRIGHT.txt we can recommend they use the Engine copyright functions.
Thinking more, we may just want to link to https://godotengine.org/license and keep that up to date Having all this in multiple places seems a little cumbersome (although that page links back to this page in the docs)
IMO having this information in a single, central place would be good
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
I don't think linking to a website, which requires internet access and might go down, satisfies the Expat requirement. It would also need to satisfy BSD-3, CC-BY, etc., which is very unlikely to be true for all of them.
Ah, I didnt mean to replace COPYRIGHT.txt/the various licenses with the above page, but IMO we don't need both https://godotengine.org/license and the docs page. Those two can maybe be unified.
Updated and added some sample code on how to generate a licenses text label
I can't guarantee formatting checks will pass, so I'll need the workflows to be approved :slightly_smiling_face:
There are some good updates in this page, but it also goes in the general direction of making the requirements very extreme, to a point where personally I'd skip using Godot and go for an engine with EULA just so that I don't have to deal with such requirements.
If the page starts by saying that I can't ship a game without consulting with an attorney, as a small indie dev, I would look for another engine that just asks me to keep a "Made with Unity" splash screen. (And I'm not saying that license compliance is easier with proprietary software - it's just that they don't care and nobody respects the license terms of e.g. FreeType which is included in Unity too. It's mentioned in their EULA, but not in any Unity game.)
Likewise, adding code examples on how to dump a ton of license text in people's credits is IMO not the right approach. It looks terrible, and that's not what most licenses require. Personally, I'm perfectly fine with folks linking to https://godotengine.org/license and letting that page do the attribution properly.
Eventually, I also intend to add a way to embed the editor's About dialog in the game, in a way that can be shown easily with e.g. a hotkey (for example Alt+L, or whatever wouldn't conflict with typical OS and in-game hotkeys). Then complying with licenses would be as simple as:
Made with Godot Engine
https://godotengine.org
(Press Alt+L for license details.)
In short, while I'm all for educating people on how to properly honor the licenses of the open source software they're using, this shouldn't require an attorney and a BA in License Law to comply with.
Eventually, I also intend to add a way to embed the editor's About dialog in the game, in a way that can be shown easily with e.g. a hotkey (for example Alt+L, or whatever wouldn't conflict with typical OS and in-game hotkeys). Then complying with licenses would be as simple as:
I started working on this a while ago, but didn't have time to complete it: https://github.com/Calinou/godot/tree/add-license-notices-gui
There's also https://github.com/godotengine/godot/pull/51028 which is useful to automatically achieve license compliance in headless/server binaries.
There is also https://github.com/nathanfranke/nicense, written in gdscript so not suitable for the engine, but nevertheless Unlicense so totally free to steal
I'm going to close this for now due to the discussion outlined above. It may still be worthwhile to improve this page, but we should discuss what/how first. Thanks for taking the time with this PR :)