GNU GPL kérdés

Fórumok

Egy linuxos ismerosommel vitatkoztunk a multkor egy elmeleti kerdesen:
GNU GPL liszenszel ha en irok egy programot, penzert arulom, akkor a forrast csak azoknak a felhasznaloknak kell rendelkezesre bocsajtanom, akik megvettek a szoftveremet?
Abban egyetertettunk, hogy ha megveszi az elso vevom, neki odaadom a forrast, o pedig azt csinal vele amit akar, mondjuk tovabbertekesiti 0 penzert.
Namost nekem fele semmilyen kotelezettsegem nincs, csak a tolem "vasarlo" felhasznalo fele, ugye?
Tehat csak azert mert gpl-es a szoftverem, meg nem kell barki altal szabadon hozzaferhetove tennem, vagy igen?

Elore is koszi a valaszokat (olvastam mind az angol, mind a magyar forditast, de erre a konkret kerdesre nem talaltam valaszt, vagy csak kiszurta a szemem).

Tyrael

Hozzászólások

Nem kell, mert senki nem kötelezhet arra, hogy az elérhetővé tétel költségeit magánszemély vagy cég állja - feltéve, hogy erről nem nyilatkozik másképp :)

Csak hogy ne nyissak én is külön topikot:

Van egy program, amit GPL v2 alatt adtak ki.
Én ezt a programot szeretném átalakítani, gyakorlatilag 50 %-a teljesen le lesz cserélve a kódnak.
Az eredeti fejlesztő több helyen is feltüntette a program eredeti nevét, kopirájtot, elérhetőséget és azt is, hogy ezek nem eltávolíthatóak.
Szerintetek valóban nem lehet egy kivételével minden hivatkozást eltávolítani a forrásra, illetve a szerzőre vonatkozólag?

A félreértés elkerülése végett:
-A program forráskóddal együtt továbbra is a GPL V2 alatt lenne kiadva.
-A program mellett a forrás, valamint az eredeti program binárisa és forrása is elérhető lesz.

Sajnos ez a licenszértelmezés nem erősségem...

az eredeti szerző(k) neve nem távolítható el... Sehonnan sem.

Ha módosítasz rajta, az származtatott munka, de mindenképpen GPL alatt kell kiadni. Magát a programot csak akkor kell közzétenned, ha akarod, ugyanis belső használat esetén nincsen gond azzal, ha módosítod....

Tehát az nem megoldás, hogy az 50 soros kopirájt információkat (amiket melesleg több esetben is a copyleft() függvény hív meg :) ) leegyszerűsítsem és saját magamat is belerakjam ugyanide, az eredeti szerző mellé?
Félreértés ne essék, nem magamnak akarom a babérokat, csak baromságnak tartom azt, hogy mindenhol magamat és a szerzőt reklámozzam.

Nekem is lenne egy-két GPL es kérdésem:
1. egy általam írt GPL -es program binárisának/forrásának letöltését köthetem regisztrációhoz? (Természetesen ingyenes reg. nick + email)

2. Ha írok egy prograomot, és GPL liscen-elem, akkor lehet olyan megkötést adni, hogy ha valaki módosítását terjeszti, akkor köteles engem erről értesíteni.

3. "A programmal együtt kellett, hogy érkezzen egy példány a GNU Általános Közreadási Feltételek dokumentumából is": ez azt jelenti, hogy http://www.gnu.org/licenses/gpl.html ezt egy file-ba a program mellé kell tenni, vagy elég a programban/forrásban ezt a linket megadni.

4. "SEMMIFÉLE GARANCIA NEM JÁR; A részletes
tájékoztatáshoz ezt kell begépelni: show w."
itt elég az, hogy részletes tájékoztatást ad a GNU GPL?

Bocsánat ez egy kicsit hosszú lett.

1. Lehetséges, bár értelmetlen, mert sok ember elriaszt a letöltéstől, valamint mások regisztráció nélkül is továbbterjeszthetik. A bináris a forrás nélkül nem terjeszthető, fordítva, a forrás a bináris nélkül igen.

