That being said, in practice, most NonProfits rely on commercial software because it mitigates their risk. What's needed is some way to create a StableBase of developers that will sustainably develop (i.e. not exercise their RightToLeave mid-way through the development cycle) software for the NonProfit sector, and that means given the lack of capital within this sector, an investment must be made to centralize what scarce capital there is.
Peizer, J. (2003). Realizing the promise of open source in the non-profit sector. Open Society Initiative. Available from http://www.soros.org/initiatives/information/articles_publications/articles/realizing_20030903