Sértett-e GPL-t a Microsoft Windows 7 letöltő eszköze?

November elején Rafael Rivera a Within Windows blogban arról írt, hogy gyanús dologra bukkant, amikor a Windows 7 USB/DVD Download Tool termék kódját túrta a Reflector segítségével. Ezt a letöltő eszközt a Microsoft tette elérhetővé október 22-én, hogy egyebek mellett segítse a netbook felhasználókat egyszerűen Windows XP-ről Windows 7-re váltani.

Rivera arról ír a blogban, hogy szerinte a Windows 7 USB/DVD Download Tool-ba a CodePlex-en hostolt, GPLv2 licenc feltételei szerint terjeszthető ImageMaster-ből emeltek át kódokat. Arra utal, hogy a Microsoft megsérthette a GPL egyes kitételeit. Például azzal, hogy nem biztosította, illetve nem kínálta fel a forráskódot, illetve saját licencfeltételeket toldott hozzá a stuff-hoz, tovább korlátozva a GPL biztosította jogokat.

A hír eljutott a Microsoft-hoz is. A ZDNet-es, Microsoft témában rendszeresen blogoló Mary-Jo Foley-nek azt mondta a redmondi cég egyik szóvivője, hogy eltávolították a letöltő eszközt a Microsoft Store-ból. Vizsgálják a problémát. A vizsgálat ideje alatt az eszközt nem lehet letölteni.

A részletek itt olvashatók.

Hozzászólások

Jaj, de nagyon meg vagyok lepve a legutóbbi balhé után. Gondolom most is "önszántukból" fogják megnyitni a kódot, mint legutóbb. Ja, hogy valamennyire a Windows 7 része? Akkor nem valószínű... :)

Hát ez csodás. ezt az ezközt kerestem, de nem tudtam hogy létezik.
Most mit olvasok? Hogy gpl miatt nem elérhető.

Csodásss

Nyilván, elvégre a nem tisztázott programrészletet teljesen kizárt, hogy egy microsoft méretű cég le tudná programozni. Ha nem lett volna meg gpl-ben, akkor bizony bele se fognak az egész projektbe.

Persze az is megeshet, hogy a néhány tizezer ms-os programozó közül az egyik, akinek részfeladata volt ezt megirni, lustaságból inkább leszedte a codeplexről az egyik rutint és megspórolt vele x órányi/napnyi melót magának.

De az első variáció nyilván valószinűbb.

Ezzel tökéletesen egyetértek. Ha az illető szándékosan csinálta, akkor paraszt, ha csak nem figyelt, hogy milyen lincense alatt van akkor hülye.

De azt állitani, hogy a gpl nélkül ez a ms termék nem született volna meg, eléggé vicces. Megszületett volna, csak valakinek x órával/nappal többet kellett volna dolgozzon.

Ez a darab program - tudod, amit most GPL sértés gyanújával visszavontak - a GPL-nek köszönheti közvetetten a megszületését, _ha benne van_ a GPL-es kód. Eddig tudsz követni?

A program más formában ugyanezzel a funkcionalitással és névvel megszülethetett volna GPL-es kód nélkül is. De az egy másik program.

Remélem segít.

--
trey @ gépház

> Ha x dolog y-nak köszönheti a megszületését, az a magyar nyelvben azt jelenti, hogy x nem született volna meg y nélkül.

Ha nem tudsz valamit, használd a guglit nyugodtan:

"Mészáros Péter áldozatos munkájának köszönhetően született meg az a dobosoknak szánt link-gyűjtemény,[...]"

"Berda József és Németh Kálmán barátságának köszönhetően született meg a Fáy présház felújításának gondolata, melyet rövid időn belül tett követett."

"Többek között az ő támogatásának köszönhetően született meg a Mattafix duó videóklipje[...]"

stb.

Mit is szeretnél mondani?
Az idézett mondatok közül szerinted melyik jelenti, hogy az alanyok nélkül is megtörtént volna az esemény? Segitek, egyik se.