2. Nem lehet ilyen megkötést adni.

3. A GPL-t mint fájlt bele kell tenni a terjesztésbe, a link nem elég.

4. Elég.

Szerintem az 1. pont is ütközik a GPL-lel, hiszen ekkor már a programhoz való hozzájutás valamilyen feltételhez van kötve, vagyis nem "szabad" szoftver. Kérni természetesen itt is lehet:
"Amennyiben használja a programot, kérem regisztráljon! A regisztráció semmilyen módon nem feltétele a program használatának, pusztán statisztikai célokat szolgál."

--
Debian - The "What?!" starts not!

Elolvastam és ez nem az amire gondolsz, figyelj!

Does the GPL allow me to require that anyone who receives the software must pay me a fee and/or notify me?
A kérdés az, hogy kérhetem-e, hogy bárki (értsd: mindenki) értesítsen engem vagy fizessen nekem, ha megkapja a programot. Erre a válasz természetesen nem. De azt megtehetem, hogy csak annak adom oda, aki fizet vagy regisztrál nálam, persze akinek "eladtam" a programot, az nyugodtan továbbadhatja másnak anélkül én tudnák róla.

A 3. kérdés kapcsán:

Az UHU-Linuxban pusztán helytakarékossági okokból a gyakori licenceket összegyűjtöttük egy közös (licences nevű) csomagba, és a build rendszer ha azt látja, hogy valamelyik csomag szállítana ilyen fájlt, azt kicseréli szimbolikus linkre, és betesz a csomagba egy függőséget a licences csomagra. Tehát például a bash csomagunkban a COPYING fájl helyett egy COPYING szimlink van, ami mögött (ha a csomagot jól telepítetted, tehát függőségeivel együtt) megtalálható maga a licenc.

Na most akkor ez így lehet hogy nincsen rendben???

Természetesen sehol nem terjesztünk ilyen csomagot úgy, hogy a licences csomagot ne terjesztenénk vele együtt. Bár például 3rd party csomagoló emberekre (lelkes UBK tagok) már ez sem teljesül: ők úgy terjesztik a csomagot, hogy az általa igényelt licences csomag máshonnan ugyan, de triviálisan fellelhető.

Ezzel az a bajom, hogy nem emlékszem, hogy a GPL definiálná a "fájl" fogalmát, definiálná a "csomag" fogalmát, és a kettőt valahol összerendelné.

Mert ugyebár mi van, ha minden megsemmisül, még egy adott .uhu csomagnak bizonyos részei is, köztük a licenc, de más fájlok még visszanyerhetők?

A "csomag, mint fájl" megközelítéstől lépjünk hátra egy lépést. Mi van akkor, ha egyéni csomagokat nem, csak .iso image-et teszünk ki a netre? Akkor az .iso image az egy fájl, és benne van a licenc. Persze trükkös kliens ebből is virtuálisan ki tudja hámozni a csomagot, akár azon belül az egy szem bináris fájlt anélkül, hogy az egész iso-t letöltené.

Most viszont előre lépjünk egyet a "csomag, mint fájl" megközelítésből. Mi van, ha mondjuk a csomagok fájljai egyenként is letölthetők tőlünk? Mert hiszen letölthetők, csak ügyes ftp-kliens kell hozzá, amelyik vfs-ként ki tudja hámozni a távoli .tar.gz-ből.

Egy szóval ki és hol mondta, hogy a "fájl" az a granularitási egység, amelyen belül kell lennie a cuccnak és licencének? Hogy definiáljuk a "fájl" fogalmát, ha a vfs is bejöhet a játékba?

