Se non distribuisci i sorgenti insieme al binario, e distribuisci il binario commercialmente, vale il punto 3.b della GPL:
Se non distribuisci i sorgenti insieme al binario, e distribuisci il binario commercialmente, vale il punto 3.b della GPL:
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
Leggi in particolare no more than your cost of phisically performing source distribution. Quindi, non più del costo del CD, della masterizzata, e delle spese di spedizione. PER I SORGENTI.
Tra l’altro, uno non può cavarsela offuscando i sorgenti:
“The source code for a work means the preferred form of the work for making modifications to it.”
e sicuramente il formato preferito per modificare i sorgenti non è una serie di sorgenti offuscati (anche se con certo codice Perl la differenza non si nota molto… 😉 )
Nota comunque che se detieni i diritti sull’intero prodotto, puoi distribuirlo con quante licenze vuoi contemporaneamente.
Esempio classico per una libreria: Tizio dice “se vuoi, qui c’è la versione GPL della mia libreria, e ci puoi realizzare solo applicazioni sotto GPL. Altrimenti, visto che io ho i diritti sull’intero codice della libreria, se mi paghi te la posso mollare con una licenza differente che ti permette di svilupparci applicazioni proprietarie”. Esempio: Trolltech con Qt, o Sleepycat Software con il Berkeley DB.
Per gli applicativi completi, l’esempio di cui sopra non ha molto senso, visto che uno usa gli applicativi per lavorarci, più che per creare un prodotto derivato. Alcune possibilità:
- Ti offro delle garanzie in più se mi paghi (poco usata, visto che è dura offrire garanzie specifiche sul software).
- Ti offro assistenza 24×7 per tot tempo se mi paghi (lo fan quasi tutte le distro di Linux…).
- Ti offro una versione non GPL più ricca di funzionalità se mi paghi. Ad esempio Sourceforge, o i prodotti di TheKompany).
- Se ti servono modifiche ad hoc, te le sviluppo a pagamento (analogo del punto 2). Se il codice è abbastanza complesso, è chiaro che l’unico che riesce a metterci mano in tempo ragionevole è chi già lo conosce bene.
- L’ultima versione non è GPL ed è a pagamento. La penultima è GPL. Se la vuoi adesso, mi paghi, altrimenti aspetti. (occhio che se fai aspettare troppo, la gente prende la versione GPL e se la sviluppa per conto suo).
Esempio: Aladdin Ghost“Script, le cui versioni precedenti diventano di volta in volta GNU Ghost“Script, oppure anche MySQL, dove l’ultima versione ha certi vincoli, mentre esiste una versione alquanto piu` vecchia sotto GPL pura e semplice.
- Ti offro il prodotto sotto GPL con un minimo di documentazione. Se vuoi la documentazione completa per usarlo al meglio, me la paghi. Vedi ad esempio la documentazione a corredo delle distro (anche se spesso pure essa è sotto GPL o FDL).
- Crei un “fan club” di utenti entusiasti che ti fan donazioni per sviluppi futuri (non tiri su molto, nondimeno c’è chi fa donazioni).
In fin della fiera, son convinto che se la cifra da pagare vien percepita come ragionevole e se si può pagare in maniera semplice e rapida con la prospettiva di contribuire agli sviluppi futuri, la gente paga pure volentieri. Sotto questo aspetto sono interessanti sistemi tipo PayPal, posto che offrano un minimo di garanzie per quanto riguarda la sicurezza delle transazioni.