Főleg, hogy már Trey is elkezdett terelni, hogy bár ez tényleg ezt jelenti, de ő úgy gondolta, hogy "ez" a program nem "az" a program, de azért még te is próbáld meg bebizonyítani, hogy "születését köszönheti" szófordulat nem azt jelenti amit... :))))

"Ha a nagyanyámnak farka lett volna..."

Az aktuális állítás szerint, a kifogásolt alkalmazás abban a formában létezik, amihez szükséges volt a GPL-es kód. Lehet h egy párhuzamos valóságban ez másképp van -- létezik az alkalmazás, mert nem a GPL-es kódot hazsnálta fel --, de sajnos max te élsz ott, és a jog sem ismeri (el) ezt a csavart.

if (keyword == "Imo" || keyword == "Microsoft") popcorn();

Szerintem szazaval vannak ilyen esetek, csak keveset vesznek eszre. Sajnos eleg sok olyan emberrel talalkoztam mar, aki programozonak hivta magat, "nagy" es "komoly" cegeknel dolgozott, de ha egy helloworldnel nehezebb problemaba utkozott, akkor Google, es az elso szembejovo forras leszed, atpofoz "kesz". A projektmanager orul, problema kipipal, ember megdicser, hogy milyen hamar kesz lett. Aztan meg ha valaki kopogtat a forrasert, akkor megy a felhaborodas, es a puff pofaraeses. (Es itt nem a Google meg az internet hasznalataval van a baj, mert minden epeszu ember hasznalja a munkajahoz, hanem a tobbivel.) Meg cikibb, ha ugyanezt egy "alvallakozo" kovette el, amire szinten van pelda. Meg viccesebb ha mindez egy felhasznalt static libraryben van... Na azt nem mossak ki az ugyvedek, az tuti. Szerintem a Microsoft is inkabb valami hasonlo csapdaba esett.

Magam is lattam, es akadalyoztam mar meg hasonlo esetet. (Nem csak GPL licensszel, de pl. egyedi licensszel, ami kb. "nonprofitra ingyen, forprofitra penzert" elvek menten epult fel, es siman bele akartak tenni a fizetos wareba, mert a LICENSE.TXT-bol csak a "free" szoig jutottak, a "for non-profit use"-ig mar nem.)

Es ez meg csak a "veletlen" GPL sertesek esete, amikor szimplan leszartak a kod eredetet, mondvan ami a Guglin/Bingben/neten van, ingyen van. A szandekos GPL sertesek esete inkabb az, amit szinten valaki emlitett a kommentekben, hogy felhasznalja az altala ismerten GPL forrast, es kiadja a binarist. Aztan mikor valaki kopog a forrasert, akkor leszedi az egeszet, es dorgedelmes nyilatkozatot tesz a szemet userrol, amelyik "tonkretette" a hosszas munkajat azzal, hogy a jogaival kivant elni. Na az ilyet kene a falu foteren kalodaba.

-=- Mire a programozó: "Na és szerintetek ki csinálta a káoszt?" -=-

Szerintem arra utalt, hogy ilyen méretű kód kimásolása nem jelent licenckötelezettséget. IANAL, de szerintem ilyet fair use-nak szoktak tekinteni, és nem tekintik szerzői jogsértésnek, ha nem tartja be az eredeti program licencét (már ha egyáltalán bizonyítható, hogy honnan vette).

Én úgy gondolom, hogy ha valaki valahonnan valamit __kimásolt__, az tartsa tiszteletben a licencet. Ne kiskapukat (de ez csak két sor volt) keressen, mert az a zavarosban halászás.

Egyébként ha már belenézett a kódba, az befolyásolhatta. NDA-s kódoknál is úgy van, hogy valaki a forrást nézi, dokumentálja, egy másik csapat - aki a kódot nem látta soha - implementál. Aki a kódot nézte, az nem vehet részt a fejlesztésben. Nem véletlenül.

--
trey @ gépház

Index cikk a témában.

És a feloldozást is megadja:

... A GPL-licenc feltételeinek megsértése egyébként mindennapos gyakorlat, mivel a gyártók a feszített ütemtervű termékfejlesztés során nem mindig szánnak időt a felhasznált szoftverek licenceinek nyilvántartására...

