Változott a cdrecord licence

 ( trey | 2004. augusztus 23., hétfő - 9:34 )

A cdrecord kétségtelenül népszerű cd író program. Számos operációs rendszeren használható, linuxos körökben pedig szinte az egyetlen komolyabb korongégető szoftver. Ezért sokakat érint az a hír, hogy Jörg Schilling (a szoftver írója) megváltoztatta a cdrecord licencét.

Az egész egy hosszú LKML szállal kezdődött. A thread-ben számos cdrecord-dal kapcsolatos hibát tárgyaltak meg a felek, de felmerült az is, hogy Schillingnek és néhány Linux disztribútornak alapvetően eltérő nézeteik vannak arról, hogy hogy is kéne a cdrecord-nak működnie.

A probléma több okból is fakad. Az egyik, hogy Schilling elkészíti a cdrecord eredeti verzióját, amelyet publikál. A Linux disztribútorok ezt beépítik a terjesztéseikbe. Ki így, ki úgy. Például a Slackware nem nagyon patcheli az eredeti szoftvereket, mert azt a nézetet vallja, hogy jó úgy, ahogy a szerző megírta. Ha nem lenne úgy jó, akkor a Slackware nem tenné be a terjesztéseibe. Tiszta sor. Viszont vannak olyan (kereskedelmi) Linux disztribútorok, akik nagyban függnek (anyagilag) a felhasználóiktól, és igyekszenek a felhasználók kéréseit maradéktalanul teljesíteni. Ebből kifolyólag számos patchet tesznek hozzá az olyan szoftverekhez, mint például a cdrecord. Sajnos a patchekkel együtt újabb bugok is kerülhetnek a szoftverbe, és a felhasználók nagy része (nem mind) ahelyett, hogy a Linux disztribútoroknak jelezné a hibát, az upstream-et kezdik bombázni a bugreportokkal. Emiatt Schillingnek rengeteg olyan bugreporttal kell foglalkoznia, amivel ő nem tud mit kezdeni, mert az ő verziójában olyan funkciók nincsenek. A másik probléma, hogy a cdrecord hivatalos verziója nem tud DVD-t írni. A felhasználók már többször kérték Schillinget, hogy építse bele a DVD írási képességet a cdrecord-ba, de ez elmaradt. Rossz nyelvek szerint ennek nem technikai akadályai vannak, hanem az ok az, hogy Schilling ajánl egy kereskedelmi cdrecord verziót is (pénzért), amely tud DVD-t írni, és ezért nem teljesíti a kérést. A felhasználók szomorúak.
Itt jönnek ismét képbe a Linux disztribútorok. Ők nem szeretik, ha a felhasználók szomorúak, ezért olyan cdrecord forráskódot (és binárist) készítenek, amelyek számos helyen patchelve vannak, és persze tudnak DVD-t írni.

Nem tudni, hogy Schilling melyiket unta meg, de egy biztos, hogy a cdrecord licence változott. A cdrecord 2.01a36-es alpha verziójától a cdrecord.c file az alábbi sorokat tartalmazza:

[...]
/*
* You are not allowed to modify or remove the following code.
* I am sorry that I am forced to do things like this, but defective
* versions of cdrecord cause a lot of work load to me and it seems
* to be impossible to otherwise convince SuSE to cooperate.
* As people contact me and bother me with the related problems,
* it is obvious that SuSE is violating subsection 6 in the preamble of
* the GPL.
*
* The reason for including a test against SuSE's private
* distribution environment is only that SuSE violates the GPL for
* a long time and seems not to be willing to follow the requirements
* imposed by the GPL. If SuSE starts to ship non defective versions
* of cdrecord or informs their customers that they would need to
* compile cdrecord themselves in order to get a working cdrecord,
* they should contact me for a permission to change the related test.
*
* Note that although the SuSE test is effective only for SuSE, the
* intention to have non bastardized versions out is not limited
* to SuSE. It is bad to see that in special in the "Linux" business,
* companies prefer a model with many proprietary differing programs
* instead of cooperating with the program authors.
*/
[...]

A cdrecord.c több helyen is tartalmaz olyan sorokat, amelyek arra utalnak, hogy nem lehet a forrást módosítani, például:

[...]
* You are not allowed to modify or remove the call to "linuxcheck()".
* I am sorry that I am forced to do things like this, but defective
* versions of cdrecord cause a lot of work load to me and it seems
* to be impossible to otherwise convince SuSE to cooperate.
[...]

vagy

