Discussion:
aiuto per un problema di licenze
(too old to reply)
Margherita Mutarelli
2008-07-04 10:17:21 UTC
Permalink
Salve,

vi scrivo per una domanda riguardo le licenze software perche', vi
confesso, non sono molto tagliata per l'argomento. Insieme a delle
ricercatrici abbiamo scritto un programma per l'analisi di un certo tipo
di dati, utile nella ricerca biomedica (io ho partecipato piu' a livello
concettuale, sull'implementazione non ho proprio messo mano..). Abbiamo
scritto un articolo che descrive il programma per una rivista
scientifica e uno dei referee della rivista che lo ha valutato ci ha
obbiettato che la licenza da noi scelta (LGPL) contraddice quanto
scritto nel codice e nella finestra "About" del programma.
..eh vabbe' nessuno di noi e' uno sviluppatore professionista...e
ovviamente chi non lo fa per lavoro puo' essere un po' superficiale
sull'argomento..

Nel nostro codice c'e' scritto:
Permission to use, copy, modify, and distribute the software for any
purpose without fee is hereby granted, provided that this entire notice
is included in all copies of any software which is or includes a copy or
modification of this software and in all copies of the supporting
documentation for such software.
This software is being provided "as is", without any express or implied
warranty. In particular, the authors do not make any representation or
warranty of any kind concerning the merchantability of this software or
its fitness for any particular purpose.

e il referee ha detto che questa e' una licenza simile alla licenza MIT,
che non e' compatibile con la LGPL e non si puo' convertire, nel senso
che se uno ha scaricato il software contenente la "MIT-like" e'
vincolato solo a quella e non alla successiva scelta della LGPL.

Ora, a noi andrabbe benissimo adottare la "MIT-like" invece della LGPL:
il nostro programma e' gratuito e i sorgenti sono disponibili e a noi
serve solo qualcosa scritto in legalese che lo dica e che ci eviti dei
guai, possibilmente.
La scelta della LGPL era nata dal fatto che il programma e' scritto in
Matlab e per permettere chi non ha Matlab (e la sua costosa licenza) di
usarlo, lo distribuiamo anche in versione compilata che ha pero' bisogno
di una libreria Matlab Component Runtime appositamente compilata che si
puo' scaricare dal nostro sito, in un installer a parte del programma.
La MCR e' fatta apposta per essere distribuita, ha una propria licenza
che, a quanto ho capito, assicura il diritto al possessore di una
licenza del compilatore Matlab (che credo sia ancora piu' cara della
licenza d'uso semplice) di generare e distribuire liberamente le Runtime
insieme al software scritto in proprio, purche' fornite della loro licenza.
Pero' contiene anche questa nota:
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least as
restrictive as the Agreement, unless the Application is part of
an embedded system that has no provision for licensing to its
end users.

..mi potete spiegare che significa? Io nel dubbio, visto che mi sembrava
che la LGPL fosse stata messa a punto proprio per distribuire software
che dipendeva da librerie proprietarie, ho pensato che con quella
saremmo state a posto.
Possiamo lasciare la nostra licenza "MIT-like", accompagnandola con un
paio di frasi che esplicitamente dicono che il marchio Matlab e' della
MathWorks ecc, che la nostra licenza comunque non si estende alla MCR,
che invece ha una sua licenza e viene distribuita grazie alla licenza di
cui disponiamo?

Oppure possiamo cambiare la licenza del nostro software passare dalla
"MIT-like" alla LGPL? Per esempio, visto che stiamo correggendo il
codice, possiamo cambiare versione e dire che dalla 1.1 in poi la
licenza diventa LGPL?


So che e' una domanda un po' complicata, ma se avete almeno cosigli su
dove trovare informazioni "comprensibili" o persone a cui chiedere vi
sarei molto molto grata, perche' il tempo che abbiamo per rispondere e'
veramente poco e questo programma e' costato tanto lavoro e vorremo
vederlo pubblicato! :-)

Comunque, visto che in ambito scientifico Matlab e' molto usato, la
risposta potrebbe essere utile anche ad altri, io ho cercato sia sul
sito MathWorks che su forum e mailing lists di software libero, sul sito
OSI, ma non ho ancora risolto il problema.

Grazie


Margherita


Ps. Posso fornire la copia completa della licenza che accompagna la
Matlab Runtime se serve.
insomniac
2008-07-04 10:30:15 UTC
Permalink
On Fri, 04 Jul 2008 12:17:21 +0200
Post by Margherita Mutarelli
Salve,
Ciao,
ho soltanto letto velocemente la mail (sto uscendo, e tornerò dopo
pranzo, leggerò con più calma una volta a casa). Da una rapida ricerca:

"While you do need to purchase a MATLAB Compiler license to build the
executables, you can then freely distribute the executable and the
MATLAB Component Runtime (MCR) to as many computers as you want! No
licenses, no limits."

tratto da
http://gravity.psu.edu/~s3/LSCBootCamp/Compiling_MATLAB_with_Release_14.html
Ovviamente non è una fonte ufficiale, ma va bene per farsi un'idea.
Post by Margherita Mutarelli
Ps. Posso fornire la copia completa della licenza che accompagna la
Matlab Runtime se serve.
Buona idea.

Saluti,
--
Andrea Barberio

a.barberio-***@public.gmane.org - Linux&C.
andrea.barberio-qaNcByWzZlGGzLJY+***@public.gmane.org - Slackware Linux Project Italia
GPG key on http://insomniac.slackware.it/gpgkey.asc
2818 A961 D6D8 1A8C 6E84 6181 5FA6 03B2 E68A 0B7D
SIP: 5327786, Phone: 06 916503784
Margherita Mutarelli
2008-07-04 12:00:06 UTC
Permalink
Ciao,
Post by insomniac
Post by Margherita Mutarelli
Ps. Posso fornire la copia completa della licenza che accompagna la
Matlab Runtime se serve.
Buona idea.
eccola in allegato. Il file contiene tutte le versioni della licenza, la
parte che ci interessa e' il "Deployment Addendum", dove c'e' scritta
una cosa molto simile a quello che dici tu:

5.1.1. MATLAB Compiler. Licensee may use and distribute the MCR
Libraries for the sole purpose of running Licensed User's
Application generated by the MATLAB Compiler. Licensee may
deploy, at no cost, copies of such Applications that
incorporate the MCR Libraries and compiled versions of
M-files from the licensed Programs required for the
Application. No further fees shall be due to MathWorks for
such deployment within Licensee's Application, regardless
of whether the Application is distributed solely for
Licensee's Internal Operations or to Third Parties.

Quello che non capisco e' questo passaggio:

9. APPLICATION LICENSING. For any distribution of Applications
containing Object Code or Generated Forms to:
[...]
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least as
restrictive as the Agreement, unless the Application is part of
an embedded system that has no provision for licensing to its
end users.

vuol dire che c'e' una limitazione alla licenza che possiamo scegliere
per il compilato?
E, se si, possono farlo?

(Per i sorgenti immagino che non possano mettere limitazioni, ma
distribuire il compilato e' necessario per evitare che gli utenti si
debbano comprare Matlab!).

Grazie

Margherita


Ps. per quanto riguarda Octave, al momento non abbiamo il tempo di fare
una cosa del genere: dobbiamo rispondere nell'arco di pochi giorni.
Comunque, viste le rogne che ci ha dato per compilare, penso proprio che
le mie matematiche la prossima volta ci penseranno bene...e non e'
escluso che gia' per le prossime versioni decidano di vedere se e'
possibile migrare!!!
insomniac
2008-07-04 12:52:17 UTC
Permalink
On Fri, 04 Jul 2008 14:00:06 +0200
Post by Margherita Mutarelli
Ciao,
9. APPLICATION LICENSING. For any distribution of Applications
[...]
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least
as restrictive as the Agreement, unless the Application is part of
an embedded system that has no provision for licensing to its
end users.
vuol dire che c'e' una limitazione alla licenza che possiamo
scegliere per il compilato?
E, se si, possono farlo?
A quanto capisco io, anche spulciando il testo allegato della licenza,
questa clausola ti limita la scelta della licenza. Però non riesco a
trovare nella licenza la definizione di "Agreement", che potrebbe dirci
esattamente quali sono queste restrizioni da accettare. In ogni caso,
potrebbe essere accettabile la ridistribuzione in forma binaria se
questa non limita l'uso agli utenti, a cui affiancare la distribuzione
dei sorgenti sotto la licenza che ritenete più opportuna (e su quella
nessuno può dirvi niente).

Sul "se sì, possono farlo?" io credo che possano (limitatamente al
compilato), ma è una mia idea e non ha alcun valore legale. Se c'è
qualcuno in lista con competenze più adeguate delle mie, è il caso che
venga fuori ora :-)
Post by Margherita Mutarelli
Ps. per quanto riguarda Octave, al momento non abbiamo il tempo di
fare una cosa del genere: dobbiamo rispondere nell'arco di pochi
giorni. Comunque, viste le rogne che ci ha dato per compilare, penso
proprio che le mie matematiche la prossima volta ci penseranno
bene...e non e' escluso che gia' per le prossime versioni decidano di
vedere se e' possibile migrare!!!
Ecco, per il futuro è un ottimo proposito, e troverete sicuramente
appoggio dai partecipanti della lista :-)

