luckytyphlosion

stupid licensing thoughts

Feb 7th, 2021
93
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. agpl licensing problems:
  2. 1. a tiny percentage of the dolphin files are still licensed under gplv2. these are
  3. Source/Core/Core/LUA/Lua.cpp:// Licensed under GPLv2
  4. Source/Core/Core/LUA/Lua.h:// Licensed under GPLv2
  5. Source/Core/DolphinWX/LaunchLuaScript.cpp:// Licensed under GPLv2
  6. Source/Core/DolphinWX/LaunchLuaScript.h:// Licensed under GPLv2
  7. Source/Core/DolphinWX/TAStudioFrame.cpp:// Licensed under GPLv2
  8. Source/Core/DolphinWX/TAStudioFrame.h:// Licensed under GPLv2
  9.  
  10. of course, this depends as to whether the scripts and dolphin become a "combined work" because the scripts interact with dolphin. the FSF describes resolving this question as a legal one, which would be resolved by courts (which I certainly can't do). the examples the FSF gives (same address space, linking) do not apply here. the FSF goes on to say that if the interaction is done via command line mechanisms, then the programs are probably separate. however, they follow up by suggesting that they could be considered a single program if the communications are "intimate enough", which they give an example as "exchanging complex data structures".
  11.  
  12. what I (plan to) do is run dolphin, pass some arguments within a text file (so I don't have to add new CL args) which the lua script reads, which indicate the character/vehicle/etc. of the ghost. then, when the ghost is complete, the lua script will create a text file indicating for the command line to kill dolphin.
  13.  
  14. given the FSF description, it ~seems~ that the communication is simple enough for them to be considered two programs. however, the entire purpose of the program is reliant on dolphin itself, so without dolphin, the program becomes essentially useless. thus, this "useless without dolphin" consequence could be an argument which considers them one program.
  15.  
  16. 2. do the gecko codes used count as a combined work? any normal person doesn't really think about licensing their created gecko codes, so they would definitely not be under a GPL compatible license. although, this is more of a GPL question in general than specific to AGPL.
  17.  
  18. 3. first, a brief history on why AGPL was considered in the first place. the original idea was a system where people could record their ghosts as effortlessly as possible. this soon led to the idea of a site which would take a chadsoft ghost link as input, and output a recorded ghost (or upload to youtube). this would be where the AGPL kicks in. however, there is some implicit sketchiness to this. firstly, this would not require the user to rip their own disc. essentially, this would make this some sort of limited service where you could "interact" with mkw without actually owning it. so already, that is dubious in itself. the second uncertainty, is whether the requirements of the AGPL would apply to the mario kart wii iso, which I obviously could not fulfill.
  19. for the 2nd uncertainty, one possible solution may just be to add an exception that excludes any iso running in dolphin from becoming a combined work, however, the first uncertainty cannot really be resolved. although, people already (sort of) do this. e.g., someone without mkw could ask another person to record a ghost for them, the concept of streaming mkw or uploading mkw videos to people who don't own them. the question really just becomes whether automating the process changes the legal nature of the act (something something supplying a service?).
  20. also, thinking about it, I probably wouldn't run such a site anyway (bandwidth would be insane).
  21.  
  22. some additional note:
  23. the current use for this ghost recorder I have decided on is to automatically upload wr ghosts to youtube. this would not trigger the AGPL anyway, because the user in this case would be myself (me running the code) and youtube (since I am uploading to youtube), so there would not be any obligation to release the source code.
  24.  
  25. paths forward:
  26. - keep it as agpl (with dolphin iso exception) despite the ambiguity as to whether distributing such a program would be legal
  27. - (stupid decision) make my own license (gross) which would require source release if the code connects to youtube's api (bad, I'm not a lawyer, may not be open source, plus users could just upload the resulting video themselves (although, such a license would prevent the automated part, which would make it much harder to use))
  28. - just use gpl and have good faith in people to release modified versions (probably go with this)
  29.  
RAW Paste Data