- cross-posted to:
- opensource@programming.dev
- OpenSource
- cross-posted to:
- opensource@programming.dev
- OpenSource
I saw this some time ago and wasn’t really sure how to feel about it. On one hand it’s good to make corporations compensate maintainers, but I also don’t want to be forced to ask for a fee because my project uses another project that uses this.
I immediately knew this was going to be from Microsoft users, and yeah… of course, it is.
Binaries distributed under this EULA do not meet the free software definition or open source definition.
However, unlike most attempts to dilute the concept of open source, since the EULA is explicitly scoped to binaries and says it is meant to be applied to projects with source code that is released under an OSI-approved license, I think the source code of projects using this do still meet the open source definition (as long as the code is actually under such a license). Anyone/everyone should still be free to fork any project using this, and to distribute free binaries which are not under this EULA.
This EULA obviously cannot be applied to projects using a copyleft license, unless all contributors to it have dual-licensed their contributions to allow (at least) the entity that is distributing non-free binaries under this EULA to do so.
I think it is extremely short-sighted to tell non-paying “consumers” of an open source project that their bug reports are not welcome. People who pay for support obviously get to heavily influence which bugs get priority, but to tell non-paying users that they shouldn’t even report bugs is implicitly communicating that 2nd and 3rd party collaboration on fixing bugs is not expected or desired.
A lot of Microsoft-oriented developers still don’t understand the free software movement, and have been trying to twist it into something they can comprehend since it started four decades ago. This is the latest iteration of that; at least this time they aren’t suggesting that people license their source code under non-free licenses.
I thought cool something that compiles a list that lets me know what I am using so I can donate to what I use. Then I kept reading. So this expects everyone to pay $10 per project and if you don’t you can download the source sit down and shut up? Wow! Just wow
I’m shockingly okay with this and I didn’t think I would be.
I feel like a small investment by users for support and continuing development in the broader scope of things is significantly better than developers searching for VC capital and other ways to fund their projects. That being said I don’t believe it’s going to work. But I would be interested in seeing data on any pilot programs they run.
This is the text is suggested to be added
## Open Source Maintenance Fee This project requires an [Open Source Maintenance Fee](https://opensourcemaintenancefee.org/). While the source code is freely available under the terms of the LICENSE, all other aspects of the project--including opening or commenting on issues, participating in discussions and downloading releases--require [adherence to the Maintenance Fee](./OSMFEULA.txt). In short, if you use this project to generate revenue, the [Maintenance Fee is required](./OSMFEULA.txt). To pay the Maintenance Fee, [become a Sponsor](https://github.com/sponsors/<YOURORGNAME>).
The EULA template can be found here. This is the part I find important
- Conflicts with OSI License
To the extent any term of this Agreement conflicts with User’s rights under the OSI License regarding the Software, the OSI License shall govern. This Agreement applies only to the Binary Release and does not limit User’s ability to access, modify, or distribute the Software’s source code or self-compiled binaries. User may independently compile binaries from the Software’s source code without this Agreement, subject to OSI License terms. User may redistribute the Binary Release received under this Agreement, provided such redistribution complies with the OSI License (e.g., including copyright and permission notices). This Agreement imposes no additional restrictions on such rights.
I think it’s a good attempt, but I’m not sure how it can be enforced. It would also need to be applicable to different jurisdictions. The project maintainer would have to know that somebody requesting a feature, commenting or participating in discussions is doing so in the name of the company 🤔
Thank you for sharing this. It’s food for thought.
This is essentially what Mozilla is doing but providing a legal framework for all open source projects.
As an open source developer, my initial reaction is that this isn’t good. You’re just shifting the problem. Your code remains open source so if you have a python or JavaScript library that doesn’t require compiling, you can’t use this.
Not only that, but FOSS requires you to provide build instructions for your binaries. Someone can clone your repository and run it through CI/CD and have a binary.
I’m willing to be proven wrong here.
I’ve seen only one method work well: strong copyleft FOSS licenses like AGPL that essentially make it impossible for a company like Amazon from profiting off your code without a separate agreement.
You could add a non-commercial clause to your open source license. I can’t find the one that I used to use back in the day but essentially the goal is to augment whatever license you use by attaching a preamble that dictates how the software can be used.
Attaching that clause does push the software out of FOSS and into source available since you are restricting who can use the software, which is why I stopped using it.
Edit: found the clause I used to use back in the day. I don’t personally recommend it over more copy left licenses.
Dual licensure is the obvious solution. Have a strong copyleft license as default (Sorry MIT!) and then have a non-transferrable commercial license for proprietary businesses.
It appears to be an attempt to monetize open source software, something which should in my opinion be applauded, given the trillions of dollars made off the backs of software developers who contributed to OSS without ever getting compensation, something that’s required to have a roof over your head and food to eat.
Another approach being attempted in this space is by Bruce Perens (of Open Source fame).
He’s calling his efforts Post Open: https://postopen.org/
Disclaimer: I contributed to the community conduct document.
Thank you for sharing Post Open. I like that idea. We need a solution to companies just leeching off of opensource projects and not contributing back. It looks like a good initiative.
I’m not a lawyer, but this doesn’t seem to be compatible with (A)GPL licenses.
I would say this is going to harm small users more than big corporations. As a small user I might be unable to build from sources myself, so I would have to pay. But as a big corporation building from source would be something I can certainly do trivially, then I wouldn’t be subject to the restrictions imposed by this license.
Imho, if someone wants to force their users to pay, then they are not doing open source. Please let’s not try to pretend we are by adopting a OSI-approved license and slapping extra restrictions on top of it.
Just go AGPL for datacenter-oriented softwares, or GPL for drivers and embeddable code, or a proprietary license such as FUTO’s for end-user software.
Fuck this project, but… their source code can be free and open source even if they distribute binaries which aren’t. (Which they can do if they own the copyright, and/or if it is under a permissive non-copyleft FOSS license.)
And if the source code is actually FOSS, and many people actually want to use it, someone else will distribute FOSS binaries without this stupid EULA. So, this BS is still much better than a non-FOSS license like FUTO’s.
Fair enough, but then it’s the same thing as open-sourcing the code but not providing support nor binaries.
I mean, personally I also prefer it to FUTO’s proprietary license, that’s for sure. But I’m one of the few privileged users who can build from source.
If this license doesn’t impose any extra restrictions on the code (and as you say, anyone can fork and provide prebuilt binaries), then this would just increase the risk of spreading malware, with no real benefits for the original developers.
In my opinion, if you want to monetize your software without going proprietary, all you have to do is provide the users a convenient way to get it. There are some paid FOSS apps on Google Play, as well as some paid FOSS games on Steam. You don’t want to distribute binaries? Fine, okay, that’s alright and I respect your choice. You don’t want to provide support to non-paying users? Fine, that’s very reasonable in my opinion. But…
…do you want to impose extra restrictions on your code? Fine to me, but then you are no longer doing open source, don’t try to pretend you are. And if you are not imposing any restrictions on the code then you are imho just going to hurt small users. We shouldn’t fight small users imho, we should fight the big corporations exploiting FOSS code for their proprietary businesses. But if there are no extra restrictions on the code, then big corporations wouldn’t care.
That’s my opinion.