Ciao,
--
Andrea Barberio

a.barberio-***@public.gmane.org - Linux&C.
andrea.barberio-qaNcByWzZlGGzLJY+***@public.gmane.org - Slackware Linux Project Italia
GPG key on http://insomniac.slackware.it/gpgkey.asc
2818 A961 D6D8 1A8C 6E84 6181 5FA6 03B2 E68A 0B7D
SIP: 5327786, Phone: 06 916503784
n***@public.gmane.org
2008-07-04 13:31:59 UTC
Permalink
On Fri, 4 Jul 2008 14:52:17 +0200
Post by insomniac
A quanto capisco io, anche spulciando il testo allegato della licenza,
questa clausola ti limita la scelta della licenza. Però non riesco a
trovare nella licenza la definizione di "Agreement", che potrebbe
dirci esattamente quali sono queste restrizioni da accettare.
Credo che siano i "The MathWorks, Inc. Software License Agreement"
nell'allegato della mail precedente ma non ci ho capito molto nemmeno
io. :(
--
Value your freedom, or you will lose it, teaches history.
``Don't bother us with politics,'' respond those who don't
want to learn.

-- Richard M. Stallman
http://www.gnu.org/philosophy/linux-gnu-freedom.html
Joseph Vinegar
2008-07-04 10:31:34 UTC
Permalink
Il 4 luglio 2008 12.17, Margherita Mutarelli
Post by Margherita Mutarelli
Salve,
vi scrivo per una domanda riguardo le licenze software perche', vi
...

[risposta semi-OT]

Se non ricordo male OCTAVE è largamente compatibile a livello di
linguaggio di scripting con Matlab, ma è software libero, dunque
eliminerebbe il problema dell'interazione tra le licenze.
Bisognerebbe verificare che le funzionalità usate dalla vostra
applicazione siano presenti anche in octave.
Post by Margherita Mutarelli
Oppure possiamo cambiare la licenza del nostro software passare dalla
"MIT-like" alla LGPL? Per esempio, visto che stiamo correggendo il
codice, possiamo cambiare versione e dire che dalla 1.1 in poi la
licenza diventa LGPL?
Sul codice scritto da voi avete tutti i diritti. Potete fare quello
che volete. Naturalmente non è retroattivo (non vale per le versioni
precedenti, che una volta distribuite seguono la loro vita in base
alla licenza).

/home/poco/utile/sorry
--
GnuPG id: EAD35F0F su keyserver.linux.it
d***@public.gmane.org
2008-07-04 12:24:12 UTC
Permalink
Post by Margherita Mutarelli
Salve,
vi scrivo per una domanda riguardo le licenze software perche', vi
confesso, non sono molto tagliata per l'argomento. Insieme a delle
ricercatrici abbiamo scritto un programma per l'analisi di un certo tipo
di dati, utile nella ricerca biomedica (io ho partecipato piu' a livello
concettuale, sull'implementazione non ho proprio messo mano..). Abbiamo
scritto un articolo che descrive il programma per una rivista
scientifica e uno dei referee della rivista che lo ha valutato ci ha
obbiettato che la licenza da noi scelta (LGPL) contraddice quanto
scritto nel codice e nella finestra "About" del programma.
..eh vabbe' nessuno di noi e' uno sviluppatore professionista...e
ovviamente chi non lo fa per lavoro puo' essere un po' superficiale
sull'argomento..
Permission to use, copy, modify, and distribute the software for any
purpose without fee is hereby granted, provided that this entire notice
is included in all copies of any software which is or includes a copy or
modification of this software and in all copies of the supporting
documentation for such software.
This software is being provided "as is", without any express or implied
warranty. In particular, the authors do not make any representation or
warranty of any kind concerning the merchantability of this software or
its fitness for any particular purpose.
e il referee ha detto che questa e' una licenza simile alla licenza MIT,
che non e' compatibile con la LGPL e non si puo' convertire, nel senso
che se uno ha scaricato il software contenente la "MIT-like" e'
vincolato solo a quella e non alla successiva scelta della LGPL.
il nostro programma e' gratuito e i sorgenti sono disponibili e a noi
serve solo qualcosa scritto in legalese che lo dica e che ci eviti dei
guai, possibilmente.
La scelta della LGPL era nata dal fatto che il programma e' scritto in
Matlab e per permettere chi non ha Matlab (e la sua costosa licenza) di
usarlo, lo distribuiamo anche in versione compilata che ha pero' bisogno
di una libreria Matlab Component Runtime appositamente compilata che si
puo' scaricare dal nostro sito, in un installer a parte del programma.
La MCR e' fatta apposta per essere distribuita, ha una propria licenza
che, a quanto ho capito, assicura il diritto al possessore di una
licenza del compilatore Matlab (che credo sia ancora piu' cara della
licenza d'uso semplice) di generare e distribuire liberamente le Runtime
insieme al software scritto in proprio, purche' fornite della loro licenza.
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least as
restrictive as the Agreement, unless the Application is part of
an embedded system that has no provision for licensing to its
end users.
..mi potete spiegare che significa? Io nel dubbio, visto che mi sembrava
che la LGPL fosse stata messa a punto proprio per distribuire software
che dipendeva da librerie proprietarie, ho pensato che con quella
saremmo state a posto.
Possiamo lasciare la nostra licenza "MIT-like", accompagnandola con un
paio di frasi che esplicitamente dicono che il marchio Matlab e' della
MathWorks ecc, che la nostra licenza comunque non si estende alla MCR,
che invece ha una sua licenza e viene distribuita grazie alla licenza di
cui disponiamo?
Oppure possiamo cambiare la licenza del nostro software passare dalla
"MIT-like" alla LGPL? Per esempio, visto che stiamo correggendo il
codice, possiamo cambiare versione e dire che dalla 1.1 in poi la
licenza diventa LGPL?
So che e' una domanda un po' complicata, ma se avete almeno cosigli su
dove trovare informazioni "comprensibili" o persone a cui chiedere vi
sarei molto molto grata, perche' il tempo che abbiamo per rispondere e'
veramente poco e questo programma e' costato tanto lavoro e vorremo
vederlo pubblicato! :-)
Comunque, visto che in ambito scientifico Matlab e' molto usato, la
risposta potrebbe essere utile anche ad altri, io ho cercato sia sul
sito MathWorks che su forum e mailing lists di software libero, sul sito
OSI, ma non ho ancora risolto il problema.
Grazie
Margherita
Ps. Posso fornire la copia completa della licenza che accompagna la
Matlab Runtime se serve.
Dunque Margherita, la tua domanda come sospettavi e` un po` complicata,
sia per l'argomento in se che è sempre spinoso, sia perche` occorre
fornire circostanziate e motivate giustificazioni al tuo referee che al
momento credo sia il vostro problema. E poiché s'è andato a guardare la
licenza e vi ha contestato la tipologia deduco che e` pignolo e quindi
pronto ad argomentare la sua tesi. Insomma bisogna rimboccarsi le
maniche e documentarsi.

Come al solito su questo terreno c'è sempre la FSF a cui poter chiedere
un parere, dove sicuramente non mancano gli esperti legali, o coloro che
sono diventati esperti sul campo (ad esempio Stallman) in grado di dare
delle risposte molto solide, legalmente parlando. Oppure sperare che
qualche amico del Nalug che e` membro attivo della FSF-Europa ci legga e
ti possa aiutare.

Ma proviamo a dire qualcosa in base agli stralci di licenza che ci hai
fornito. La licenza del MCR che riporti sopra dice:

9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least as
restrictive as the Agreement,

La tua applicazione dovra` essere accompagnata da una SUA licenza i cui termini e le cui condizioni siano almeno tanto restrittive quanto il Contratto.

Ma qual è questo Agreement? Suppongo sia la licenza di cui quest'articolo faccia parte. Quindi ci sara` piu` chiaro il tutto se ci riporti la licenza interamente. Perche` potrebbero esserci anche ampie restrizioni in questo argeement, ma in genere dovrebbe significare con la licenza del tuo software facci quel che vuoi ma non osare nemmeno pensare di porre qualche vincolo oppure estendere le tue liberta` al mio (mio MATALAB) codice.

unless the Application is part of
an embedded system that has no provision for licensing to its
end users.


Questa parte si riferisce a sistemi embedded e credo che non sia il
vostro caso, credo così a naso che il vostro software possa rientrare
nei cosiddetti software stand alone.


Veniamo alle due licenze MIT e LGPL, e se possibile proviamo a non
andare direttamente alla fonte (le due licenze) per non rimanere
affogati nel legalese. Forse per chiarirci le idee possono bastare le
informazioni ricavabili da wikipedia (conviene dare uno sguardo anche
alla versione inglese che su questi argomenti sara` certamente piu`
affidabile)
http://it.wikipedia.org/wiki/Licenza_MIT
http://it.wikipedia.org/wiki/GNU_Lesser_General_Public_License

La differenza tra le due licenze è sostanzialmente quella che passa tra
le licenze BSD-Like e quelle GPL -Like, cioè i prodotti che sono
rilasciati con la prima delle licenze danno all'utilizzatore il diritto
di utilizzare, copiare, modificare, incorporare, pubblicare,
distribuire, sotto-licenziare, e/o vendere il software. In pratica puoi
infilare il tuo codice in un software proprietario e nasconderne di
fatto il codice a patto che nella licenza del nuovo software, quello
proprietario che ha fagocitato il tuo software libero, il detentore dei
diritti pubblicizzi che c'e` del codice scritto da Tizio e Caio, e qui
finisce quanto e` dovuto a Tizio e Caio.
Viceversa la licenza LGPL dice invece una cosa diversa, e` una licenza
"non infettiva" cioe` non pretende che tutto il software con cui venga a
contatto e in cui sia incluso il tuo software o da cui esso dipenda sia
libero, ma, afferma che se il tuo codice X con licenza LGPL viene
immesso o lavora con un software, anche proprietario Y, e per fare cio`
fai un cambiamento sul codice X allora sei obbligata a rilasciare i
sorgenti della modifica apportata a X. In pratica "infetta di liberta`"
solo i figli del suo stesso codice e non quanti ci vengono a contatto.

Ovviamente, potete rilasciare una NUOVA versione del vostro software con
la licenza che piu` vi aggrada: perché trattasi di una nuova cosa ma,
chi possiede la vecchia puo' fare le stesse modifiche e della versione
cosi` modificata farne di tutto, perche` la madre non infetta i figli di
liberta`. Ora ci sono varie cose che si possono tentare per mettere i
bastoni tra le ruote a chi voglia fare cio` ma nulla puo` FERMARE DEL
TUTTO chi voglia spendere tempo e conoscenze per ammodernare la vecchia
versione alla nuova, per quanto le versioni differiscano.

Spero di non aver scritto troppe imprecisioni perche' su questo terreno
mai farsi maestro.
Ciao,
vido
n***@public.gmane.org
2008-07-04 13:22:07 UTC
Permalink
On Fri, 04 Jul 2008 12:17:21 +0200
Post by Margherita Mutarelli
vi scrivo per una domanda riguardo le licenze software perche', vi
confesso, non sono molto tagliata per l'argomento.
Premetto che non sono un avvocato, le licenze sono una cosa piu`
complicata di quanto uno si potrebbe aspettare, e quindi dovresti
rivolgerti a qualcuno mooolto competente, pero' partecipo perche'
potrebbe essere un buon momento per portare a galla e risolvere alcuni
dubbi sia tuoi che miei.
Post by Margherita Mutarelli
Oppure possiamo cambiare la licenza del nostro software passare dalla
"MIT-like" alla LGPL? Per esempio, visto che stiamo correggendo il
codice, possiamo cambiare versione e dire che dalla 1.1 in poi la
licenza diventa LGPL?
Ammesso che tutti quelli che detengono i diritti di copia sul codice
_della versione per il quale volete fare il passaggio_ siano daccordo
allora si`.

E` simile alla situazione di mplayer: vogliono passare dalla GPLv2 alla
GPLv3 ma non riescono (riuscivano?) a contattare tutti gli sviluppatori
che detengono i diritti di copia sul codice della versione per il quale
voglio fare il passaggio e quindi devono aspettare.

Mettiamo che allo sviluppo abbiamo partecipato 10 persone ma che
nella versione per la quale volete fare il passaggio sia presente il
codice scritto solo da 5 di loro, vi basta che quelle 5 siano daccordo
e potete fare il passaggio di licenza.
Post by Margherita Mutarelli
Comunque, visto che in ambito scientifico Matlab e' molto usato, la
risposta potrebbe essere utile anche ad altri, io ho cercato sia sul
sito MathWorks che su forum e mailing lists di software libero, sul
sito OSI, ma non ho ancora risolto il problema.
Ho letto che qualcuno ti ha suggerito Octave. Il suggerimento era
ottimo nell'intenzione ma dal momento che hai parlato di "menu",
immagino che state utilizzando anche i comandi per la creazione
delle interfacce grafiche che Octave non fornisce ancora (per
quanto ne so).
Post by Margherita Mutarelli
Insieme a delle
ricercatrici abbiamo scritto un programma per l'analisi di un certo
tipo di dati, utile nella ricerca biomedica (io ho partecipato piu' a
livello concettuale, sull'implementazione non ho proprio messo
mano..).
Credo che se mastichi un po` d'inglese povresti chiedere direttamente
alla Free Software Foundation, infatti hanno un indirizzo di
posta elettronica dedicato alle domande di chi vuole avere consigli su
che licenza adottare per il proprio software.

Non tanto perche' qui sia OT (non per me almeno) ma perche' per quanto
un gruppo di appassionati possa capirne, quando si tratta di licenze
meglio chiedere a qualcuno che possa darti una risposta con un maggior
grado di certezza IMO.

Facci sapere come va in ogni caso. :)
Post by Margherita Mutarelli
Ora, a noi andrabbe benissimo adottare la "MIT-like" invece della
LGPL: il nostro programma e' gratuito e i sorgenti sono disponibili e
a noi serve solo qualcosa scritto in legalese che lo dica e che ci
eviti dei guai, possibilmente.
Non ho capito che intendi; hai bisogno di qualcosa scritto in
legalese che dica che e` Software Libero o hai bisogno di
qualcosa che dica che e` "provided AS IS" e "without warranty"?
Post by Margherita Mutarelli
Abbiamo scritto un articolo che descrive il programma per
una rivista scientifica e uno dei referee della rivista che lo ha
valutato ci ha obbiettato che la licenza da noi scelta (LGPL)
contraddice quanto scritto nel codice e nella finestra "About" del
programma. ..eh vabbe' nessuno di noi e' uno sviluppatore
professionista...e ovviamente chi non lo fa per lavoro puo' essere un
po' superficiale sull'argomento..
Non potete mettere in "About" una breve descrizione del programma e
aggiungere al menu Help una voce "License" o "Copying" che apra una
finestra che mostri la LGPL?

Una nota di quel tipo per quanto breve puo` essere comunque
problematica, non va messa alla leggera. Non so se mi spiego: con la
licenza dici all'utente come puo` usare quel software, ed e` la stessa
cosa che vuoi fare con quella nota; perche' mettere quella nota quando
allo scopo gia` provvede la LGPL?
Post by Margherita Mutarelli
..mi potete spiegare che significa? Io nel dubbio, visto che mi
sembrava che la LGPL fosse stata messa a punto proprio per
distribuire software che dipendeva da librerie proprietarie, ho
pensato che con quella saremmo state a posto.
Mmm, non ne sono sicuro al 100%, ma credo che sia il contrario: la LGPL
e` utile per distribuire librerie dal quale poi far dipendere del
software proprietario (lo scopo e` diffondere il piu` possibile la
libreria), non per software libero che per girare ha bisogno di librerie
proprietarie ("che per girare ha bisogno" e` una frase molto vaga, la
questione e` piu` complicata ma era giusto per capirsi).

