Everyone can agree on VLC being the best video player, right? Game developers can agree on it too, since it is a great utility for playing multimedia in games, and/or have a video player included. However, disaster struck; Unity has now banned VLC from the Unity Store, seemingly due to it being under the LGPL license which is a “Violation of section 5.10.4 of the Provider agreement.” This is a contridiction however. According to Martin Finkel in the linked article, “Unity itself, both the Editor and the runtime (which means your shipped game) is already using LGPL dependencies! Unity is built on libraries such as Lame, libiconv, libwebsockets and websockify.js (at least).” Unity is swiftly coming to it’s demise.
Edit: link to Videolan Blog Post: https://mfkl.github.io/2024/01/10/unity-double-oss-standards.html
No it won’t. This is 5.10.4 of the Unity Provider agreement, it’s total bullshit.
Provider represents and warrants that its Assets shall not contain (a) any software licensed under the GNU General Public License or GNU Library or Lesser General Public License, or any other license with terms that include a requirement to extend such license to any modification or combined work and provide for the distribution of the combined or modified product’s source code upon demand so that Customer content becomes subject to the terms of such license; or (b) any software that is a modification or derivative of any software licensed under the GNU General Public License or Library or Lesser Public License, or any other license with terms similar thereto so that Customer content become subject to the terms of such license.
Why is it bullshit? AFAIK, Unity wouldn’t be able to comply with LGPL without supplying their own source code, so then this would be the only logical outcome.
Unity let me go earlier this week, so I’m really not in the mood to defend them, but this is correct. I’m on the Unity hate train as much as the next guy and i feel this is pretty cut and dry.
No, it’s not correct. Unity’s management might think that’s how the LGPL works, but they’re wrong.
You are only required to give source code for changes to that part for LGPL code. So only the library requires that.
Other game engines supply source code. If Unity wants any hope of redemption they should let us inspect wtf it actually does on our computers (edit: and let us make it work for our needs).
You CAN access the source code, but it’s for corporate/enterprise partners. afaik
Unity uses the LGPL for parts of their own products. The GPL in most cases only requires that derivative work must also be shipped with the same license. The source code from providers doesn’t have to be distributed by unity, it has to be distributed by the provider. In this case that would be videoLAN, which has all their source code on GitHub. You can read the text of the LGPL here, and this is VideoLAN’s post about the situation.
The GPL in most cases only requires that derivative work must also be shipped with the same license. The source code from providers doesn’t have to be distributed by unity, it has to be distributed by the provider.
This is incorrect. The distributor of derivative works in binary form is responsible for providing the source code. They can refer to a server operated by a third party, but if that third party stops providing the source code the distributor remains obligated to ensure that it is still available. The only exception is for binaries which were originally received with a written offer of source code, where the offer can be passed on as-is, but that only applies for “occasional and non-commercial” distribution which wouldn’t work here.