Változott a cdrecord licence

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ások

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 ...

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.

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?

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?

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.

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.