Szép példa arra, hogy hogyan korlátozza a GPL végérvényben a vállalatok lehetőségein keresztül a felhasználók lehetőségeit.
Nem szoktam licenctrollkodni, de a GPL-t utálom ilyen tekintetben :)

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

ezt is aláírom, de régimódi neveltetésem azt súgja nekem, hogy a szoftver a felhasználóért van. Szerintem ezt az elvet a GPL inkább gáncsolja, arra jó, hogy megoldásaik tekintetében elszigetelje egymástól a zárt és a nyílt kódokat, pedig legalább egy irányban működhetne az információáramlás.
Kód felhasználásánál ahol lehet, MIT vagy BSD licencet választok. Ki tudja mikor akarok mit csinálni utána a kóddal, és miért akarnak majd amiatt belémkötni…

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

> régimódi neveltetésem azt súgja nekem, hogy a szoftver a felhasználóért van

Kevered ezeket a dolgokat. A GPL nem a szoftverre, hanem a forráskódra vonatkozik. A forráskód meg nem a felhasználóért van, hanem a programozókért.

> pedig legalább egy irányban működhetne az információáramlás.

A "nyílt kód --> nyílt kód", az pont 1 irány.

> Ki tudja mikor akarok mit csinálni utána a kóddal, és miért akarnak majd amiatt belémkötni…

Butaság. Nyilván nem azért kötnek beléd, mert azt csináltál a forráskóddal amit akartál (== úgy módosítottad, ahogy akartad; a saját gépeiden úgy futtattad, ahogy akartad; stb.).

Kevered ezeket a dolgokat. A GPL nem a szoftverre, hanem a forráskódra vonatkozik. A forráskód meg nem a felhasználóért van, hanem a programozókért.
Jelen esetben a GPL licencű kódnak köszönhetően mégis sikerült megakadályozni, hogy a felhasználókhoz eljusson a kész program. Liberálisabb licenc esetén erről nem lenne szó. Tehát ha én felhasználóorientáltan gondolkodok és sutbavágom a szép ideákat, kerülöm a GPL-t, mert onnantól a kódom nem általánosan felhasználható.

A "nyílt kód --> nyílt kód", az pont 1 irány.
A nyílt kód -> Zárt kód meg még egy. Arról a még egyről beszéltem ;)

Butaság. Nyilván nem azért kötnek beléd, mert azt csináltál a forráskóddal amit akartál (== úgy módosítottad, ahogy akartad; a saját gépeiden úgy futtattad, ahogy akartad; stb.).
… Esetleg úgy publikáltam, ahogy akartam (pl. binárisban, ami a laikus, nem licenctroll felhasználóknak pont jó)?

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

> Jelen esetben a GPL licencű kódnak köszönhetően mégis sikerült megakadályozni, hogy a felhasználókhoz eljusson a kész program.

Nem tudom miről beszélsz, sehol sem olvasni (végleges) megakadályozásról. Ami akadályozás van az egyrészt ideiglenes, másrészt meg a Microsoft szabad döntése, nem pedig a GPL licenc alkalmazásából adódó kényszer.

> Tehát ha én felhasználóorientáltan gondolkodok és sutbavágom a szép ideákat, kerülöm a GPL-t, mert onnantól a kódom nem általánosan felhasználható.

A bezárttá váló nyílt kód nem általánosan felhasználható. De amúgy olyan licenc-et választasz a saját kódodnak, amilyet csak akarsz. Nekem csak annyi dolgom van vele, hogy tiszteletben tartsam, akkor is, ha nem tetszik a választásod.

> Esetleg úgy publikáltam, ahogy akartam

Más forráskódját úgy publikálod, ahogy a szerző(k) szeretné(k). Szólj, ha nem ugyanezt várod el a saját kódodra vonatkozóan is.

A bezárttá váló nyílt kód nem általánosan felhasználható.
Szerintem meg az a kód nem általánosan felhasználható, amelynél nem engedi meg a licenc azt, hogy zárt forrású termékbe építsem be.

