Newsgroup: it.comp.software.tex
Titolo: Licenza Beamer: devo rilasciare anche il mio documento sotto GPL?

Beamer è una classe Latex che serve per fare presentazioni. Potete
trovarlo a 
http://sourceforge.net/projects/latex-beamer
Ora leggendo questa pagina evinco che beamer è sotto GPL. Per come vedo
io latex, quando io gli do in pasto un "documento" questo è
effettivamente un programma il cui output è il dvi/pdf etc.
A questo punto utilizzando Beamer sarei costretto a dare il sorgente
latex a chiunque ricevesse da me la presentazione in pdf.
Non solo. Di fatto quello che scrivo dovrebbe essere automaticamente
sotto GPL e non potrebbe essere rilasciato per esempio sotto determinate
Creative Commons.
Sinceramente trovo un po' surreale una cosa del genere, anche se
chiaramente legittima. Suggerimenti? Consigli?
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

effettivamente un programma il cui output è il dvi/pdf etc.
È un'interpretazione ardita.  Seguendo questo ragionamento, qualunque
documento scritto con un elaboratore di testi è un programma, il cui
output è pdf/ps ecc.

 chiaramente legittima. Suggerimenti? Consigli?
Direi che non è così. Sarebbe come dire che ogni immagine elaborata
con The Gimp dovrebbe essere rilasciata sotto GPL; che di ogni documento
scritto con OpenOffice andrebbe resa disponibile liberamente una copia. 
Secondo te è contrario alla licenza GPL usare OpenOffice per produrre 
documenti interni a un'azienda? Io direi proprio di no. Be', non so se
OpenOffice è sotto GPL, ma il discorso è lo stesso.
Il pdf che produci non è un prodotto derivato dai sorgenti di Beamer,
stai semplicemente usando il programma. Se produci una presentazione
usando M$ PowerPoint, diventa di proprietà M$ come la tua copia di
PowerPoint? Accipicchia, spero di non dare idee a Bill. ;-)
Prodotto derivato sarebbe una classe o un pacchetto che usi Beamer
o che ne sia una modifica. Tu, del codice di Beamer, non impieghi
manco una riga, se non le chiamate alle macro della classe (che
direi analoghe alle API). Per finire: un programma compilato con
gcc è necessariamente sotto GPL?
Direi di no, io sto scrivendo questo messaggio su un MacBook Pro,
che usa un sistema operativo proprietario, compilato con gcc.
Ciao
Enrico

 output è pdf/ps ecc.
In realtà vista la natura di Latex no. Tex è a tutti gli effetti un
linguaggio di programmazione (ed è pure turing completo). 
Il compilatore Tex accetta in input un sorgente tex e butta fuori
(facciamolo passare attraverso dvips) un sorgente postscript (ovvero un
altro formato eseguibile, non differente in questo da un compilatore che
prende un sorgente C ed emette un eseguibile x86).
Passare a Latex non è che cambia le cose da un punto di vista
concettuale. 
Ovviamente la licenza di Tex non conta nel determinare la licenza del
risultato. 
E probabilmente portebbe non contare quella di latex (che ad ogni modo è
sufficientemente libera da non porre problemi).
Ma quando io uso Beamer sto a tutti gli effetti usando del codice che
viene fondamentalmente incluso nel *mio* documento. E tutto insieme
viene compilato nell'eseguibile. La cosa mi è molto dubbia.


 che usa un sistema operativo proprietario, compilato con gcc.
E infatti se ci badi la libc ha una diversa licenza da gcc. Altrimenti
qualunque cosa venisse linkata con la libc di GNU dovrebbe essere pure
lei GPL.


 prende un sorgente C ed emette un eseguibile x86).
Con beamer usi pdflatex che butta fuori un pdf che non è un formato 
eseguibile.
Se usare Beamer ti crea tanti problemi, puoi usare altri ambienti per 
creare presentazioni.
Ciao
Matteo

viene compilato nell'eseguibile. La cosa mi è molto dubbia.
Non sono d'accordo, per questo motivo.
Non so se, come dici, il Tex è turing-completo, ammetto che sia così.
Anche in questo caso, tuttavia, è ben difficile descrivere un articolo
scritto in Latex come un programma.  Quando scrivo in Latex non faccio
niente di sostanzialmente diverso da quel che faccio con qualunque altro
elaboratore di testi.  E come con qualunque elaboratore di testi
sufficientemente potente posso fare quelle che comunemente in questo
ambito si chiamano "macro", cioè dei programmilli scritti in linguaggio
dedicato.  La presenza di macro *potrebbe* fare del mio testo un
programma, in effetti.
Ma qui la situazione è diversa: io uso un pacchetto esterno che fa delle
cose (implementa delle macro).  Per me utente è una libreria.  Ricadiamo
nel caso generale: a meno che tu mi faccia vedere che questo è un caso
particolare, la licenza della libreria non ha nulla a che vedere con la
licenza dell'output.

