Not charging for everything differs from never charging for anything. The latter is impossible unless you are independently wealthy; and even then, most open source developers take credit for their work rather than doing it anonymously. But more to the point, open source software is something you choose to provide to the general public, rather than at the request of a client.
Outside of the development community, commercial software is still profitable because most non-technical buyers assume that free-as-in-beer software is less good. Same thing with graphic design or video production. Working for free/cheap signals interest to industry peers very effectively, but people outside the peer group just see it as a price signal.
Outside of the development community, commercial software is still profitable because most non-technical buyers assume that free-as-in-beer software is less good. Same thing with graphic design or video production. Working for free/cheap signals interest to industry peers very effectively, but people outside the peer group just see it as a price signal.