I feel one of the most important things for a thriving open source project is easy onboarding.
Statement of friendliness and similar are not that useful if I don’t know where to start to contribute to your project. A clean, up to date CONTRIBUTING
file goes a long way, architecture documentation is extremely good, optimal is having an experience developer checking your patches and offering help.
Repositories that I contribute to the most helped me in the first phases of the journey, it was awesome, I gave back.
I am sorry to say some of what you write is not correct.
Red Hat — I know they had their slice of controversies lately, but still — is a ≃33bn USD company, how is that not making money? They sell solutions based on OSS (different from selling software!), which is one viable way of making money.
Other ways are: selling support, selling licence exceptions (when you are the sole copyright holder of the codebase, MySQL did that), sponsored development for new features, SaaS (bad!), customization for big enterprises/public actors, open-sourcing software but keeping assets proprietary (some games do that), and many more.