Open kit-sun opened 2 years ago
I would argue that steamworks falls under "system libraries", which can be exempt - it's a very common pattern in game dev to ship these and they are unmodified from the ones Valve provides. Steam being the major component that is being communicated with - on Steam Deck, it basically is the OS.
The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work.
There also is a practicality aspect to this, in that there isn't a way to download these from Valve without an account, afaik, yet they do give people the license to redistribute them freely. They aren't in common package managers as games will package them on Steam. If your concern is the integrity of these, you should either confirm that they are the same binaries shipped by valve or remove them.
My concern comes more from the fact that the binaries are included in the source tree of the project. If they're considered system libraries (in this case, needed for a major feature to function), it seems fine to just move them to their own repo to pull from, to remove any potential issues that might have.
when the GPL licenses source code and not binaries, only the source code specifically is licensed via the GPL and any interop or otherwise with non-GPL licensed code is irrelevant. If the author(s) want to stretch that to binaries, they can do so, but I can't think of anyone who would willingly GPL license the binaries instead of the source code - thus only the portions of the binary that are derived from the source code are GPL licensed.
the GNU GPL doco specifically calls this out as being fine, just that it can't be used in a 'totally free' environment, which is basically a lost cause anyway if you're running FFXIV. see: https://www.gnu.org/licenses/gpl-faq.html#FSWithNFLibs
I was reading through the source code and found a few potentially proprietary libraries. FFXIVQuickLauncher uses the GPLv3, which, from my interpretation, disallows using proprietary components.
I could not find anything easily on the license and source code of said libraries, so I am going to assume that they are indeed proprietary. It also probably isn't a good idea to include binaries inside of the source folder of the project, anyways.