Consider this scenario: You have created an open source library or programme and now want to sell it to customers. You would love to work on the product full-time. And it's important to you that the product remains open source. What are your options?
- Offer the product for free, but sell support. (No developer finds this option appealing.)
- Offer the product for free, but charge for documentation. (This is inherently user-hostile and encourages purposely complicated products to goad users to pay for the documentation.)
- Offer the product for free, but offer a paid hosting option if it is a server-based web app. (Users who do not want to pay for hosting will self-install the product.)
- Offer the product for free, but charge for a closed-source add-on with more features ('open core').
Notice a missing option in the list above? To sell you product with source code (with a open source licence attached) is simply not possible. And yet, this missing option probably appeals the most to creators.
The examples of commercial success of open source products are few and far between. You can make a list of a few dozen successful examples e.g. GitLab ('open core'), Red Hat (enterprise support) - but these examples are the exceptions, not the norm.
Sponsorship, donations or patreon campaigns are not steady or sustainable long-term options.
The alternative? Well, one option is to offer a source-only option for your product. You charge for your product and offer the source code at the same time. The customer is free to amend the code to suit their needs. This isn't open source though - the customer cannot re-distribute the code. This is the 'source-only' model.
Recently, some companies have created a hybrid model: free open-source code for non-commercial use and a paid license for commercial use. There is debate about whether this meets the spirit of open source development or not. Everyone has a opinion. You can make you up your own mind.
Finally, and quite ironically, there is a recent development in software (related to open source code) that has been wildy successful: SaaS (Software as a Service).
Why ironic? Because open source software has been critical to the success of the SaaS model. And yet, the source code for these services (built on open source) is not visible.
It's a model that takes away the hassle of installation and maintainence of software, but gives users less control of their data than the desktop software model that preceded it. Where you essentially "rent" an app until you stop payment.
You could argue SaaS is the true success of the 'open source business model'. Just not in the way open source advocates ever expected it to be.