És most játsszunk el picit a tömörítési algoritmussal. Nem emlékszem, hogy írna valamit a GPL arról, hogy milyen formátumban kell közzétenni a cuccot. Egy .tar.gz vagy .deb vagy hasonló bináris formátum dokumentálva van általa, és adott kiterjesztéshez kötelező az adott formátumot választani? Én írhatok akár egy olyan tömörítő programot is, amelyik a GPL szövegét le tudja tömöríteni 1 byte-ba, cserébe más dolgok tömörített verziói lesznek picit nagyobbak a gzip-hez képest. Ez a tömörítő elvi síkon semmiben nem különbözik mondjuk a gzip-től. Tehát akár az UHU csomagjairól is elmondható, hogy benne van a GPL licenc szövege tömörítve, csak megfelelő programmal kell kitömöríteni. Ezt a tömörítő programot még nem írtam meg, de ha ezen múlik, a tar és gzip forrásából kiindulva pillanatok alatt meg tudnám írni.

Még egy utolsó: ha minden megsemmisül, olyan szinten, hogy nem lehet beszerezni a GPL szövegét sehol a világon, akkor nem fog érdekelni, ha megsértem a GPL-t. ;-)

Félre ne értsd: nem kötekedni akarok, csak picit beindult az agyműködésem... :-)

Képtelenség szabályokkal lefedni az élet minden területét. Úgy vélem, hogy az általad vázolt esetre nincs kimondott szabály (azt tudjuk, hogy az URL megadása nem jó, de ez nem ez az eset). Biztos ki lehet kérni az FSF állásfoglalását, ha érdekel a véleményük. De inkább maradjunk annyiban, hogy nem ez napjainkban a legfontosabb GPL-sértési probléma. :)

Ha csak úgy adtok ki a kezetek közül programot, hogy a "vevő" minden esetben megkapja licencet is, akkor rendben. De ha letudják tölteni úgy a csomagot, hogy nem kapnak belőle információt, arra vonatkozóan, hogy milyen jogai vannak a programmal kapcsolatban, akkor az nem jó.

> De ha letudják tölteni úgy a csomagot, hogy nem kapnak belőle információt, arra vonatkozóan, hogy milyen jogai vannak a programmal kapcsolatban, akkor az nem jó.

Napjaink legnépszerűbb letöltő protokolljai tudtommal mind egy szálig támogatják azt, hogy egy távoli fájlnak csak az általad kívánt részét töltsd le. Ekkor pedig sok esetben csak egy megfelelő kliensen múlik, hogy letölti-e a GPL-t is, vagy csak a többit. Ahhoz, hogy ezt megtiltsd, olyan fájlformátumot és olyan protokollt kellene kidolgozni és a GPL-ben kötelezni, ami technikailag nem teszi lehetővé, hogy letöltsd a tényleges cuccot anélkül, hogy azt megelőzően a GPL-t letöltenéd. Ilyesmiről pedig szó sincs benne...

1. Igen, de aki letölti az terjesztheti regisztrálatlan harmadik személynek.
2. Nem. Benne van a GPL-ben, hogy semmilyen plusz megkötés nem adható a licenchez. Amit tehetsz, hogy módosítod a licenc szövegét, szóval gyakorlatilag egy saját, de GPL-hez nagyon hasonló licenc alatt adod ki, bár az inkompatibilis lesz a GPL-lel.

3. A felhasználó tisztában kell, hogy legyen a jogaival. Legbiztosabb, ha a licenc szövegét a programmal együtt terjeszted. Bár a link is elmegy, de lehet, hogy pl. 5 év múlva már nem nem lesz érvényes a link, vagy "véletlenül" a GPLv4-re mutat, amikor te eredetileg GPLv3 alatt adtad ki a kódot meg hasonlók. Szóval nem rossz a link, de jobb a fájl.

4. Ha jól értem itt arról van szó, hogy interaktív vagy gui-s programoknál nem árt, ha tájékoztatod az felhasználót, hogy GPL-es a program meg nincs garancia. Nézz meg pár grafikus programot, Help/About...-ban gyakran találsz licenc információt. Te is valami hasonlót csinálj, ha ilyen a program, ha nem ilyen, akkor semmi.

