EDIT: The Fluxer dev responded over on Reddit that they will remove the CLA before opening the repository to contributions due to how successful the funding campaign has been. This is a huge win for the community being able to trust that Fluxer will be community-owned forever. My warning now thankfully no longer applies! Huzzah!
Original post:
I was quite hopeful for Fluxer due to the developer committing to making it Federated and eventually offering encryption. But most importantly, it uses the aGPLv3 license, which ensures that corporations can't take it from us in the future.
However, it came to my attention that Fluxer requires coders to sign a Contributor CLA agreement to contribute any code to the project.
Finally, we can offer commercial licences to companies that want to run Fluxer internally without being bound by the AGPLv3 copyleft terms. This is enabled via a contributor-friendly CLA, but it doesn't create a separate "enterprise edition". It's still the same Fluxer software everyone else uses.
The CLA itself in the docs:
CLA (required)
We require a Contributor License Agreement (CLA) for this repository.
Why:
- The project is available under AGPLv3.
- We also offer a commercial license for organizations that cannot (or do not want to) comply with AGPL obligations.
- To keep both options possible, we need permission to include contributions in both distributions.
What it means for you:
- You keep ownership of your contribution.
- You can keep using your contribution in your own work.
- You grant us the rights needed to distribute your contribution as part of the project, including under a commercial license.
- We may refactor or remove code over time and are not required to include every contribution. However, any distributed version that includes your contribution remains properly licensed under the project license(s) that applied when you contributed.
How to sign:
- On your first PR, a bot will comment with a CLA link.
- Click it, sign with your GitHub account, and you are done.
The critical part here is: "You grant us the rights needed to distribute your contribution as part of the project, including under a commercial license."
That's a little ambiguous, but if I'm understanding it correctly, granting them the ability to package your code in a commercial license means legally, the company itself could just cease its own contributions to the GPL version of Fluxer in the future (after it's already become established and successfully replaced Discord), and instead simply focus on a commercial, proprietary version of Fluxer which they can then completely control to sell and exploit as they wish.
Per the Drew Devault article on CLAs:
This is a strategy employed by commercial companies with one purpose only: to place a rug under the project, so that they can pull at the first sign of a bad quarter. This strategy exists to subvert the open source social contract. These companies wish to enjoy the market appeal of open source and the free labor of their community to improve their product, but do not want to secure these contributors any rights over their work.
Point is; all CLAs are bad
IMHO, unless the Contributor CLA is entirely removed, I'd strongly suggest passing on Fluxer for something that doesn't have a CLA, and thus be guaranteed to be safely community-owned forever, such as Movim.
You're welcome!
Yeah. Let me know if you create one, I can configure my bot @steam_lover@sh.itjust.works to fetch any rss feed they might have and post on the movim community.
Very surprising and welcome update: The Fluxer dev responded to a similar thread on reddit that they will remove the CLA before opening the repo to contributions due to how successful the funding campaign has been. Fluxer is now back on the table! :)
Though I may still open a Movim community as well, just in case.
Wow, that's amazing. Could you make a new post when he removes the CLA? I can post it too, but if you catch it before me, feel free.
EDIT: nvm, just saw that you updated the title.
Sure thing ๐
I believe it's been removed? This is the refactor contributor docs, changed 6hrs ago: https://github.com/fluxerapp/fluxer/blob/refactor/CONTRIBUTING.md
That's great news, the dev seemed like a good guy from what I've seen so far so I'm not surprised. Really hope it keeps taking off.