Maybe it would be deliberately vague. Like it's just a BSD style license except it has an extra clause that says "Commercial use by for-profit entities is forbidden except by members of the cooperative as defined in the bylaws." Then you can specify that contributors are members automatically, other co-ops can become a member for free at the discretion of the co-op, or anyone can buy in. Or maybe it's best to let other cooperative software use it without becoming a member first.
Although I don't know what it means for a contributor to be able to use it commercially. Do they get to use it in any software that's not also cooperatively governed? Only in cooperative software made in their individual capacity? Do contributors to their software who get to exploit that software for commercial gain also by extension get to use the original upstream software? Does this make that clause effectively useless?
A few more thoughts this mroning:
- It would not meet the OSIs definition of Open Source (but it's the same for non-commercial use and who put OSI in charge of words anyways?)
- Unlike using AGPL and selling exceptions this doesn't make it unusable by people who don't want to re-license their project
- It has an issue where if someone else uses your software non-commercially then someone uses their software commercially they miss that yours is buried in the dependency chain
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!