Can I make the source available only to those who bought the software?
Sì. Non ci sono licenze (open-source) che richiedono di fornire il codice sorgente a chiunque. La maggior parte di ciò che è richiesto è fornire il codice sorgente a coloro che hanno ottenuto una copia legittima del software stesso.
Can the customers give the source code to anybody? Will this happen?
Uno dei diritti universali garantiti da una licenza open source è il diritto di ridistribuire copie del software coperto dalla licenza. E una licenza open source non può porre restrizioni a tale ridistribuzione, come un prezzo minimo che deve essere pagato.
Quindi, se vendi software coperto da una licenza open source, i tuoi clienti avranno automaticamente il diritto di ridistribuire quel software e farlo a un prezzo inferiore rispetto a quello che addebiti.
Se il pacchetto software si rivela popolare, allora ci saranno quasi certamente persone che ne approfittano.
Ora, se il pacchetto software utilizza una libreria con una licenza copyleft (ad esempio, la GPL), l'intero pacchetto software deve essere reso disponibile con una licenza open source. Questo non vieta di vendere il software, ma rende il business case molto debole dato che ognuno dei vostri clienti può abbassare il prezzo.