[...]
/*
* Begin restricted code for quality assurance.
*
* Warning: you are not allowed to modify or to remove the
* Copyright and version printing code below!
* See also GPL § 2 subclause c)
*
* If you modify cdrecord you need to include additional version
* printing code that:
*
* - Clearly states that the current version is an
* inofficial (modified) version and thus may have bugs
* that are not present in the original.
*
* - Print your support e-mail address and tell people that
* you will do complete support for this version of
* cdrecord.
*
* Or clearly state that there is absolutely no support
* for the modified version you did create.
*
* - Tell the users not to ask the original author for
* help.
*
* This limitation definitely also applies when you use any other
* cdrecord release together with libscg-0.6 or later, or when you
* use any amount of code from cdrecord-1.11a17 or later.
* In fact, it applies to any version of cdrecord, see also
* GPL Preamble, subsection 6.
*
* I am sorry for the inconvenience but I am forced to do this because
* some people create inofficial branches. These branches create
* problems but the initiators do not give support and thus cause the
* development of the official cdrecord versions to slow down because
* I am loaded with unneeded work.
*
* Please note that this is a memorandum on how I interpret the GPL.
* If you use/modify/redistribute cdrecord, you need to accept it
* this way.
*
*
* The above statement is void if there has been neither a new version
* of cdrecord nor a new version of star from the original author
* within more then a year.
*/

/*
* Ugly, but Linux incude files violate POSIX and #define printf
* so we cannot include the #ifdef inside the printf() arg list.
*/

A program ennek ellenére továbbra is GPL marad. A licence szerint:

"This software is under GPL with the following limitations:

- You may not modify certain copyright messages in cdrecord.c See cdrecord.c for further information.

- You may (with a few exceptions) not modify the location of the configuration file /etc/default/cdrecord. See defaults.c for further information."

Az nagyon-nagyon hosszú LKML szál itt kezdődik. A dologról ír az LWN.net is itt.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Naiv a csako ... Szerintem mar bebizonyitotta a kozelmult, hogy sokkal nagyobb project-nel se lehet megtenni hogy szepen megszigoritjak a licensz felteteleket, mert akkor tuti a legutolso free verziot forkolni fogjak es elkezdik tovabbfejleszteni. Jo es eleg meglepo pelda erre az XFree, ahol szerintem a szerzok se vartak hogy ilyen fontos es alapveto (foleg ugye desktop felhasznalas szempontjabol) software eseten azt fogjak mondani a disztribuciok hogy "koszonjuk ez igy mar nem kell". A cdrecord erzesem szerint megiscsak kissebb project mint az XFree ...

Masreszt azt sem ertem hogy akkor most MI a licensze a cdrecord-nak ugyanis a "nem lehet ezt modositani" (ami allaitolag eddig is benne volt? vagy rosszul ertettem?) nem hinnem hogy osszefer a GPL-el ...

Ugy fog jarni mint az XFree...:D

Na akkor most kéne rágyúrni a libburn projektre végre.

http://icculus.org/burn/

Üdv
Godot

Nekem a Sarge alatt levo cdrecord verziok mar eleve "megnyertek" a tetszesemet. Ugyebar a /usr/bin/cdrecord a kov. shell script:

#!/bin/sh
VERS=`uname -r`
case "$VERS" in
2.0.*|2.2.*)
exec cdrecord.shm "$@"
;;
*)
exec cdrecord.mmap "$@"
;;
esac

Ettol a K3B neha nem detektal letezo cdrecordot ami szinten funny. Erre jon ra a letezo dvdrtools csomag ami nem mas mint a dvd irasi kepesseggel megaldott cdrecord....

A dvdirasra felkeszitett cdrecord licence Schilling urtol megujithato es pl az xcdroast szepen kezeli...

Van már valami másik CD-író könyvtár, jött is róla hír kb. egy éve, de sajnos nem tudom a nevét. Ott az volt a cél, hogy mindenféle csilli-villi felületbe egyszerűen beépíthető legyen, mert a cdrecord-dal ez csak nehézkesen oldható meg. Ha jól rémlik, azt (L)GPL alatt adták ki.

Amúgy meg nem csodálom, ha elege van a jajongásból, ha a SuSE baromságai miatt neki írnak.

kettővel előző hozzászólásban volt róla szó :) libburn

Nem ertem,ezzel mit akart ezzel elerni! Nem teszi bele a dvd iras kepesseget, helyette irjunk dvd-t M$-on? Mennyire jovedelmezo lehet neki a dvd irassal felturbozott verzioja,mennyire veszik meg? Gondolom nem sokan,ez a problemaja! Ez is ugy fog jarni mint az XFree.
Mas projekt megcsinal egy hasonlo jo cd-dvd iro progit, aztan majd azt fogjak hasznalni,nem az ovet.
GPL-ben ez megengedett,hogy ugy adja ki,hogy nem modosithato? Vagy milyen a liszence?

