Could anyone who wants to comment help me brainstorm some ideas to monetize a completely unrestricted/open-source project? I'm thinking like making everything free to get and use, but providing incentive to WANT to give the project money. Things like transparency and good rapport with users is a must, I think. Perhaps a Sponsorware-like approach where new features are only available to sponsors for a period of time, and then freely released to the public? Anyone else have some ideas?
Pick one and only one. It's like asking "how do I make money with acts of kindness".
As you noted most of the common suggestions are either slimy, unsustainable, or simply don't work.
So I think you need to be clear on your objectives. Is it making OSS? It it making money? You can focus on one and then get maybe some of the other, but getting both appears (at least historically) to be both hard and rare.
For example selling software as "source supplied" is not OSS, but will likely improve your income stream. Or you can make pure OSS stuff, and get minor amounts of money via donations, support, whatever.
Both approaches are valid - you just need to decide which road you want to take these projects down. (And obviously you can split your projects between different approaches.)
I really don't understand the mindset that it's slimy. I get the "rug-pull" thing, but just because you made a project with features a, b, and c that are free, why does that make it slimy to add paid features d, e, and f on top? People are still getting a, b, and c for free, so what's the problem? There's no rug-pull there.
Would it be better if a, b, and c never existed? It just seems like such a clear win-win to me.
I'd also just say that selling a product doesn't have to be impersonal, and in fact you will get much better results if you do it in a more authentic and human way. It's not actually so different to a patronage model when you are small. Part of the reason many people who are early adopters like buying from small startups or solopreneurs is that it's much more relationship-based and the founder will listen to their needs and concerns.
If you want money, ask for it at least.
Requiring it is better because it makes your work sustainable.
Require enough of it that you are not trying to figure out how to avoid work.
You are not obligated to save other people money.
And if you feel like giving back, take some of the money you get and use it for food for people who don't have enough to eat.
Good luck.
If you want to get paid, asking for payment is the most honest thing you can do.
If you expect to be paid, requiring payment is the most honest thing you can do. It also means you don’t deal with people who would never pay you.
Hoping is not a plan.
One method that I really like is paywalling software store versions of applications. You can still manually install from a GitHub page or something similar for free, but if you want to have auto updates and such via your software store, you can pay a small fee for that privilege. TaskbarX has used this method in the past, although I don't know if they still are using it.
I had to buy it again to get the latest version. The main app I’m thinking of, FileBot, I was waiting on a native Apple Silicon version. The stand alone download had it, but the App Store did not. If I remember correctly, this was due to a dependency not being updated or universal, so they have 2 separate binaries on their site, and the App Store allows for the one universal binary. Eventually it seemed like the update would never come, so I bought it again. When I first bought it, there was no non-App Store option, so I specifically bought it to support them… I could have gotten it from their site for free if I remember correctly, and feel like I got the short end of the stick.
If you want them to want to pay for the experience you need to provide an out of this world experience whenever they engage with your project.