Fwd: Re: Esercizio sulle licenze per un software java

6 views
Skip to first unread message

Davide

unread,
Jan 14, 2012, 9:30:58 AM1/14/12
to jugtaa

Ciao, qualcuno di voi ha da aggiungere qualcosa a questa discussione su java e licenze opensource?

---------- Forwarded message ----------
From: "Chris Mair" <ch...@1006.org>
Date: Jan 13, 2012 12:38 PM
Subject: Re: [Lugbz-list] Esercizio sulle licenze per un software java
To: "Linux User Group Bozen-Bolzano-Bulsan" <lugbz...@lists.lugbz.org>


> Supponiamo di avere un progetto java opensource e di avere al suo
> interno una classe java
> chiamata ClasseOpenSource.java.
>
> Supponiamo che un'altra persona, il cattivo, stia facendo un progetto
> proprietario.
>
> Nel codice del cattivo ci sono i seguenti 3 casi:
>
> 1) class ClasseProprietaria extends ClasseOpenSource {}
> 2) class ClasseProprietaria { Object o =
> Class.forName("ClasseOpenSource").newInstance(); } (esempio jdbc o
> plugin)
> 3) class ClasseProprietaria { ClasseOpenSource c = new ClasseOpenSource(); }
>
>
> Supponiamo ora che il codice open source sia LGPL, GPL o AGPL.
>
> In quale combinazione caso / licenza e possibile ridistribuire il software?
>
> A me viene in mente:
>
> LGPL: 1,2,3
> GPL: 2?

Qui MySQL AB (ora Oracle) dice NO invece:
http://www.mysql.com/about/legal/licensing/commercial-license.html

> AGPL: ?
>
> Aiuti?


Poi e` una discussione puramente accademica. Se Oracle
e le aziende per cui lavoriamo tu o io (peggio, perche` sono
self-employed :) non sono d'accordo sull'interpretazione di
una licenza, chi pensi che abbia l'ultima parola?


Bye,
Chris.


_______________________________________________
http://lists.lugbz.org/cgi-bin/mailman/listinfo/lugbz-list

Tiziano Lattisi

unread,
Jan 14, 2012, 10:34:43 AM1/14/12
to jug...@googlegroups.com
Direi che la differenza tra 2 e 3 è un tecnicismo che permette di considerare
ClasseOpenSource come un "prerequisito" del software proprietario, in quanto
"non contiene alcun derivato" di ClasseOpenSource, e quindi non serve che
quest'ultima sia LGPL.
Personalmente sarei tentato di definirla "gabola", non mi piace.

Se ClasseProprietaria viene distribuita via rete come servizio, allora anche
per il caso GPL valgono i casi 1, 2, 3, perché non c'è l'obbligo di
ridistribuzione
dei sorgenti.

Per la AGPL invece sì, quindi direi sempre solo 2.

Sbaglio?

> --
> You received this message because you are subscribed to the Google Groups
> "JUG Trentino Alto Adige Suedtirol" group.
> To post to this group, send email to jug...@googlegroups.com.
> To unsubscribe from this group, send email to
> jugtaa+un...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/jugtaa?hl=en.

--
-- Tiziano Lattisi

Mario Alexandro Santini

unread,
Jan 15, 2012, 2:02:13 AM1/15/12
to jug...@googlegroups.com


2012/1/14 Davide <d...@vide.bz>

Ciao, qualcuno di voi ha da aggiungere qualcosa a questa discussione su java e licenze opensource?

---------- Forwarded message ----------
From: "Chris Mair" <ch...@1006.org>
Date: Jan 13, 2012 12:38 PM
Subject: Re: [Lugbz-list] Esercizio sulle licenze per un software java
To: "Linux User Group Bozen-Bolzano-Bulsan" <lugbz...@lists.lugbz.org>


> Supponiamo di avere un progetto java opensource e di avere al suo
> interno una classe java
> chiamata ClasseOpenSource.java.
>
> Supponiamo che un'altra persona, il cattivo, stia facendo un progetto
> proprietario.
>
> Nel codice del cattivo ci sono i seguenti 3 casi:
>
> 1) class ClasseProprietaria extends ClasseOpenSource {}
> 2) class ClasseProprietaria { Object o =
> Class.forName("ClasseOpenSource").newInstance(); } (esempio jdbc o
> plugin)
> 3) class ClasseProprietaria { ClasseOpenSource c = new ClasseOpenSource(); }
>
>
> Supponiamo ora che il codice open source sia LGPL, GPL o AGPL.
>
> In quale combinazione caso / licenza e possibile ridistribuire il software?
>
> A me viene in mente:
>
> LGPL: 1,2,3
> GPL: 2?

Qui MySQL AB (ora Oracle) dice NO invece:
http://www.mysql.com/about/legal/licensing/commercial-license.html


In realtà credo sia un po' più articolato.

In caso la lib opensourece sia LGPL.

1 devi utilizzare la LGPL
2 e 3 la licenza che vuoi,ma se distribuisci la libreria LGPL resta tale.

GPL
tutti i casi devi usare la GPL o equivalente pari alla versione della lib opensource o superiori.

AGPL
E' lo stesso che la GPL, ma c'è un vincolo anche nell'utilizzo.
Se implementi un servio, per esempio, la GPL non ti impone nulla, mentre la AGPL sì.

 