lei GPL.
Ma parti della libc sono incorporate nell'output, da quanto hai detto
non credo che sia lo stesso per Beamer.  Se invece è così, ci spieghi
come? 

 creare presentazioni.
Sto dando un occhio a prosper. Altro?
Fino ad ora ho usato chaksem. Molto basilare ma fa quello che mi serve,
ma magari c'č di meglio (ovvero prosper e beamer sono sicuramente
meglio, ma non sono ancora riuscito a far far loro quello che voglio).
Diciamo che a me basterebbe un affare che mi permette di descrivere
facilmente una "cornice" e uno sfondo per la slide, personalizzare un
attimo i colori del titolo (ma questo lo posso fare anche con macro
scritte a mano). Niente di piů, niente di meno.


 scritto in Latex come un programma. 
No. Un articolo in latex è certamente un programma. Semmai il punto
chiave è che l'output potrebbe *non* essere un lavoro derivato, ma
semplicemente l'output.
Pensandoci bene è più corretto pensare un sorgente latex come il
programma che serve all'interprete tex/latex per produrre un dato
documento in un dato formato, e che quindi tale documento è un "output",
non un lavoro derivato.
Sotto questa interpretazione sono certamente a posto.


 come? 
Beh in primo luogo uno potrebbe usare -src-specials e pezzo di sorgente
ci finirebbe dentro. Ma mi sembra che sia un caso limite.
Dovrei vedere se l'implementazione di \usepackage č analoga ad un
#include. Nel caso il mio sorgente sarebbe mischiato alla libreria e
dovrebbe essere pure lui sotto GPL.
Effettivamente posso vedere l'output come generato dal mio programma (e
latex come un interprete) invece che vedere latex come un compilatore (e
quindi l'output č un prodotto derivato, coperto dalla stessa licenza).
Sinceramente non saprei. 
Immagino che nessuno faccia storie e che l'autore di Beamer intendesse
appunto fare in modo che un altro cls che usasse come base Beamer
dovesse essere sotto GPL. Quindi che sia usabile anche per produrre
slides sotto CC o altra licenza a scelta (o nessuna licenza).


 creare presentazioni.
Sto dando un occhio a prosper. Altro?
Fino ad ora ho usato chaksem. Molto basilare ma fa quello che mi serve,
ma magari c'č di meglio (ovvero prosper e beamer sono sicuramente
meglio, ma non sono ancora riuscito a far far loro quello che voglio).
Diciamo che a me basterebbe un affare che mi permette di descrivere
facilmente una "cornice" e uno sfondo per la slide, personalizzare un
attimo i colori del titolo (ma questo lo posso fare anche con macro
scritte a mano). Niente di piů, niente di meno.
Ho impostato il follow/up visto che questo pezzo di discussione č IT
solo su it.comp.software.tex


 Sotto questa interpretazione sono certamente a posto.
Sei obbligato a rilasciare sotto licenza GPL ogni programma scritto
in Perl?
Ciao
Enrico

 in Perl?
Perl *non* necessariamente è sotto GPL.
Tuttavia se in un programma Perl (o Python) utilizzo una libreria sotto
GPL, devo rilasciare sotto GPL anche il mio programma.
È quello che succede usando per esempio PIL (in Python).


Sinceramente non saprei. 
Non c'è molta differenza fra un interprete e un compilatore.  Ma Latex
non crea un programma, come fanno un interprete o un compilatore.
Prende il tuo testo (input) e lo trasforma in qualcos'altro (output)
senza metterci del suo.  Di nuovo, non c'è analogia con la libc.

non un lavoro derivato.
Sì.

 linguaggio di programmazione (ed è pure turing completo). 
Io mi comporterei come nel caso del gcc: è sotto GPL, mette "cose sue"
nel binario, ma nessuno si sognerebbe di dire che gli eseguibili che
crea devono essere sotto GPL.

 se ne scrivano.
