L'intenzione della GPL è di garantire la massima libertà possibile per gli utenti (di fine) del codice GPL. Pertanto:
- puoi utilizzare liberamente il software GPL, anche in applicazioni closed source. La GPL non richiede di aprire il codice.
- quando ridistribuisci / trasmetti il software GPL, devi utilizzare la licenza GPL in modo che i tuoi utenti godano della stessa libertà - non puoi concederti in sublicenza per impostare termini diversi.
- quando distribuisci software che dipende dal codice GPL, devi concedere in licenza il tuo software sotto licenza GPL.
Quindi la GPL è solo "virale" quando si distribuisce il software. Quando il tuo software GPL-dipendente non è distribuito, non è necessario rilasciare licenze.
Quando il software funziona solo sui tuoi server, non stai trasmettendo il software ai tuoi utenti finali, stai semplicemente fornendo l'accesso a quel software. Questa è una scappatoia valida nella GPL e l'AGPL la chiude (legando i requisiti di licenza all'utilizzo piuttosto che alla distribuzione).
Quindi, per riassumere: sei libero di usare il software GPL in un contesto SaaS senza dover rendere il tuo codice GPLed - purché fornisci semplicemente l'accesso al tuo software GPL-dipendente e non lo distribuisci (es. vendi il tuo software a i clienti in modo che possano installarlo sui propri server o rendere disponibile il software in alcuni gestori di pacchetti pubblici). Le regole di distribuzione GPL si attivano solo quando si fornisce una copia del software a un'altra entità legale, ad es. una società diversa.