OnlyOffice restricts the number of actively open documents (artificially) in its source-derived “Community” form to 20, though to their credit, that page links to their GitHub organization and includes a very convenient Docker script to get you going:

Yes, they suggest Windows. Their installer is actually quite nice, which is impressive for free software.

It’s not not-libre, though

Adding these sorts of restrictions doesn’t per se make it non-free software — the copyright owner is allowed to do whatever they want with their source, the user could in theory patch that out as they see fit or fork, and these sorts of practices are not unethical in the eyes of the Free Software Foundation; to quote What Is Free Software, Stallman writes:

Thus, “free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech,” not as in “free beer”. We sometimes call it “libre software,” borrowing the French or Spanish word for “free” as in freedom, to show we do not mean the software is gratis.

Again, in the context of commercial use, Stallman has similar thoughts, through GPL Exceptions:

Selling exceptions means that the copyright holder of the code releases it to the public under a free software license, then lets customers pay for permission to use the same code under different terms, for instance allowing its inclusion in proprietary applications.

The three projects here: BirdFont, Caddy, and OnlyOffice, are well within their rights, both under their respective licenses and under the philosophy of the GNU project (in the case of BirdFont and OnlyOffice) to sell usage of the software: the source is available, freely distributable, and if someone was so inclined to, they may modify the software to their liking. That’s not what my complaint is about. It’s the deception and underhanded limitations that I take offense with. It’s the soft limitations, the extra-license limitations and social pressure against flexing your rights as a user that I take offense at. I believe that there should be an implication that someone should be able to run libre licensed, publicly open source software without fee should they put the work into making it work, as well as share those executables, packages, etc. under the same license.

Caddy discourages the distributing of builds of Caddy itself by locking the name behind a trademark: the README includes at the very bottom the text

The name “Caddy” is trademarked: The name of the software is “Caddy”, not “Caddy Server” or “CaddyServer”. Please call it “Caddy” or, if you wish to clarify, “the Caddy web server”. See brand guidelines. Caddy is a registered trademark of Light Code Labs, LLC.

The sources to Caddy are libre. The name is not, a practice allowed under the Apache license, which is the same reason that prompted the Debian project to rebrand Firefox as Iceweasel and the GNU project to hard fork Firefox and other Mozilla projects as icecat, GNUZilla, etc. This, in my opinion, makes software like Caddy slime sourced: you’re free to use it and compile it is there, but there’s an implied amount of work in order to distribute that which you’ve built from that source.

These are just modern examples. In the past, we had a rather famous example of XChat. XChat is an IRC client that was released under the terms of the GPL, but which required payment for use on Windows. Free-as-in-beer variants such as XChat-wdk (now HexChat) were regularly built and distributed, often refuting the claims from the XChat Developer that it was “simply too hard” to do the work for free — often with the maintainers of the free-beer variations offering to help, from what I understand.

So what?

While I agree that there needs to be a commercial space for free software, there are now connotations that cannot be avoided. The idea behind Libre Software is that because I have the source, and because the source is shared with me under a free license, I am free to use it as I wish (Stallman’s freedom zero clarifies this, and the OSI definition explicitly denote this). There exists a gap that has been filled with what I am beginning to call slime sourcing.

Again, let me be clear: I have no problem with Matt, OnlyOffice, or the maintainer of BirdFont wanting/needing to make their monthly rents and dues off commercial support of the software, even have features in a commercial variant that are only available in the paid variation (This is what the business calls Value Added features) so long as those added features don’t boil down to purely artificial limits such as user count. I don’t even mind them being a little stingy — Bills have to be paid — I just find it disingenuous to hide under the guise that only developers would run things from source, or place barriers in front of users simply because they’re building from source (such as is the case with BirdFont.)

De-sliming: It doesn’t have to be this way

These projects, as we’ve seen, are technically libre. They are licensed under libre licenses and are source-provided. In the case of Caddy, there have been restrictions placed outside the source and its license to keep you from using something commercially, and in the other two, the source itself, outside of the license, keeps you from using the software as you wish.

Projects like Caddy, OnlyOffice, and Birdfont should consider looking at the successes of others: ntop offers commercial support for users who need it. ActiveState has built their lifeblood off supporting Libre languages, including Python, Perl, and Go. Digium maintains Asterisk, the most popular bake-at-home VoIP solution. There are even other web servers that have picked up the same model! Nginx is libre, but the developer offers commercial support and training for a fee. Wordpress is the most deployed piece of Libre web software, as is one of its plugins, WooCommerce. Both rank in the #3 and #4 spots of BuiltWith’s ranking and provide a steady stream of income for the company that owns them, Automattic.

To put it another way: Don’t license your software as Libre and then weasel-word your way into the commons clause or worse, go full commons clause. Doing so is slime sourcing your software, and in the end, it limits your customer base and hurts the overall community.

If Asterisk required a commercial license above a certain number of active SIP sessions, nobody would use it. If Wordpress attempted what Caddy has, it wouldn’t surpass Ghost by a gigantic margin. It’s worth noting that Ghost is licensed under a permissive license, and makes no restrictions on using it from source, only noting that there is maintenance and upkeep that must be done to keep things running smooth. Ghost makes money from their support and hands-off solution.

If you’ve already slime sourced, reach out to your community and begin the process of de-sliming. Wear “We’re libre” as a badge of pride and hold true: show that the source is available, tell people what they get for ponying up money for your software, help people make an informed choice between running it themselves on their own, having a guiding hand, or letting you do all the hard work. Uphold the spirit of Freedom 0 and the OSI definition’s point 6 and don’t discriminate based on endeavor, be it business or personal, through purely software limitations in the libre source. Seek to make your software good enough that people want to pay for it and contribute back. It might make sense to offer a dual-licensed version for commercial entities or add an exception that allows the libre variant to load non-libre libraries that you produce and support commercially. I believe that doing so will extend the audience of your software beyond what it is today, as has been seen with products which were built in the open, such as Wordpress, Nginx, or even software such as QGIS, which suggests many different sources of commercial support.

There is money to be made in free software. The value comes in support and features that make sense at a larger, commercial scale. Truly successful free software gets into the hands of everyone — this is the story of Apache, Wordpress, and Nginx — and when the time comes that users need help, you’ll be the the most qualified to deliver the things that businesses need.