GNU GPL

Linux.fista
Versio hetkellä 12. maaliskuuta 2009 kello 17.36 – tehnyt Heikki (keskustelu | muokkaukset) (→‎GPL pähkinänkuoressa: viilailua)
Siirry navigaatioon Siirry hakuun
Linux.fi-wikissä artikkelit käsittelevät yleensä aihettaan siltä osin, kuin se koskee Linuxia ja avoimia/vapaita ohjelmistoja. Yleisluontoisemman artikkelin tästä aiheesta löydät tietosanakirja Wikipediasta.

GNU GPL eli GNU General Public License on yleisin avoimen lähdekoodin ohjelmistoissa käytetty lisenssi. Nykyään käytössä on useimmiten GPL:n versio 2, mutta kesäkuussa 2007 julkaistuun kolmosversioon ollaan monissa projekteissa siirtymässä. Lisenssin uusi versio on periaatteiltaan sama kuin aiemmatkin, mutta se tukkii joitakin porsaanreikiä, joita edellistä lisenssiversiota kirjoitettaessa ei huomattu. Lähinnä ns. "anti-tivoization"-pykälän vuoksi esimerkiksi Linuxin ydin ei ole ainakaan toistaiseksi siirtymässä GPL:n kolmanteen versioon.

GPL on ns. copyleft-lisenssi. Sen alla lisensoidusta ohjelmasta pitää aina olla saatavilla lähdekoodi, ja ohjelmaa voi vapaasti käyttää mihin tahansa tarkoitukseen, muokata ja levittää edelleen (myös kaupallisesti). GPL kuitenkin vaatii, että ohjelmaa ja siihen perustuvia muita ohjelmia levitetään GPL:n alaisuudessa.

GPL pähkinänkuoressa

Itse lisensiteksti on kohtuullisen pitkä, vaikkakaan ei hankalampiselkoinen kuin yleiset kaupalliset EULA-sopimukset. Tavalliselle käyttäjälle riittää usein seuraava yhteenveto:

  • Ohjelmaa saa vapaasti käyttää ja tutkia
  • Ohjelmaa saa jakaa edelleen, kunhan lähdekoodi ja lisenssi annataan mukaan
  • Ohjelmaan saa tehdä muutoksia ja näitä muutoksia levittää edelleen, kunhan muutoksista ilmoittaa selvästi (yleensä changelog-tiedostossa), GPL-ilmoituksia ei poista ja muunnettu lähdekoodi ja lisenssi annetaan mukaan, sikäli kuin uutta versiota levitetään
  • Ohjelmasta saa ottaa osia ja käyttää muissa ohjelmissa, jotka käyttävät GPL-lisenssin samaa versiota, kunhan tekijät mainitaan asianmukaisesti. Monessa ohjelmassa käyttäjän annetaan valita mitä GPL:n versiota käytetään.

Tilanne on hankalampi, jos haluaa yhdistää osia eri ohjelmista. Jos jokin ohjelmista on lisensoitu vain GPL:nä yhdistelmä on yleensä levitettävä GPL:n alaisuudessa. Tämä onnistuu, jos muiden ohjelmien lisenssit ovat "GPL-yhteensopivia". Lista tällaisista lisensseistä on esim. FSF:n verkkosivuilla. Ongelma ei koske tapausta, jossa eri ohjelmat vain levitetään yhdessä yhdistämättä niitä.

GPL-ohjelman käyttö digiboksissa, kännykässä tai vastaavassa sulautetussa järjestelmässä edellyttää GPLv3:n tapauksessa, että lähdekoodin lisäksi annetaan muunnetun koodin asennusohjeet. Muunnetun version asennus ei saa edellyttää eri sopimusta. GPL-ohjelmaa saa kuitenkin käyttää myös laitteessa, jossa koodia ei pääse muuttamaan (ROM-piiri, umpeenvalettu kotelo tms.). Jos ohjelmaa käytetään verkkopalvelussa, ei lähdekoodia ja muokkauksia ole pakko tarjota käyttäjille. Jos sen sijaan käytetään GPL-lisenssiin perustuvaa AGPL-lisenssiä, on lähdekoodi tarjottava myös palvelun käyttäjille. Lähdekoodiin saatetaan laskea myös kehitysympäristö, sikäli kuin se ei ole yleisesti saatavilla tai helposti korvattavissa.

Kun GPL-lisensoitua ohjelmaa levitetään konekielisenä GPL-lisenssi vaatii, että lähdekoodi joko levitetään konekielisen ohjelman yhteydessä tai että se kirjallisesti luvataan toimittaa tarvittaessa.

Katso myös

Aiheesta muualla