Volt egy Burgner nevű kezdeményezés, anno bookmarkoltam a honlapjukat (http://burgner.tuxfamily.org/), de ott most nincs semmi.

Egyetertek, a disztribek elmehetnek a francba a patcheikkel. Lasd marillat es az o hozzaallasa, meg hogy a SuSE-val inkabb kivetettuk a disztribjukbol az MPlayert, mint hogy MPEG4 meg MP3 nelkuli hasznalhatatlan szart terjesszenek...

Gabu, azert ezt igy altalanossagban nem gondolhatod komolyan. Nem viccbol vagy szorakozasbol fektetnek minden disztrib keszitoi rengeteg emberorat a patchekbe amik bekerulnek.. Nyilvan azert keszulnek, hogy minel jobb vegeredmenyt kapjon a felhasznalo, illetve egyes esetekben egyeb kulso korulmenyek is kenyszeritoek lehetnek, pl szabadalmak (ami ugye vonatkozik az mpeg4-re es az mp3-ra).

Egyebkent ajanlom elolvasni a threadet, bar baromi hosszu. En mar amikor elkezdtek meguntam, csak most lattam a cikk miatt hogy milyen hosszan folytatodott :)
A "linuxosok" es Jorg kozott regota nagy az ellentet, evek ota tele van a linux fikazasaval a cdrecord doksija es forrasa. Most megint felszinre kerultek az ellentetek, az elejen meg remenykedtem benne hogy talan elsimulnak most. A baj az, hogy Jorg hihetetlenul arrogans, es teljesen istennek kepzeli magat, amit o mond az szent es serthetetlen, semmi attol elterot nem fogad el. Tenyleg eleg par levelebe beleolvasni es hamar kiderul.

A susera meg a tobbi disztribre pedig azert haragszik, mert egyreszt betettek a dvd patchet, masreszt kiszedtek a forrasbol par linuxot (alaptalanul) fikazo patchet...

Szerinted pl nem helyes betenni a dvd iras patchet, inkabb ne tudjanak a userek dvd-t irni?

http://burgner.sourceforge.net/

Ez lehetett az?

Igen, itt a hupon volt róla hir egy éve
http://hup.hu/modules.php?name=News&file=article&sid=4228

bocs, mi a fenének patchelni a cdrecordot, ha ott a dvdrtools?
Jorg hozzáállása pedig teljesen érthető, a disztribek megfosztják a fejlesztés lehetőségétől, mert a felhasználók hülye (disztrók által összegányolt feature-ök) bugreportjaival kell foglalkoznia

Emberileg (mondjuk) ertheto, szoftver licenc jogi szempontbol baromsag. Ha nem tetszik neki, hogy modositjak a kodjat, akkor adja ki mas licenc alatt. A GPL mar csak ilyen. Joga van barkinek modositani. Ha licencet valt meg elashatja a szoftveret. A sikeres GPL-es projektekben a siker egyik kulcs a szoftver licence.

Es a sikeres nem-GPL projektekben akkor vajommi?

Attol fugg mi a licence. Ha szabad szoftver licenc az mindig vonzo. Ellenben ha olyan licencet csinal, ami megtiltja a kod modositasat, akkor sok ember le fog lepni.

BTW: Ti miert nem tudtatok az MPlayer licencet meg dualra se megvaltozatni? Mert akkora volt az ellentabor (GPL fanok), hogy mar nem lehetett volna belole jol kijonni. Tevednek?

"dvdrtools is a fork of cdrtools"... es pont azert celszeru inkabb a cdrtools-t patchelni hogy ne legyen ertelmetlenul es total foloslegesen forkolva csak a dvd iras support miatt...

A disztribek pedig nem fosztjak meg Jorg-ot semmitol, azt leszamitva, hogy senki nem szereti az anyazo, ertelmet, hulye, egyebkent pedig a usereket osszezavaro es megteveszto, teljesen felesleges warningokat, ugyhogy ezeket kipatchelik szepen belole...

Kerlek mielott azt irod hogy "(disztrók által összegányolt feature-ök) bugreportjaival kell foglalkoznia", inkabb nezd meg elobb a disztrok cdrtools csomagjait, meg olvasd el az lkml threadet. Nem szeretnem ragozni a dolgot, igy csak azt az aprosagot emlitenem most meg, hogy Jorg egy dolgot sem tudott felhozni, amit elkefelt volna a suse vagy a tobbiek...

Gabu ;-) Nade azt nezd am hogy itt pont NEM arrol van szo, mint az mplayer-es peldanal: ott a disztributorok adtak egy lebutitott mplayer-t a felhasznaloknak (bar ezert okolni nem lehet oket mert pl felnek attol hogy mondjuk software patent ugyekbe keverednenek stb), a developer team ezt meg ugye nem komalta (vegulis ez is ertheto). Itt viszont pont az ellenkezoje igaz: a szerzo NEM akar dolgokat beletenni mint pl DVD iras, szandekosan "butan" akarja tartani, es nehany disztribucional mar ilyen jellegu patch-ek figyelhetoek meg. De ez utobbirol szo van itt, csak olvasd vegig a thread-et.