Poi e` una discussione puramente accademica. Se Oracle
e le aziende per cui lavoriamo tu o io (peggio, perche` sono
self-employed :) non sono d'accordo sull'interpretazione di
una licenza, chi pensi che abbia l'ultima parola?


Direi il tribunale.

Ma se una battaglia non puoi vincerla, allora non combatterla.
Chiama Oracle e chiedi se il tuo caso va bene. Se dicono "No", scegli un altro DB. ;)

 

Bye,
Chris.



--
Ciao,
      Mario

Davide

unread,
Jan 17, 2012, 11:08:25 AM1/17/12
to jug...@googlegroups.com
Il 15 gennaio 2012 08:02, Mario Alexandro Santini
<alexm...@gmail.com> ha scritto:

>> > 1) class ClasseProprietaria extends ClasseOpenSource {}
> In caso la lib opensourece sia LGPL.
>
> 1 devi utilizzare la LGPL

Ciao, un momento questo punto dibattuto a me non sembra invece cosi poco chiaro.
Partiamo da degli esempi:

A) Swing: ClasseProprietaria extends Panel
B) Android: ClasseProprietaria extends Activity

Se io uso open-jdk e android, che mi risultano open source, devo per forza
rilasciare il mio codice open source? io direi proprio di no ...

Mario Alexandro Santini

unread,
Jan 17, 2012, 11:42:40 AM1/17/12
to jug...@googlegroups.com


2012/1/17 Davide <d...@vide.bz>

Ciao, un momento questo punto dibattuto a me non sembra invece cosi poco chiaro.
Partiamo da degli esempi:

A) Swing: ClasseProprietaria extends Panel
B) Android: ClasseProprietaria extends Activity

Se io uso open-jdk e android, che mi risultano open source, devo per forza
rilasciare il mio codice open source? io direi proprio di no ...


Hai ragione, solo se modifichi la libreria devi redistribuire.

Se è LGPL la 1, la 2 e la 3 puoi usare la licenza che vuoi per il tuo codice.



--
Ciao,
      Mario

Davide

unread,
Jan 17, 2012, 4:25:36 PM1/17/12
to jug...@googlegroups.com
Il 17 gennaio 2012 17:42, Mario Alexandro Santini
<alexm...@gmail.com> ha scritto:
>>

>> Se io uso open-jdk e android, che mi risultano open source, devo per forza
>> rilasciare il mio codice open source? io direi proprio di no ...
>>
>
> Hai ragione, solo se modifichi la libreria devi redistribuire.
>
> Se è LGPL la 1, la 2 e la 3 puoi usare la licenza che vuoi per il tuo
> codice.

Adesso questa cosa mi ha troppo incuriosito! openjdk e' distribuito con
GPL+linking exception. Credo che la "linking exception" sia quello che
ci salva dal mettere tutti i nostri bei programmi java open source
(visto che qualsiasi oggetto extends un java.lang.Object)!!!

Federico

unread,
Jan 17, 2012, 4:44:08 PM1/17/12
to jug...@googlegroups.com
Ciao a tutti

>>A) Swing: ClasseProprietaria extends Panel
>>B) Android: ClasseProprietaria extends Activity
>>
>>Se io uso open-jdk e android, che mi risultano open source, devo per forza
>>rilasciare il mio codice open source? io direi proprio di no ...


Dall'esempio 'A' potrei dedurre che anche se rilascio in GPL un qualsiasi 'prassita' può SEMPRE estendere le mia ClasseGPL senza modificare la libreria e tenersi il codice proprietario. Assurdo, la GPL sarebbe carta straccia.

Credo che la differenza tra estendere Panel e estendere la ClasseGPL sta nel Classpath Exception [1],[2], che può essere presente o meno in fondo alla GPL di un programma.
"When GNU Classpath is used unmodified as the core class library for a virtual machine, compiler for the java languge, or for a program written in the java programming language it does not affect the licensing for distributing those programs directly." 
Quindi ad esempio se la ClasseOpen è rilasciata con GPL+Classpath Exception posso usarla in qualsiasi programma, a patto di non modificare la ClasseOpen stessa. Se invece ClasseOpen è rilasciata con GPL posso usarla o estenderla a patto di rilasciare in GPL.

Ho capito bene?

Saluti
Federico








Mario Alexandro Santini

unread,
Jan 17, 2012, 5:24:37 PM1/17/12
to jug...@googlegroups.com


2012/1/17 Davide <d...@vide.bz>


Adesso questa cosa mi ha troppo incuriosito! openjdk e' distribuito con
GPL+linking exception. Credo che la "linking exception" sia quello che
ci salva dal mettere tutti i nostri bei programmi java open source
(visto che qualsiasi oggetto extends un java.lang.Object)!!!


Immagino di sì. :)

Ma la domanda riguardava LGPL. :)

Secondo me, se non ci sono cause di forza maggiore, distribuire il proprio lavoro in GPL o LGPL a seconda di cosa si fa, non è male.

Io purtroppo non posso farlo spesso perché sono dipendente e ciò che faccio è di proprietà della società per cui lavoro, non mio.
Ma ho avuto modo di partecipare a progetti Open Source ed è tutta un'altra musica.
:)



--
Ciao,
      Mario
Reply all
Reply to author
Forward
0 new messages