Licenza open source non virale ma con clausola per la divulgazione dell'origine?

3

Sto cercando una licenza (per una libreria C) che fondamentalmente dice:

"Le ridistribuzioni in formato binario devono essere accompagnate dal codice sorgente di Larger Work (My code + Your code)"

cioè, L = M + Y, con '+' qui che significa, ad esempio, collegamento statico / collegamento dinamico.

E non ci devono essere altre restrizioni oltre a questo. Se scelgo la mia licenza "X" come:

  • GPL - il codice sorgente di Larger Work, sia M che Y, deve anche essere concesso in licenza per intero sotto GPL.
  • LGPL - Il mio codice continua ad essere LGPL, il tuo codice può essere mantenuto chiuso, se necessario.
  • BSD - Non è necessario divulgare il codice sorgente di M né Y.

Per essere più chiari, il file binario deve essere sotto la "X" licenza, ma il codice sorgente di Larger Work deve essere reso disponibile - sotto qualsiasi licenza voglia l'Autore di Larger Work, non è necessario essere limitato a "X". LGPL si avvicina, ma non impone la disponibilità del codice sorgente.

Esempio di utilizzo: Autore di un lavoro più ampio deve dare al suo destinatario tutto il suo codice sorgente (sia M che Y) ma può chiedere al destinatario di firmare una NDA che limita la modifica di Y, ma il il destinatario può studiare Y.

In breve, "X" non dovrebbe avere caratteristiche ereditarie (come * GPL), ma la disponibilità del codice sorgente dovrebbe essere obbligatoria.

Esiste una tale licenza FOSS "non virale"?

Grazie in anticipo!

PS: Ho fatto questa domanda prima su StackOverflow, qualcuno mi ha suggerito di pubblicarlo in questo sito. Quella domanda è stata chiusa come off-topic e l'ho cancellata da SO.

    
posta Stochastic Matrix 13.02.2012 - 11:45
fonte

2 risposte

10

Eh, non funzionerebbe. La ragione per cui la GPL funziona è proprio perché è transitiva (virale).

Per mostrare come il tuo schema è stato sconfitto: ho creato una società di gestione X. Rilascio il mio progetto a X secondo i tuoi requisiti: "Il codice sorgente di Larger Work deve essere reso disponibile - sotto qualsiasi licenza l'Autore di Larger Work vuole". Quindi, non applico alcun obbligo su X. A sua volta, X rilascia il tuo codice sorgente in termini BSD. Non ho violato i termini della tua licenza, X non ha violato i miei termini di licenza e X non ha obblighi contrattuali nei tuoi confronti.

    
risposta data 13.02.2012 - 14:28
fonte
1

Stai chiamando le tue richieste "non virali", ma in realtà sono virali. Chiamiamolo YVL (Your Viral License).

"Redistributions in binary form must be accompanied by the source code of Larger Work (My code + Your code)"

Questo è praticamente equivalente a GPLv2. Sia GPL sia YVL sono virali, come L 2 = L + Y 2 < = > L 2 = M + Y + Y 2 . Quindi qualsiasi codice che usi qualsiasi codice che sia mai stato collegato al tuo deve essere conforme a YVL. Esattamente analogo a GPL.

GPL - source code of Larger Work, both M and Y, must also be licensed as whole under GPL.

Questo non è vero. Indipendentemente se usi GPL o YVL, il "lavoro più ampio" deve essere concesso in licenza in quanto tale. Tuttavia, il codice di cui non sei autore può essere concesso in base a qualsiasi licenza compatibile (vedi: licenses compatibili con GPL ).

    
risposta data 13.02.2012 - 14:47
fonte

Leggi altre domande sui tag