Egy lehetséges GPL sértés ügyében érdeklődnék a fórumtársaknál, mert mielőtt elkezdeném verni a tam-tamot szeretnék megbizonyosodni az igazamról.

Történt, hogy műszereinkhez plc vagy normál számítógép helyett ipari beágyazott rendszert kezdtünk el használni. Konkrétan a
Moxa cég termékét: UC-7420-LX (ARM processzoros). A beágyazott rendszert linux kernellel szállítják (pontosabban az lx változatot). A problémám, ami felmerült, az az, hogy szerettem volna rá egy kernel tűzfalat felépíteni (iptables), hogy védve legyen az esetleges elárasztások vagy más felesleges forgalmak ellen (tulajdonképpen egy kis forgalomkorlátozást szerettem volna rá kialakítani).
Ehhez a gyártótól szerettem volna kikérni az általuk használt kernel forrást, illetve a gyárilag használt konfigurációt (fordítási paramétereket), hogy újra tudjam azt forgatni netfilter támogatással.
Erre végül is hosszú-hosszú idő után kaptam egy választ, hogy megkaphatom röpke 200USD-ért. Egy kicsit ez zavar, mert ez szerintem bőven meghaladja a gpl-ben definiált fizikai továbbítás felyében történő fizetés normális árát.
Érdeklődnék a kedves fórumtársaknál, hogy ez mennyire lehet igaz, illetve ha verem egy kicsit a tam-tamot, akkor szerintük mennyi esélyem lehet a forráskód normális megkapására. (Egyébként az, hogy linuxos, illetve hogy ebből kifolyólag nyílt forráskódúnak kellene lennie, fontos szempont volt annó a kiválasztáskor.)

Zavard össze a világot: mosolyogj hétfőn.

Ha nem kapod el a forrást a binárissal együtt, akkor vagy szabadon elérhetővé kell neki tenni (pl. feltenni az internetre), vagy csak annyit kérhet, amennyibe neki kerül, hogy a megfelelő adatmennyiséget eljuttassa hozzád. Persze ha a bináris átvetele óta már hosszú idő eltelt, akkor már nem feltétlenül köteles átadni a forrást, de ez a GPL verziótól is függhet.

Akkor az Ubuntu megsérti a GPL-t, amikor nem küld forrás CD-ket, csak binárist?

Nem így van. Mivel a Linux kernelről volt szó, ezért itt a GPLv2 érvényes. A forráskód átadása a 3. pont alatt van kifejtve, és három opció van felsorolva:
a) odaadod a forrást a binárissal együtt
b) adsz egy legalább 3 évig érvényes ajánlatot, hogy odaadod a kódot csupán az átadás költségéért (pl. CD ára + postaköltség)
c) nem kereskedelmi úton elérhetővé teszed a kódot (pl. felteszed az internetre, pl. Ubuntu is így bizosítja a forráscsomagokat)

Nekem lenne pár kérdésem:

1. A program GPL-es cuccot is felhasznál, akkor az egész forrást oda kell adni, vagy csak azt a részt, ami felhasználja?
2. Az egész forrás odaadása esetén a vevő azt csinál amit akar? Akár ingyen is osztogathatja a forrást, amit lefordítva bárki használhat?

Kb. ennyi egyelőre.

---
"A pokolba vezető út is jó szándékkal van kikövezve ..."

Akkor a 2. pont miatt azt is mondhatom, hogy az első vevővel kell kifizettetnem az egész fejlesztés költségeit, mert utána már kérdéses a bevétel?

Mert ha nem is ingyen osztogatja, de olcsóbban tudja adni, mivel neki nem került költségbe a fejlesztés. Ha 80%-ért tovább adja, akkor is megéri tőle venni és ő is jól járt, mert lényegében 20%-ért van neki a program. A következő megint 20%-kal olcsóbban adja ...

Vagy rosszul közelítem meg a dolgot?

---
"A pokolba vezető út is jó szándékkal van kikövezve ..."