Questo solo se usi una definizione intuitiva di programma. Un sorgente
latex è precisamente un programma. È una sequenza di istruzioni in un
dato linguaggio che vengono eseguite da una macchina astratta e generano
dell'output.
Su questo non ci possono essere dubbi. I miei dubbi erano in poche
parole se dovessi considerare l'output di tex come un "derivato". E
ribadisco che da un punto di vista concettuale non esiste *nessuna*
differenza fra un compilatore latex -> postscript e uno C -> ASMx86.
Nel caso C -> ASMx86 usare una libreria (scritta in C) e sotto GPL fa si
che tutto il mio software diventi sotto GPL. 
Teoricamente non dovrebbe esistere nessuna differenza se uso una
libreria scritta in latex.
Solo che la cosa si complica in quanto effettivamente la GPL "funziona
male" con oggetti che non sono software. Ragion per cui è stata creata
la FDL e in seguito le CC. Ad ogni modo la GPL è applicabile anche
oggetti che non sono programmi (punto 0).
"The "Program", below, refers to any such program or work, and a "work
based on the Program" means either the Program or any derivative work
under copyright law: that is to say, a work containing the Program or a
portion of it, either verbatim or with modifications and/or translated
into another language. (Hereinafter, translation is included without
limitation in the term "modification".) Each licensee is addressed as
"you"."
Questo è tecnicamente esattamente quello che fa latex. Traduce un
programma (ma come vedi anche se non è un programma non cambia nulla) in
una cosa che è in un altro linguaggio (vuoi che sia postscript, pdf o
che).
Nota che nessuno dei due deve necessariamente essere un linguaggio
"eseguibile". E tantomeno turing-completo.
A questo punto arriviamo al punto chiave che chiude la discussione:
"The output from the Program is covered only if its contents constitute
a work based on the Program (independent of having been made by running
the Program). Whether that is true depends on what the Program does."
Questo è il punto che se avessi letto prima avrebbe chiuso la
discussione. 
Il pdf che genero è un lavoro derivato, perchè è *indipendente
dall'averlo fatto con il programma*. Per lo meno per come la vedo io.
È chiaro che il succo del ps/pdf è quello che dice in linguaggio umano,
non il meccanismo che ne descrive la visualizzazione (questo in genere,
immagino che un ps molto complesso e grafico, con grafica "calcolata"
potrebbe non finire in questo caso", ma questo sarebbe un caso limite di
un caso limite, e definitivamente non me ne frega una ceppa).
Però ribadisco: un sorgente latex *è* un programma. Sono tuttavia
convinto nel modo più totale che l'output di tale programma sia appunto
output e non derived work.


 crea devono essere sotto GPL.
Anche perchè la glibc *non* è sotto GPL proprio per questa ragione.


 senza metterci del suo.  Di nuovo, non c'è analogia con la libc.
Aspetta.
Punto uno quando io genero un postscript sto a tutti gli effetti girando
un altro programma. In secondo luogo leggendo la licenza GPL non è
necessario che questo coso sia un programma a sua volta. 
In ultima analisi il punto che chiude la questione (come ho spiegato
nell'altro post) è:
"The output from the Program is covered only if its contents constitute
a work based on the Program (independent of having been made by running
the Program). Whether that is true depends on what the Program does."


 Anche perchè la glibc *non* è sotto GPL proprio per questa ragione.
Mi sfugge che c'entra la glibc: l'output è creato da gcc o da beamer.
Prendono dell'input e generano dell'output. Quindi direi
spannometricamente che vale la stessa cosa per entrambi.

the Program). Whether that is true depends on what the Program does."
Secondo me il perché la questione va chiusa si può spiegare in un sacco
di modi.  Se a te piace questo in particolare, va benissimo :-)

 di modi. 
Ok. Li c'è scritto nero su bianco la risposta al mio dubbio.
Ovvero che 
(independent of having been made by running the Program)
direi che si applica al mio pdf in modo eccellente.


 spannometricamente che vale la stessa cosa per entrambi.
Beamer è più simile ad una libreria: è un pacchetto latex.


Visto da un'altro punto:
Se mi ricordo bene la GPL, non si puo' parlare di un lavoro derivato da
un'altro, se il "derivato" non ne contiene nulla. La GPL tratta la
distribuzione e non l'uso. Non e' quindi possibile riferire (link)
anche a librerie sotto GPL liberamente? Non le puoi distribuire, certo,
non possono diventare parte del tuo programma, gli utenti devono
ottenerle a parte. Ma non e' un link a una libreria (se non la
distribuisci col tuo programma) un semplice uso?
E quale parte di beamer contiene il tuo documento?
Ciao
Tomas