In generale comunque, il fatto che del software per girare abbia bisogno
di software proprietario non significa che non possa essere
accompagnato da una licenza libera; mi sembra che sia il caso della
"java trap".

Per esempio esiste Software Libero scritto in java e che per girare ha
bisogno di una java virtual machine (della quale per molto tempo erano
disponibili solo esemplari proprietari), oppure esistono interfacce
grafiche scritte in lua per world of warcraft (che e`
proprietario) accompagnate da licenza GPL.

Questo per dire che magari avete pensato di dover usare la LGPL ma
avreste potuto usare anche la GPL in linea di principio. Che poi nel
caso specifico non si possa fare dipende dalle restrizioni imposte
dalla mathworks non dalla GPL.


Ciao e in bocca al lupo!
--
Value your freedom, or you will lose it, teaches history.
``Don't bother us with politics,'' respond those who don't
want to learn.

-- Richard M. Stallman
http://www.gnu.org/philosophy/linux-gnu-freedom.html
Marco Paladini
2008-07-04 18:48:15 UTC
Permalink
Post by Margherita Mutarelli
Permission to use, copy, modify, and distribute the software for any
purpose without fee is hereby granted, provided that this entire notice
is included in all copies of any software which is or includes a copy or
modification of this software and in all copies of the supporting
documentation for such software.
This software is being provided "as is", without any express or implied
warranty. In particular, the authors do not make any representation or
warranty of any kind concerning the merchantability of this software or
its fitness for any particular purpose.
Infatti non c'é scritto da nessuna parte LGPL qui...

questo che avete scritto é una licenza permissiva
ma "without fee" significa niente scopi commerciali, cosa invece
permessa dalla GPL e dalla LGPL.
Post by Margherita Mutarelli
e il referee ha detto che questa e' una licenza simile alla licenza MIT,
che non e' compatibile con la LGPL e non si puo' convertire, nel senso
che se uno ha scaricato il software contenente la "MIT-like" e'
vincolato solo a quella e non alla successiva scelta della LGPL.
Si, esattamente, conta quel che c'é scritto nel software che
distribuite, non quello che dice l'articolo
Post by Margherita Mutarelli
il nostro programma e' gratuito e i sorgenti sono disponibili e a noi
serve solo qualcosa scritto in legalese che lo dica e che ci eviti dei
guai, possibilmente.
Dunque questa licenza definita da quel piccolo preambolo é
adatta ai vostri scopi.
GPL in generale è meglio quando volete la più ampia libertá
per gli utenti finali
Post by Margherita Mutarelli
usarlo, lo distribuiamo anche in versione compilata che ha pero' bisogno
di una libreria Matlab Component Runtime appositamente compilata che si
credo che non ci sia problema o che comunque sia aggirabile,
1)non puó essere che questa runtime sia possibile scaricarla
gratis da mathworks stessa? in questo modo non la distribuite
e vi levate qualunque grattacapo.
2)distribuite a parte il vostro prog e la runtime, quindi questo
programma distribuito a parte non ricade nella clausola cattiva
di sta cosa.
Post by Margherita Mutarelli
insieme al software scritto in proprio, purche' fornite della loro licenza.
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least as
restrictive as the Agreement, unless the Application is part of
an embedded system that has no provision for licensing to its
end users.
..mi potete spiegare che significa? Io nel dubbio, visto che mi sembrava
che la LGPL fosse stata messa a punto proprio per distribuire software
che dipendeva da librerie proprietarie, ho pensato che con quella
saremmo state a posto.
1)no. LGPL serve a distribuire una libreria libera dando peró il permesso
alle applicazioni proprietarie di usarla.
2)se dipendi da librerie proprietarie non c'è modo di liberare il tutto, la
tua applicazione puó essere GPL, ma chi usa solo software libero non
potrá usarla.


Marco
Margherita
2008-07-25 06:42:21 UTC
Permalink
Carissimi,

un po' di tempo fa vi avevo chiesto aiuto per un problema di licenze e
voglio ringraziare tutti quelli che mi hanno risposto per l'aiuto
prezioso: avevo posto un argomento spinoso e non facile e siete stati
tutti molto carini e gentili e le vostre indicazioni mi sono state di
grande aiuto.
Scusate se non ho risposto prima, ma in parte ci ho messo tempo a
elaborare la cosa, nei ritagli di tempo perche' dato che il mio prof non
e' coinvolto nel progetto va nel "tempo libero"/ore notturne perche' se
mi acchiappa ad accantonare il resto del mio lavoro per questo mi
ammazza :-)

Riepilogo il mio caso e vi riassumo la soluzione a cui sono arrivata,
magari qualcuno si trova in una situazione simile e gli puo' essere
utile la mia esperienza.
Abbiamo scritto un programmino in MATLAB (ahinoi) e ci siamo trovate in
difficolta' nella scelta della licenza.
Poiche' MATLAB (R) e' proprietarissimo e si paga, abbiamo deciso di
distribuire, oltre ai sorgenti, una versione compilata che non ha
bisogno di MATLAB per girare in modo da renderlo disponibile anche a chi
non ce l'ha.
Pero', per funzionare, la versione eseguibile ha bisogno di una runtime
MATLAB che viene generata al momento della compilazione del programma
(perche' contiene solo il necessario per girare il programma) e quindi
non e' scaricabile dal sito MATLAB perche' dobbiamo generarla noi.

Noi la distribuiamo in un file a parte che si installa e contiene la sua
licenza. Ovviamente e' necessario installare la runtime e accettare la
sua licenza prima di installare il nostro programma. Possiamo farlo in
virtu' della licenza del Compilatore che prevede esplicitamente la
possibilita' di generare Applicazioni e distribuire la runtime
necessaria a farle girare senza alcun costo aggiuntivo (a quello serve!)

Fin qui tutto
Post by Margherita Mutarelli
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at least as
restrictive as the Agreement, unless the Application is part of
an embedded system that has no provision for licensing to its
end users.
che sembrerebbe porre dei limiti alla licenza che possiamo adottare per
la nostra applicazione...e' pero' oscura, almeno non si capisce cosa non
posso fare, per cui, anche in virtu' di questa osservazione di una
Post by Margherita Mutarelli
... occorre studiare la licenza del software e
vedere se semplicemente essa si applica alla sola runtime o a tutto il
software derivato. A me pare che una runtime non possa far sì che il
software che ci gira sopra sia considerato opera derivata, perché
sarebbe come pretendere che se io faccio un'applicazione per Windows,
allora faccio un'opera derivata di Windows.
..ho concluso che la clausola deve applicarsi limitatamente alla
runtime, cioe' vuol dire che ovviamente non possiamo dare ai nostri
utenti finali piu' diritti di quanti ne abbiamo noi stesse, ma imporre
una limitazione anche alla licenza che vogliamo adottare sul software
scritto da noi sarebbe veramente un sopruso.
La licenza definisce bene cosa e' "Application", cio' un programma che
fornisce funzioni significativamente diverse da quelle delle funzioni di
matlab gia' esistenti e cosa invece "Derivative Forms", che in ogni caso
costituiscono una violazione di copyright e ovviamente il nostro
programma non ricade nel "software derivato".

Molti ci hanno consigliato di passare a Octave, ma nel nostro caso non
era possibile perche' avevamo dei tempi molto stretti (stiamo cercando
di pubblicare un articolo che descrive il programma e il tempo a
disposizione se n'e' andato per bug fixing e per modificare le
interfacce utente in modo da andare incontro alle richieste dei reviewer
della rivista).
Ma nella prossima modifica importante mi spendero' per convincere le
altre che un po' di lavoro per migrare puo' valere molto la pena perche'
la liberta' non ha prezzo!!

Chiarito questo punto, non abbiamo adottato la GPL per due motivi:
1) perche' avevamo gia' iniziato a distribuire il programma con un
disclaimer molto simile alla licenza MIT, e le modifiche fatte adesso
non sono sostanziali e non giustificano un cambio di
versione...proteggere maggiormente il codice dopo aver iniziato a
distribuirlo creerebbe solo la confusione avere in giro codice
sostanzialmente identico con licenze diverse e non avrebbe molto senso;
Post by Margherita Mutarelli
Attenzione che la LGPL prevede che comunque tu distribuisca tutto il
codice sorgente necessario, compreso quello del software necessario per
la corretta compilazione, a meno che -- e questa è una stretta eccezione
-- non sia altrimenti distribuito con il compilatore liberamente
ottenibile o incluso nel sistema operativo o altrove (la cosa è più
complicata). Altrimenti devi distribuire anche il codice sorgente di
questa parte. Qui mi sa che non siete in grado di farlo.
non ci ha lasciato molte scelte: per girare il compilato ha bisogno
della runtime, ma anche il codice ha bisogno di MATLAB! Ovviamente chi
vuole puo' provare ad usarlo con Octave, ma purtroppo non abbiamo avuto
tempo e modo di testarlo e non possiamo garantire che funzioni senza
dover fare modifiche significative.

In conclusione, abbiamo lasciato la licenza "MIT-like", modificandola
per venire incontro ai requisiti della licenza della runtime di MATLAB,
e secondo il suggerimento della persona di FSF Italia che ci ha risposto
l'abbiamo chiamata "BATS permissive license (derived from the MIT
license)".

Vi riporto il testo qui sotto, casomai fosse utile a qualcuno.

Grazie ancora.


Margherita

Ps. Giusto per info :-) il programma serve a identificare geni
differenzialmente espressi in esperimenti di microarray seguiti nel
tempo e si puo' scaricare qui: http://www.na.iac.cnr.it/~bats/index.htm

----------------------------------------
BATS - Bayesian Analysis for Time Series
----------------------------------------

BATS has been written by C.Angelini, L. Cutillo, D.De Canditiis, M.
Mutarelli and M. Pensky, 2007-2008. Copyright: I.A.C. "M. Picone" CNR
(ITALY), 2007-2008.

MATLAB is a registered trademark of The MathWorks, Inc.
Java is a trademark of Sun Microsystems, Inc.

Permission to use, copy, modify, and distribute the software BATS for
any purpose without fee is hereby granted, provided that this entire
notice is included in all copies of any software which is or includes a
copy or modification of this software and in all copies of the
supporting documentation for such software.

THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
WARRANTY. IN PARTICULAR, THE AUTHORS AND THE MATHWORKS INC DO NOT MAKE
ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE
MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.

The MCR (MATLAB Component Runtime) Libraries are distributed under a
Deployment Agreement for the sole purpose of running BATS, they are
provided with the MCR Library License whose terms must be accepted prior
to install and use BATS in its compiled form.

When performing analysis with BATS, please cite:
· C. Angelini, D. De Canditiis, M. Mutarelli, M. Pensky. A Bayesian
Approach to Estimation and Testing in Time-course Microarray
Experiments, Statistical Applications in Genetics and Molecular Biology:
vol 6 : Iss. 1, Article 24, (2007).
----------------------------------------
Massimiliano Mantione
2008-07-25 09:28:48 UTC
Permalink
Questo thread e' veramente interessante, complimenti a tutti i
partecipanti :-)
Post by Margherita
Post by Margherita Mutarelli
Attenzione che la LGPL prevede che comunque tu distribuisca tutto il
codice sorgente necessario, compreso quello del software necessario per
la corretta compilazione, a meno che -- e questa è una stretta eccezione
-- non sia altrimenti distribuito con il compilatore liberamente
ottenibile o incluso nel sistema operativo o altrove (la cosa è più
complicata). Altrimenti devi distribuire anche il codice sorgente di
questa parte. Qui mi sa che non siete in grado di farlo.
non ci ha lasciato molte scelte: per girare il compilato ha bisogno
della runtime, ma anche il codice ha bisogno di MATLAB! Ovviamente chi
vuole puo' provare ad usarlo con Octave, ma purtroppo non abbiamo avuto
tempo e modo di testarlo e non possiamo garantire che funzioni senza
dover fare modifiche significative.
My 2c: IMO Matlab in questo caso e' da considerarsi parte integrante
della piattaforma di sviluppo (e' la piattaforma di sviluppo!).
E' proprietario e non free, ma e' comunque la piattaforma di sviluppo
per il vostro software.
Posto questo, mi sembra ovvio che il vostro software, anche se LGPL,
potrebbe lecitamente richiedere la presenza di Matlab per essere
compilato.

Per fare un parallelo, pensate a qualunque linguaggio di programmazione
di cui esiste solo un ambiente di sviluppo proprietario: per quanto ne
so, e' comunque possibile rilasciare software scritto per quella
piattaforma di sviluppo sotto licenza GPL.

Un po' come il progetto GNU prima che esistesse gcc: il software GNU era
GPL, ma lo si usava su Unix proprietari con compilatori proprietari.

O come scrivere software GPL in Java prima che esistessero compilatori
Java rilasciati come free software...

O scrivere in C# prima che ci fossero Mono o portable.net!
/me hides ;-)

Spero di avere reso l'idea.
E cio' detto, apprezzo moltissimo il desiderio di passare ad Octave ed
eliminare il problema alla radice :-)

Ciao,
Massimiliano
insomniac
2008-07-25 18:18:59 UTC
Permalink
On Fri, 25 Jul 2008 08:42:21 +0200
Post by Margherita
Carissimi,
[snip]
Post by Margherita
Noi la distribuiamo in un file a parte che si installa e contiene la
sua licenza. Ovviamente e' necessario installare la runtime e
accettare la sua licenza prima di installare il nostro programma.
Possiamo farlo in virtu' della licenza del Compilatore che prevede
esplicitamente la possibilita' di generare Applicazioni e distribuire
la runtime necessaria a farle girare senza alcun costo aggiuntivo (a
quello serve!)
Fin qui tutto
Post by Margherita Mutarelli
9.2. Third Parties: Your Application shall be accompanied by an
Application License whose terms and conditions are at
least as restrictive as the Agreement, unless the Application is
part of an embedded system that has no provision for licensing to
its end users.
che sembrerebbe porre dei limiti alla licenza che possiamo adottare
per la nostra applicazione...e' pero' oscura, almeno non si capisce
cosa non posso fare, per cui, anche in virtu' di questa osservazione
Ciao Margherita,
a mio modesto avviso, questo non è affatto un problema.
1) Voi rilasciate i sorgenti con la vostra licenza aperta;
2) Rilasciate il runtime specifico per la vostra applicazione con la
licenza richiesta da MathWorks;
3) Rilasciate i *binari* che sfruttano il runtime di Matlab con la
licenza richiesta da MathWorks.

In questo modo i sorgenti restano liberi, i binari restano utilizzabili
nei limiti della licenza imposta da MatWorks (dubito che limiti l'uso
della vostra applicazione, anche per uso commerciale, ma questo è da
vedere), e così non dovreste avere più il problema della scelta della
licenza.

Se ho detto cavolate fermatemi sin da ora :-)

Ciao,
--
Andrea Barberio

a.barberio-***@public.gmane.org - Linux&C.
andrea.barberio-qaNcByWzZlGGzLJY+***@public.gmane.org - Slackware Linux Project Italia
GPG key on http://insomniac.slackware.it/gpgkey.asc
2818 A961 D6D8 1A8C 6E84 6181 5FA6 03B2 E68A 0B7D
SIP: 5327786, Phone: 06 916503784
Joseph Vinegar
2008-07-25 19:38:52 UTC
Permalink
Post by insomniac
1) Voi rilasciate i sorgenti con la vostra licenza aperta;
2) Rilasciate il runtime specifico per la vostra applicazione con la
licenza richiesta da MathWorks;
3) Rilasciate i *binari* che sfruttano il runtime di Matlab con la
licenza richiesta da MathWorks.
In questo modo i sorgenti restano liberi, i binari restano utilizzabili
nei limiti della licenza imposta da MatWorks (dubito che limiti l'uso
della vostra applicazione, anche per uso commerciale, ma questo è da
vedere), e così non dovreste avere più il problema della scelta della
licenza.
Per quel che ne ho potuto capire io ciò è perfettamente legale, e mi
sembra la soluzione ottima.
Nel caso decidiate per una soluzione del genere, suggerisco di
adottare la più "fortemente restrittiva" delle licenze (GPL v3) in
modo da dare il massimo di vantaggio a chi vuole partecipare alla
diffusione della conoscenza, e mettere i maggiori bastoni tra le ruote
a chi volesse invece approfittarsi del vostro lavoro.
Considerate inoltre che partendo da una licenza libera "forte",
eventualmente ha senso contrattare con qualcuno un'eventuale licenza
libera più debole (come la MIT) o addirittura una proprietaria a
pagamento (licenza multipla); se invece si parte da una debole, la
frittata è fatta.
Questo vale sia per rilasci di versioni successive (cambio di licenza)
che per distribuzione con versioni diverse attraverso canali diversi
(licenza multipla).

Una soluzione del genere potrebbe portare qualcun altro a modificare
il programma perché sia usabile con Octave, ma dovrebbe riconoscervene
i meriti, e rilasciarlo necessariamente sotto GPLv3.

/home/2o/me
--
GnuPG id: EAD35F0F su keyserver.linux.it
Giuseppe Coviello
2008-07-25 21:04:36 UTC
Permalink
2008/7/25 Joseph Vinegar <joe.vinegar-***@public.gmane.org>:
[taglio]
Post by Joseph Vinegar
Considerate inoltre che partendo da una licenza libera "forte",
eventualmente ha senso contrattare con qualcuno un'eventuale licenza
libera più debole (come la MIT) o addirittura una proprietaria a
pagamento (licenza multipla); se invece si parte da una debole, la
frittata è fatta.
Questo vale sia per rilasci di versioni successive (cambio di licenza)
che per distribuzione con versioni diverse attraverso canali diversi
(licenza multipla).
Mi ricorda vagamente il sapore dell'estorsione.
insomniac
2008-07-25 20:06:20 UTC
Permalink
On Fri, 25 Jul 2008 23:04:36 +0200
Post by Giuseppe Coviello
[taglio]
Post by Joseph Vinegar
Considerate inoltre che partendo da una licenza libera "forte",
eventualmente ha senso contrattare con qualcuno un'eventuale licenza
libera più debole (come la MIT) o addirittura una proprietaria a
pagamento (licenza multipla); se invece si parte da una debole, la
frittata è fatta.
Questo vale sia per rilasci di versioni successive (cambio di
licenza) che per distribuzione con versioni diverse attraverso
canali diversi (licenza multipla).
Mi ricorda vagamente il sapore dell'estorsione.
Non ho capito. Puoi spiegarti meglio?
--
Andrea Barberio

a.barberio-***@public.gmane.org - Linux&C.
andrea.barberio-qaNcByWzZlGGzLJY+***@public.gmane.org - Slackware Linux Project Italia
GPG key on http://insomniac.slackware.it/gpgkey.asc
2818 A961 D6D8 1A8C 6E84 6181 5FA6 03B2 E68A 0B7D
SIP: 5327786, Phone: 06 916503784
Giuseppe Coviello
2008-07-25 21:25:05 UTC
Permalink
Post by insomniac
On Fri, 25 Jul 2008 23:04:36 +0200
Post by Giuseppe Coviello
[taglio]
Post by Joseph Vinegar
Considerate inoltre che partendo da una licenza libera "forte",
eventualmente ha senso contrattare con qualcuno un'eventuale licenza
libera più debole (come la MIT) o addirittura una proprietaria a
pagamento (licenza multipla); se invece si parte da una debole, la
frittata è fatta.
Questo vale sia per rilasci di versioni successive (cambio di
licenza) che per distribuzione con versioni diverse attraverso
canali diversi (licenza multipla).
Mi ricorda vagamente il sapore dell'estorsione.
Non ho capito. Puoi spiegarti meglio?
Non credo che lo scopo della GPL sia quello di far guadagnare il più
possibile nel vendere il prodotto cambiandogli licenza,
insomniac
2008-07-25 20:32:00 UTC
Permalink
On Fri, 25 Jul 2008 23:25:05 +0200
Post by Giuseppe Coviello
Post by insomniac
Post by Giuseppe Coviello
Mi ricorda vagamente il sapore dell'estorsione.
Non ho capito. Puoi spiegarti meglio?
Non credo che lo scopo della GPL sia quello di far guadagnare il più
possibile nel vendere il prodotto cambiandogli licenza,
Evidentemente no, ma qui il discorso è completamente diverso. Si sta
cercando di rilasciare in maniera il più possibile libera un prodotto
sviluppato su una piattaforma non libera.

Inutile aggiungere dietrologia del tipo "potevano farlo con octave",
perché Margherita ha già espresso il suo desiderio di farlo per i
prossimi lavori.

Ciao,
--
Andrea Barberio

a.barberio-***@public.gmane.org - Linux&C.
andrea.barberio-qaNcByWzZlGGzLJY+***@public.gmane.org - Slackware Linux Project Italia
GPG key on http://insomniac.slackware.it/gpgkey.asc
2818 A961 D6D8 1A8C 6E84 6181 5FA6 03B2 E68A 0B7D
SIP: 5327786, Phone: 06 916503784
Joseph Vinegar
2008-07-28 13:24:31 UTC
Permalink
This post might be inappropriate. Click to display it.
Continue reading on narkive:
Loading...