Más forráskódját úgy publikálod, ahogy a szerző(k) szeretné(k). Szólj, ha nem ugyanezt várod el a saját kódodra vonatkozóan is.
Nem más forráskódjáról, hanem a saját magam által írt szoftverről beszélek. És GPL kód felhasználása esetén nem úgy publikálom, ahogy akarom, ti. elérhetővé kell tenni a forráskódot, ami meg nem mindig szerencsés.

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

> Szerintem meg az a kód nem általánosan felhasználható, amelynél nem engedi meg a licenc azt, hogy zárt forrású termékbe építsem be.

Kapok egy zárt forrású terméket, amibe nyílt kód lett bezárva. Ez a nyílt kód ugyebár már nem általánosan felhasználható.

> Nem más forráskódjáról, hanem a saját magam által írt szoftverről beszélek. És GPL kód felhasználása esetén

Ne kavarj, a saját magad által írt szoftverbe, a saját magad által írt GPL kód kerülhet legfeljebb, de azt meg úgy licenceled magadnak ahogy csak szeretnéd.

Kapok egy zárt forrású terméket, amibe nyílt kód lett bezárva. Ez a nyílt kód ugyebár már nem általánosan felhasználható.
Hogyne lenne? Letöltöd máshonnan, és felhasználod. Attól még, hogy a termék zárt, egyes részei lehetnek nyílt forrásúak, pont ezt szeretem a kevésbé restriktív nyílt forrású licencekben.

Ne kavarj, a saját magad által írt szoftverbe, a saját magad által írt GPL kód kerülhet legfeljebb, de azt meg úgy licenceled magadnak ahogy csak szeretnéd.
Ja ha a Microsoft saját maga által írt szoftverébe is saját maga által írt GPL kód került, nem értem, mi is volt a probléma. Szerintem nem én kavarok itt. :)
Ha írok egy operációs rendszert, amihez felhasználom a Linux kernel drivereit, akkor milyen licenc alatt adhatom ki pl.? Szerintem GPL, és nem is zárhatom be a kódomat. Következésképp inkább felhasználom az egyik BSD drivereit, mert ha kezdetben nyílt forrással is szeretném kiadni a szoftvert, talán valamikor be akarom zárni, amit meg a benne lévő GPL kód nem enged.

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

Ejj, ha a szoftver a felhasználóért van, akkor miért kér érte pénzt az írója? :) Ha meg pénzt kér, akkor nem csak a felhasználóért van, hanem az írójáért, kiadójáért, whatever.

A konkrét programért ugyan nem kér pénzt a kiadója (bár kétségtelenül azért tette közzé, hogy jobban fogyjon a Win7, de ez talán lényegtelen), viszont ha már úgyis ingyenes maga a tool, akkor nem túl sokból állna kiadni GPL licenc alatt az egészet. Tehát a 'GPL a hibás' ez esetben (is) eléggé átlátszó duma.

Mivel a felhasználó használ valamit, ami őérte van, és én írtam, szerintem nyugodtan lehet érte pénzt kérni. A gazdaság már csak ilyen.

Ha pedig érvelésed helyes volna, hogy ha már ingyenes valami, miért nem nyílt forrású, talán több GPL-es program lenne. Persze, tök jó a nyílt forrás meg szánsájn meg hepinesz, de egy kód zártságának ezer indoka lehet. Lásd pl. a Powerpoint Viewert. Vajon miért nem nyílt, pedig ingyenes? :)

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

Én egy szóval sem mondtam, hogy nem lehet érte pénzt kérni, így a vita ezen irányba terelése kissé céltévesztés. Ha úgy gondolod, bármi problémám is van azzal, hogy egyes szoftverek pénzbe kerülnek, félreértettél. A szoftverért kért pénz felemlegetése mindössze amiatt volt, mert te azt írtad: a szoftver van a felhasználóért. Nos, nem csak a felhasználóért van, hanem többek közt a szerzőjéért is, biztosítja mondjuk a megélhetését. A licenc pedig biztosítja azt (feltéve, hogy betartják), hogy a szoftver írója meghatározhassa, ki, hogyan húzhat hasznot az ő munkájából. Ha pedig a szerző azt akarja, hogy más csak úgy húzhasson hasznot a programból, hogy bizonyos terjesztési szabályokat betart, akkor ezt illik figyelembe venni, és ezért talán nem a GPL-t kell hibáztatni.

