Szabad szoftver

A Wikipédiából, a szabad enciklopédiából

A szabad szoftver (idegen kifejezésekkel free software, software libre vagy libre software) olyan szoftver, amelyet a felhasználó:

  • tetszőleges céllal, tetszőleges kívánalmak szerint futtathat
  • működésében tanulmányozhat, és igény szerint módosíthat
  • másolatok által szabadon terjeszthet, segítve ezzel a közvetlen környezetében élőket
  • módosítás esetén szintúgy továbbterjeszthet, lehetővé téve, hogy egy egyedi változtatással együtt járó haszonból egy nagyobb közösség is részesedjen.

A szabad szoftver kifejezés tehát a szoftver felhasználásával kapcsolatos szabadságjogokra utal.[1] A szabadságjogok a szoftverhez írásban kiadott licencszerződéssel garantálódnak. Gyakorlatiasabb értelemben tehát, szabad szoftver az a szoftver, aminek a licence garantálja a fent említett szabadságjogokat.

Több szabadon felhasználható licencsablon is teljesíti ezeket a követelményeket. A szabad szoftver fogalmának megalkotója, Richard Stallman elkészített egy ilyen licencet, melyet bármely szoftver szerzője alkalmazhat, aki szabad szoftverként kívánja programját közzétenni. Ez az ún. General Public License, mely az idők során több változáson is keresztülment.[2]

A szintén Richard Stallman főszereplésével létrejövő, szabad szoftverek fejlesztéséért, terjesztéséért, a mozgalom népszerűsítéséért működő Free Software Foundation folyamatosan minősíti az ismertebb licencsablonokat, hogy azok megfelelnek-e a szabad szoftverrel szemben támasztott kritériumoknak.

Egyéb ismérvek[szerkesztés]

Fontos megjegyezni, hogy a szabad szoftver kifejezés nem jelenti kötelezően a szoftver ingyenességét is (bár a legtöbb közismert szabad szoftver ingyenesen beszerezhető és használható). Elvi szinten bárki bármennyiért árusíthatja a kérdéses programokat; hogy szabad szoftver maradjon, az egyetlen feltétel, hogy garantálja a négy szabadságjogot. Szabad szoftverért való fizetés gyakorlata alakulhat ki ott, ahol például a felhasználó nem tudja a programot magának lefordítani, szüksége van kézikönyvre, esetleg CD-n vagy DVD-n szeretné a szoftvert megkapni, vagy terméktámogatásra van szüksége. Az is elképzelhető, hogy valaki egyedi fejlesztéssel, testreszabással, adott hiba kijavításával, adott funkció beépítésével bíz meg egy programozót vagy céget.

Általánosságban igaz az, hogy a fent említett négy szabadságjog együttes megléte által válhat csak egy szoftver szabad szoftverré, és az is, hogy a program tanulmányozása, megváltoztatása és fejlesztése a forráskód közzététele nélkül nem valósulhat meg, így a szabad szoftverek forráskódja publikusan mindig hozzáférhető.

Nem számítanak szabad szoftvernek se a freeware, se a shareware programok, melyek általában ingyenesen hozzáférhetők és terjeszthetők, ám forráskódjukba nem lehet betekintést nyerni és megkötésekkel élhetnek a használhatóságra vonatkozóan.

A szabad szoftver fogalmának története[szerkesztés]

1983 előtt[szerkesztés]

A számítógép-felhasználók számára az 1950-es évektől az 1970-es évek elejéig az volt a megszokott, hogy a szabadon hozzáférhető szoftverek szabadságjogokkal járnak együtt. A szoftvereket egyéni felhasználók és hardvergyártók általánosságban közkinccsé tették, utóbbiak örömmel fogadták, ha valaki programot írt termékeikhez, mert az általuk gyártott hardver így vált mindinkább hasznossá és jobban kihasználttá. Felhasználói és szolgáltatói szervezetek (mint amilyen a SHARE) alakultak ki, hogy a szoftverek cseréjét elősegítsék.

Az 1970-es évek elejére ez az állapot megváltozott: a szoftverköltségek drasztikusan emelkedni kezdtek. A piac szereplői felismerték, hogy a szoftverek írásáért és fenntartásáért az emberek hajlandóak fizetni. Az 1970-es évekre a független szoftvereket gyártók és a saját hardvereikhez szoftvereket író vállalatok lettek a szoftverpiac egymással versengő szereplői. Utóbbiak pénzt direkt nem kértek a megírt programokért, de hardveráraikba beépítették annak költségeit. Az egyik ilyen gyártó az IBM volt. Az Egyesült Államok vád alá helyezte a céget, később megállapítva, hogy ez a magatartás versenyellenes[3](megerősítve azt is, hogy a szoftverár nyílt felszámítása, a szoftverért való pénz kérése a követendő példa).

