I've started to consider how I want to license a project of mine, and I want people to be able to read, modify and distribute the source code. However, I also want to be able to monitise the project, and GPL and similar licenses aren't ideal for doing that. My concern is that someone will take my project, and either be able to distribute it for free, or sell it themselves.
I was wondering if there's a way to allow people the benefits of modifying and distributing source code, but disallow them to distribute binary versions, modified or not (meaning that if someone modified the source code, the only form they'd be allowed to distribute it in is as source code, not as a binary). This ideally would allow me to be the exclusive seller/distributor of binary copies/derivatives, but allow anyone to distribute it in the form of source code.
A follow up question: If this sort of licensing is possible, is there a way I could allow specific people/websites rights to the distribution of binaries (for the case where I want to work with a third-party distributor in the future)?