"Ha pedig érvelésed helyes volna, hogy ha már ingyenes valami, miért nem nyílt forrású..."

Ilyen érvelést nem írtam le, légy szíves, ha vitázol valakivel, légy figyelmesebb.

Nem általánosságban írtam, hogy ha ingyenes, legyen nyílt forrású, hanem itt és most a konkrét programmal kapcsolatban említettem meg, hogy ha már úgyis kiborult a bili, akkor nem lenne túl nagy szám kiadni az egész kódot GPL alatt. Mindenesetre határozottan örülök, hogy nem csak én gondoltam így, hanem a Microsoft is.

Tehat ha jol ertem akkor te minden sajat programodat bsd szeru megengedo licenc/public domain (mondjuk ez utobbi azt hiszem Magyarorszagon nincs) alatt adod ki. Ez derek de sajnos nem mindenki olyan onzetlen mint te, van aki (koztuk en is) sajat kozvetlen vagy kozvetett erdekeit nezve penzt akar latni a programjabol, vagy kodbeli hozzajarulasokat var el munkajaert cserebe.
Szoval teny, hogy sokan nem csak a felhasznalok erdekeit nezik - azaz minel jobbat adni minel olcsobban, lehetoleg ingyen.

u.i.: utolso mondatomhoz kapcsolodan mondjuk felmerul a kerdes, hogy vajon mennyi es milyen minosegu ingyen vagy relative olcsobban elerheto program lenne manapsag - ez a felhasznalok erdeke -, ha nem lennenek (L)GPL szeru copyleft licencek, csak a mar nagyon regota letezo public domain es a bsd szeru megengedo licencek.

- Use the Source Luke ! -

Ilyet szerintem sehol sem írtam. Azt írtam, hogy ha felhasználok egy kódot, akkor milyen licencűt használok – mely esetben ha csak lehet, kerülöm a GPL-t, mivel engem erősen korlátoz. Például nem engedi meg számomra, hogy zártan terjesszem a programomat, ami meg része lehet az üzleti modellemnek.

Az, hogy strong copyleft nélkül mennyi lenne az ingyértkód, jó kérdés. Eddig is többször már egy vállalat nyílt forrásúvá kódot a közösségre bízva a fejlesztést, eddig is rengeteg megengedő licencű kód volt, szerintem ha kevesebb is lenne, de lenne.

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

tehat a proprietary kodert penzt kell fizetni, es nem hasznalhato fel nyilt programban (legfeljebb iszonyat sok penzert). A GPL-ert
kodot kell visszaadni, es nem hasznalhato fel zart programban. Na most azt mondod az elso jo, te is irnal olyat (fizetni erte gondolom kevesbe szivesen), a masodik viszont nem jo, mert a felhasznalo ellen van. Csak en nem ertem a logikat ebben?

- Use the Source Luke ! -

Az első jó. A második rossz szerintem. Viszont talán ne korlátozzuk le proprietary/GPL kódra, mivel ezer más jobb licenc van a GPL-nél. Megsúgom, arról szól egyébként a szál. Lásd pl. BSD-szerű licencek, amit nyíltban és zártban is felhasználhatsz, és ilyen szempontból több lehetőséget biztosít.

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

Viszont talán ne korlátozzuk le proprietary/GPL kódra, mivel ezer más jobb licenc van a GPL-nél. Megsúgom, arról szól egyébként a szál.