Míg néhány szoftver mindörökre ingyenes maradt, a fizetős programok száma határozottan emelkedett. Az 1970-es évek végére és az 1980-as évek elejére a szoftveripar lépést tett annak érdekében, hogy az arra képes felhasználók többet ne tanulmányozhassák vagy alakíthassák át az általuk profitábilis programokat: zárttá tették a forráskódot, csak a lefordított, bináris másolatokat adták el. Végül az 1980-ban az Egyesült Államokban a szerzői jogi törvényeket kiterjesztették a számítógépprogramokra is.

1983. szeptember[szerkesztés]

1983. szeptember 27-én Richard Stallman elektronikus üzenetet küldött két Unixszal foglalkozó hírcsoportba, ezzel útjára indítva a GNU Projektet. Az akkor az MIT Mesterséges Intelligencia Laboratóriumban működő, korábban az EMACS szerkesztő megalkotásával is komoly hírnevet szerzett Stallman azt írta a közösségnek:

„...meg fogok alkotni egy komplett Unix-kompatibilis operációs rendszert, amit GNU-nak (GNU Nem Unix) fogok hívni, és ingyen fogom adni mindenkinek, aki használni tudja.”[4]

Stallman a megszorító szoftverlicencekkel és a szoftvervásárláskor érvénybe lépő tovább nem adási záradékokkal nem értett egyet.[5] A tradicionális hackeretika ugyanis megkövetelte a fejlesztés alatt lévő programok egymással való megosztását. Az egyetemen töltött időről, majd a GNU projekt indoklásával kapcsolatban a következőket írta:

„<akkoriban> ha bárki egy egyetemről vagy bármilyen cégtől fel akarta használni a programjainkat, boldogan hagytuk. Ha azt láttad, hogy valaki egy szokatlan és érdekes programot használ, mindig megkérhetted, hogy láthasd a forráskódot, vagyis megnézhetted, megváltoztathattad, bekebelezhetted bizonyos részeit, hogy új programot csinálj belőle... Az era új számítógépei, mint amilyen a VAX vagy a 68020 volt, saját operációs rendszert használtak, és egyik se volt ingyenes. Még ahhoz is tovább nem adási szerződést kellett aláírni, hogy a futtatható programot megkapjad. Ez azt jelentette hogy az első dolog, ami megtörtént, amikor egy számítógépet kezdtél használni, hogy megfogadtad: nem fogsz a környezetedben élőkön segíteni... A szabály, amit a fizetős szoftvergyártó cég megalkotott, a következő lett: "Ha megosztod az ismerőseiddel, akkor kalóz vagy. Ha bármi változást akarsz a programon, kérj meg minket, hogy megtegyük.”[6]

Ahhoz, hogy a számítógép valamennyi programja garantálja majd az általa alapvetőnek tartott szabadságjogokat (használat, megosztás, tanulmányozás, módosítás), a számítógép legalapvetőbb programját, az operációs rendszert is meg kellett írni. Ez lett tehát Stallman célkitűzése.

1984. január[szerkesztés]

1984 januárjában indul csak meg a GNU operációs rendszer fejlesztése. Később, mint ahogy Stallman írta:

„A GNU Projekt tulajdonképpeni története több módon is eltér a kezdeti tervektől. Például a kezdet 1984 januárjáig tolódott. A szabad szoftver filozófiai sarokkövei pedig évekkel későbbi időkig nem lettek letisztázva.”[7]

1985. március[szerkesztés]

1985 márciusában Stallman megnevezi a GNU projekt lényegét és céljait a GNU MANIFESTO-ban. Sokat idéz az 1983. szeptember 27-én írt leveléből, de ki is egészíti azt. Szembenéz azokkal a felvetésekkel és kérdésekkel, amit egy kívülálló tenne fel a Projekt kapcsán, majd megválaszolja őket (pl. Szabad szoftver esetén lehet-e szoftverfrissítésre számítani, van-e támogatás? Mit tegyen, aki versenyképességét fenn akarja tartani a többi céggel szemben és ezért választana fizetős operációs rendszert?).[8]

1985. október[szerkesztés]

1985 októberében megalapul a Free Software Foundation, amiről 1986 februárjában Richard Stallman úgy számol be, mint:

„A Free Software Foundation azért jött létre, hogy megszüntesse a programok másolásával, megosztásával, megértésével, módosításával kapcsolatos megkötéseket. A ‘Free’ szó a nevünkben nem az ingyenességre utal, hanem a szabadságra. Először is a szabadságra, hogy másolhasd a programot és átadhasd valakinek ismerőseid közül, akik ugyanúgy használhatják, ahogy magad is. Másodszor a program megváltoztatásának szabadságára, ami által irányíthatod a működését, ahelyett hogy a működés irányítana téged. Éppen ezért, a forráskódnak hozzáférhetőnek kell lennie.
A Foundation a fizetős szoftverek helyébe tehető szabad, de azokkal kompatibilis programok fejlesztésével dolgozik azon, hogy ezt a szabadságot megadja számodra. Elsősorban egy az Unixszal felülről kompatibilis integrált szoftverrendszernek, a GNU-nak az összeállításán fáradozunk. Ha kiadjuk, mindenki szabadon másolhatja és megoszthatja, valamint a forráskódját is elérhetővé tesszük; ez által új dolgokat tanulhatsz az operációs rendszerről, testre szabhatod a saját gépedhez, fejlesztheted, és kicserélheted változtatásaidat másokkal.”[9]

