Quale licenza devo usare se il mio codice su GitHub include ARKit e SceneKit di Apple?

Aug 25 2020

Attualmente sto sviluppando un'app basata su ARKit di Apple e mi chiedo solo quali licenze dovrei usare per questo progetto poiché nessuna di queste librerie ha dimostrato quali licenze stanno attualmente utilizzando, il che mi rende davvero confuso.

Risposte

3 wswartzendruber Aug 27 2020 at 10:32

La maggior parte delle licenze open source non si preoccupa davvero di come combini il codice. Ce ne sono tre in particolare che mi vengono in mente.

MIT

Se vuoi solo toglierti di mezzo la licenza e non preoccuparti, schiaffeggia la licenza del MIT e chiamala un giorno. Tuttavia, le entità commerciali possono intervenire e utilizzare il tuo codice come base per una soluzione proprietaria a scopo di lucro. Non saranno obbligati a pubblicare il loro codice.

La licenza del MIT è progettata per essere chiara alla gente comune.

La licenza MIT e come applicarla

Apache 2.0

È opinione molto diffusa che la licenza del MIT non fornisca agli enti adeguate tutele contro le controversie sui brevetti da parte dell'autore. Potresti, in teoria, attrarre utenti al tuo progetto, renderli dipendenti da esso e poi mendicarli per denaro rivendicando violazioni di brevetti.

Per risolvere questo problema, l'Apache Software Foundation mantiene la propria licenza. È come la licenza MIT, ma gestisce la situazione sopra descritta. E invece di essere chiara e ovvia come la licenza MIT, la licenza Apache 2.0 è progettata per resistere alle controversie.

La licenza Apache 2.0 e come applicarla

Licenza pubblica Mozilla 2.0

Ma cosa succede se non vuoi che le persone apportino modifiche al tuo progetto e poi ne traggano profitto? La licenza MPLv2 esiste per dire che qualsiasi modifica che qualcuno apporta al tuo codice e distribuisce deve essere anch'essa sotto la licenza MPLv2. Ciò impedisce alle entità commerciali di accumulare modifiche ai file di origine.

Tuttavia, ciò si applica solo file per file. Non impedisce a qualcuno di aggiungere completamente nuovi file al tuo progetto o di sostituirne completamente altri. Questa licenza è stata progettata per essere legalmente solida pur essendo comprensibile. È stato inoltre progettato per essere applicabile a livello internazionale.

La licenza MPL 2.0 e come applicarla

Licenze GNU

Non ho parlato delle licenze GNU poiché la loro fattibilità nell'App Store è molto contestata.