en azt ertem, hogy az a bajod hogy a GPL licences kodhoz ha hozzairsz 3 sort es legalisan terjeszted akkor azt ertheto okokbol nem sokan fogjak penzert toled megvenni, mig public domain/bsdl-es cucc eseten jobbak az eselyeid a meggazdagodasra.
csak arra probaltam ravilagitani, hogy az altalad teljesen elfogadhato dolognak tartott proprietary licenc legalabb annyira korlatoz - kicsit mas modokon - mint az altalad felhasznalo ellenesnek titulalt GPL. Sot, a proprietary licenc jobban korlatoz, mert az a terjesztes mellett a hasznalatra is gyakran tartalmaz megkoteseket (es fizetned kell a szoftverert), mig a GPL a hasznalatot nem is szabalyozza, csak a terjesztest (es penzt sem kell fizetned a szoftverert, maximum az adathordozo/masolas arat).

- Use the Source Luke ! -

Érdekel a halált, hogy hogy gazdagodok meg a kódomból. Engem a lehetőség érdekel, hogy ha akarom, zártan terjesztem. Ezt a GPL nem engedi.
Természetesen korlátoz a proprietary licenc. De míg itt mindenki isteníti a GPL-t, ilyen esetekben észre kell venni, hogy az ugyanúgy korlátoz. Nem a felhasználót, hanem a vállalatot korlátozza. És ha a vállalatot korlátozza, akkor nem olyan szolgáltatást nyújt, mint korlátozás nélkül tenné.
Szerencsétlen felhasználó csak használni szeretné a szoftvert, megveszi a megfelelő felhasználási feltételeket hozzá, és minden okés. Korlátozva van, ez tény, de pont annyit vett meg, amennyit akart. Forrást nem kap, de esetleg benne van a szerződésében, hogy a vállalat testreszabja számára a szoftvert.

Azt a marhaságot meg kéretik elfelejteni, hogy a GPL programért nem kell pénzt fizetni. Mondjuk inkább úgy, hogy sok olyan van, amiért nem (amíg nem kérsz supportot/egyebet…). Mint ahogy a proprietary cuccokból is rengeteg ingyenes van.

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

> Szép példa arra, hogy hogyan korlátozza a GPL végérvényben a vállalatok lehetőségein keresztül a felhasználók lehetőségeit.

Butaság. Jelen esetben a felhasználók lehetőségeit a Microsoft korlátozta azzal, hogy eltávolította a letöltő eszközt a Microsoft Store-ból. A GPL nem kötelezte erre őket.

> Nem szoktam licenctrollkodni, de a GPL-t utálom ilyen tekintetben :)

Butaság. Utáld inkább a szerzőket, akik a GPL választják.

Tekintve, hogy a Microsoft nem nyithatta meg és helyezhette GPL alá a forráskódot valamilyen okból (legyen az céges policy, vállalati know-how kiadásának veszélye, imázsromlás, whatever, nem érdekes), a GPL licencű kóddal a kód szerzője a Microsofton keresztül korlátozta a felhasználókat.

És igen, emiatt utálom a szerzőket is. Mindenkit utálok, na. :)

—-—-—
int getRandomNumber() {
	return 4;//szabályos kockadobással választva.
}		//garantáltan véletlenszerű. xkcd

> Szvsz nem volt más választása.

Én fent hagytam volna a kódot amíg a vizsgálat tart. Ezzel csak pár nappal növekszik meg az az idő, amíg a kód jogot sérthet, a cég ezzel nem kerül rosszabb helyzetbe.

> Ha fent hagyja a binárist, adnia kell a kódot is. A kódot meg mint fentebb említettem, nem adhatja ki valami miatt.

Le vagy maradva: "GPLv2 alatt ki fogják adni a jövő héten az eszköz forráskódját (és a binárisokat is)".

teljesen mindegy, hogy ott hagyja-e a binárist, vagy eltávolítja. egyszer már ott volt. forráskód nélkül. megsértette a gpl-t. innentől kezdve miért is kellene leszednie onnan?

ha nem veszel parkolójegyet, a parkolóőr megbüntet, akkor utána már hiába veszel. ha ezután egyből elállsz onnan az autóddal, akkoris ugyanúgy szabálytalanul parkoltál, mintha otthagyod amíg nem fizeted ki a büntit mondjuk.

(nem ide)
_____________
烏邦土 - 乾屎橛