A Free Software Foundation által minősített licencek[szerkesztés]

A Free Software Foundation számos szoftverlicencet megvizsgált és minősített aszerint, hogy a kiadott szoftverhez garantált felhasználói jogok szabad szoftverré teszik-e a programot. Szabad szoftverlicenc esetén megvizsgálja az alapítvány azt is, hogy az adott licenc alatt kiadott forráskódokat együtt lehet-e használni az általuk alkotott és ajánlott GNU General Public License-szel publikált forráskódokkal. Amennyiben erre lehetőség van, azt mondják, hogy a licenc kompatibilis a GPL-lel.

Ahhoz, hogy egy szoftverlicenc szabad szoftverű minősítést kapjon, a definíciós részben megadott négy alapjogot kell biztosítania, de nem kötelező tekintettel lennie más szerződésekkel való kompatibilitásra, és nem kell, bár élhet is kötelező megkötésekkel a szabad szoftver módosításából létrejövő további szoftverek licencelésére, közzétételi szabályaira és a programokból létrejövő haszonszerzésre.

Amelyik licenc előírja a licencelés megőrzését a módosított programkódokra is (hogy a szoftver változatai is szabadok maradjanak), azokat angol szójátékkal copyleft vagy share-alike licenceknek nevezzük. A BSD licenc ún. gyenge copyleft licenc, ugyanis a módosított kód egészére nem követeli meg az eredeti licencet, ahogy a módosított forráskód közzétételét sem, ezért könnyedén beépíthetők zárt (nem nyílt forráskódú) programokba. A GNU General Public License és GNU Lesser General Public License úgynevezett erős copyleft licencek: minden módosításra az eredeti licenc kell, hogy vonatkozzon (illetve az LGPL kód kivételesen GPL-ként is kiadható). Az LGPL programok annyi kedvezményt tartalmaznak a zárt programgyártók irányába, hogy a zárt programok meghívhatják az osztott LGPL-es programkönyvtárak függvényeit futásuk során.

A szabad szoftverek és nyílt forráskódú szoftverek viszonya[szerkesztés]

A szabad szoftver és a nyílt forráskódú szoftver egymással nem rokonértelmű kifejezések. A nyílt forráskódú szoftvereknek tíz követelménynek kell megfelelniük,[11] míg a szabad szoftvereknél négy kritérium van. Általában igaz, hogy a szabad szoftver a maga négy kritériumával kielégíti a nyílt forráskódú szoftver mind a tíz kritériumát, de nem minden nyílt forráskódú szoftver tudja visszafelé megszerezni a szabad szoftver minősítést is. Richard Stallman példaként említi az Open Watcom-ot, melynek forráskódja ugyan nyílt, viszont nem engedélyezi a módosítások elvégzését.

A nyílt forráskódú szoftvereket fejlesztő programozók arra helyezik a hangsúlyt, hogy a forráskódnak végig nyíltnak kell maradnia, és be kell tartani a programozás során egy fejlesztési modellt. Nézetük szerint a nyílt forráskódú szoftverekhez kapcsolódó fejlesztési modell teszi jobbá a nyílt forráskódú programokat minden más hasonló funkciójú szoftvernél. Másként fogalmazva a fejlesztési modell teszi a nyílt forráskódú szoftvereket, melyeknek célja, hogy legyőzzék fizetős vetélytársaikat.

A szabad szoftvereket készítő programozó szintén közzéteszi a forráskódot, de szemben a nyílt forrású szoftverek készítőivel nem gondolják, hogy csak a nyílt forráskódú szoftverekre jellemző fejlesztési modell eredményezhet kiemelkedő programkódokat. Egy szoftvert a szabadságjogok tiszteletben tartása tesz szabad szoftverré, és a szabad szoftver mozgalom legfőbb célkitűzése nem az, hogy jobbak legyenek vetélytársaiknál (bár természetesen jobbak akarnak lenni), hanem hogy a felhasználói szabadság mindvégig megmaradjon.

Richard Stallman gondolatkísérlete szerint ha valaki egy, a számítógép-felhasználói szabadságot korlátozó szoftvert kezdene megalkotni, akkor a nyílt forráskódú programok filozófiája nem tiltaná meg, hogy programfejlesztők egy ilyen program létrehozásán dolgozzanak, mert céljuk, hogy a fejlesztési modelljüket betartva jobbat alkossanak, mint más fejlesztési modellt követő fizetős cégek. A szabad szoftver mozgalom aktivistái ilyenben viszont nem vennének részt, mert a felhasználói szabadság fenntartásának célja képezi tevékenységük alapját.[12]

Jegyzetek[szerkesztés]

Fordítás[szerkesztés]

Ez a szakasz részben vagy egészben a Free software című angol Wikipédia-szócikk History című fejezete ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel.

Források[szerkesztés]

További információk[szerkesztés]

Kapcsolódó szócikkek[szerkesztés]