Sharing code is good and open source projects is also good. But neither of them puts food on the table.
When sharing code and software to a community like OpenNtf.org you often do so because you have found some good stuff before and feel that you also should give something back or you want to show your expertise. And there is probably alot of other reasons but those were just two examples.
But did you know that there is several ways to get something back.
What about offer your documentation as a printed copy. The people that feel your software is great can buy a printed copy and you will earn some money. There is several services one of them is www.lulu.com
Another way is to add flattr on your site and the people can show their appreciation. For some this has been a great way.
If you have a great idea for a open source project why not crowd fund it. This is a great way, get people involved and sponsor the building of a some great software. There are several sites for this.
You could offer professional support for your open source project for adaptation, installation or education.
Perhaps offer to setup a XWork Server with your open source software at a fixed price.
There is probably more ways, do you know a way please drop a comment so everybody can get to know that way.