
Unity’s Open-Source Double Standard: the ban of VLC by cempaka
For the readers unaware, we started distributing binaries on the Unity Store for the open-source VLC for Unity integration back in December 2019.
The integration essentially was a bridge between the Unity game engine and the VLC multimedia engine, allowing to build your own media-player based on VLC technology in Unity-based games. Both Unity, through Mono, and LibVLC are highly portable so this is a compelling argument for this cross-platform integration.
Since the start, we have had many users downloading the assets from the Unity Store for their Unity apps and games when requiring demanding multimedia solutions. We had 3 assets targeting specific platforms:
- Windows,
- UWP,
- Android.
This all changed at the end of the summer 2023 when Unity emailed us the following:
And just like this, our publisher account was instantly banned.
After months of slow back-and-forth over email trying to find a compromise, including offering to exclude LGPL code from the assets, Unity basically told us we were not welcome back to their Store, ever. Even if we were to remove all LGPL code from the Unity package.
Where it gets fun is that there are currently hundreds if not thousands of Unity assets that include LGPL dependencies (such as FFmpeg) in the Store right now. Enforce
18 Comments
mouse_
Big companies hate GPL
No surprise here
rawling
[2024]?
tokai
No surprise here. Unity is such a horrible company.
adzm
Interesting 5.10.4 does not seem to exist in the provider agreement? https://unity.com/legal/provider
At one point this used to contain the clause:
> 5.10.4 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.
However this was removed sometime between December 3rd and December 12th according to the Wayback Machine.
jdlyga
Clearly, the legal team got bad information and made it part of their agreement. Like the article says, not only do tons of Unity assets use LGPL dependencies, but Unity uses LGPL assets themselves. Even shipped games created using Unity use LGPL assets. The intent was probably only to screen out GPL dependencies. For those who don't know, there's a huge difference between the GPL and LGPL. The LGPL is specifically designed to allow proprietary applications to link to open-source libraries without requiring the proprietary application’s source code to be released, provided certain conditions are met. This is particularly true when the LGPL-licensed library is used in a way that allows users to modify or replace it independently of the proprietary application.
In contrast, the GNU General Public License (GPL) has stricter requirements. If your software incorporates GPL-licensed code, the entire derivative work must also be licensed under the GPL, which includes releasing the source code.
ttoinou
I’ve read a bit this post and the gitlab repo link but I still have no idea if it’s about having a VLC desktop player playing Unity assets / games, or a plugin for Unity to have a little VLC player inside the games.. or something else ?
m3kw9
They removed someone’s entire app and they say “sorry for the inconvenience”
zigzag312
I find popularity of LGPL licenses a bit weird.
Allows:
– Commercial use of the software
– Commercial use of the source code for projects that run on the company's servers or internally
– Commercial use of the library is allowed if dynamically linked
Blocks:
– Commercial use of the source code for local apps that run on user's device
– Commercial use of the library if statically linked for local apps that run on user's device
I would expect a licence like MPL to be more popular than LGPL.
firtoz
Unity's lawyers continue killing the company, not a big surprise there.
I used to work there, proud of their technical accomplishments, ashamed of pretty much everything else.
jasonlotito
It is amazing to me the commentary confusing GPL and LGPL on this site. The misinformation being spread about the LGPL, or just assuming the LGPL is the same as the GPL is mind boggling. I can't be to surprised, I guess. GPL happens after the L, and of course, we know GPL "doesn't allow commercial applications" right? So that's all we need to discuss.
Seriously, it's just four characters, and doesn't take long to look up without just assuming it's the same as the GPL.
The argument "the lawyers saw GPL in LGPL and just made an assumption" is all the more plausible when you have people in the field who make the same mistake.
jillyboel
Unity is actually permanently banning accounts for uploading a package that they decree has now been deprecated? What are they smoking?
mschuster91
> After months of slow back-and-forth over email trying to find a compromise, including offering to exclude LGPL code from the assets, Unity basically told us we were not welcome back to their Store, ever. Even if we were to remove all LGPL code from the Unity package.
It's high time the EU clamps down on Unity as well and classifies them as a gatekeeper. This behavior is absolutely unhinged.
tobyhinloopen
Unity again showing their hostility. Perma-banning developers for this reason is crazy.
Xplan
Not trying to play devils advocate, but it goes both ways. There are proprietary libraries in a lot of solutions too. The LGPL is under many distributed closed solutions that are sold for profit, so I think its WEEE bit of the kettle calling .. ya you get it. I don't want to turf war, but its more systemic than you probably think. In this case, its just the pry-bar used that the risk to blow up the entire community of developed software with open libraries.
Tread lightly maybe.
WesolyKubeczek
I remember that VLC could not get into iOS App Store for the same reason, and the story about it was spun by everyone and their dog. Ffmpeg is there because it doesn’t have this kind of PR, and that’s it.
Dwedit
I don't know if VLC itself is even legal in countries that enforce software patents.
falcor84
Previous discussion (Jan 2024): https://news.ycombinator.com/item?id=38964972
w4rh4wk5
Please correct me if I am wrong here.
From my understanding, using LGPL v2 code in console releases is fine since v2 does not have a tivoization clause (i.e. even if the end-user cannot re-link the program because the platform is locked down, that's still ok).
However, websockify.js (and perhaps other dependencies) are LGPL v3, which means they cannot be included on a platform like the Nintendo Switch as the end-user cannot replace that component.
Is Unity excluding such components on locked down platforms, or are they simply in violation of LGPL v3?