[Company]
Turre Main Page
Hedman Partners / Filmia kirje
Blogi
Avoimen lähdekoodin (Open Source) määritelmä

Versio 1.9

Kursivoiduissa kappaleissa on selityksiä avoimen lähdekoodin määritelmään ja ne eivät ole osa määritelmää. Alkuperäinen englanninkielinen versio määritelmästä ilman selityksiä on nähtävissä täällä.

Johdanto

Avoin lähdekoodi ei tarkoita vain lähdekoodin saatavuutta. Avoimen lähdekoodin ohjelmien täytyy myös täyttää seuraavat levitysehdot:

1. Vapaa levitysoikeus

Lisenssi ei saa estää ketään myymästä tai lahjoittamasta ohjelmaa osana yhdisteltyä ohjelmistoa, joka on koottu useista eri lähteistä saaduista ohjelmista. Lisenssissä ei saa määrätä ohjelman myymisen ehdoksi tälläisessä tapauksessa rojaltia tai muuta maksua.

Perustelu: Rajoittamalla lisenssiä siten, että vaaditaan vapaa levitysoikeus elinoidaan houkutus saada lyhyessä ajassa hieman myyntituloja monien pidemmän aikavälin etujen uhalla. Jos näin ei vaadittaisi, silloin yhteistyöhankkeilla olisi suuri vaara epäonnistua.

2. Lähdekoodi

Ohjelman täytyy sisältää lähdekoodi ja ohjelman levityksen täytyy olla sallittu sekä lähdekoodina että käännetyssä muodossa. Jos jotakin osaa ohjelmasta levitetään ilman lähdekoodia, tällöin on selkeästi tiedotettava, miten lähdekoodi on saatavissa kohtuullisin kopiointikustannuksin - mieluiten Internetin kautta ilmaiseksi. Suositeltavin levitysmuoto on lähdekoodi, jota ohjelmoija voi muuttaa. Tahallisesti epäselvä lähdekoodi ei ole sallittu. Välimuodot kuten esiprosessorin tai kielen tulkin tulos eivät ole sallittuja.

Perustelu: Selkeän lähdekoodin saatavuus vaaditaan siksi, että ohjelmia ei voi kehittää ilman niiden muuttelemista. Koska tarkoitus on tehdä kehitystyö helpoksi, vaaditaan muutosten tekeminen helpoksi.

3. Johdannaiset teokset

Lisenssin on sallittava muutosten tekeminen ja johdannaisten teosten luominen. Näitä on saatava levittää samoilla lisenssiehdoilla kuin alkuperäistä ohjelmaa.

Perustelu: Pelkkä mahdollisuus lukea lähdekoodia ei vielä riitä tukemaan ohjelman hajautettua arviointiprosessia ja nopeita kehitysvalintoja. Jotta kehitys olisi nopeaa, muutoksia on saatava kokeilla ja levittää.

4. Lähdekoodin yhteenkuuluvuus

Lisenssi voi rajoittaa muutellun lähdekoodin levittämistä vain siinä tapauksessa, että lisenssi sallii korjaustiedostojen (patch) ja niiden lähdekoodin levittämisen. Korjaustiedostojen tarkoituksena on ohjelman muuttaminen, kun sitä käännetään. Lisenssin on nimenomaisesti sallittava muutetusta lähdekoodista käännettyjen ohjelmien levittäminen. Lisenssi voi edellyttää, että johdannaisissa teoksissa käytetään erilaista nimeä tai versionumeroa kuin alkuperäisessä ohjelmassa.

Perustelu:Vaikka rohkaiseminen parannusten tekemiseen on hyvä asia, käyttäjillä on oikeus tietää kuka on vastuussa ohjelmistosta. Vastaavasti tekijöillä ja ylläpitäjillä on oikeus tietää mihin heiltä pyydetään tukea sekä oikeus suojata heidän mainettaan.

Niinpä avoimen lähdekoodin lisenssin täytyy taata, että lähdekoodi on helposti saatavilla, mutta se voi vaatia, että lähdekoodi tulee levittää alkuperäisenä muuttamattomana lähdekoodina ja korjaustiedostoina. Tällä tavalla "epäviralliset" muutokset voidaan tarjota saataville selvästi erotettuina niiden perustana olevasta lähdekoodista.

5. Henkilöiden ja ryhmien syrjinnän kielto

Lisenssi ei saa syrjiä ketään henkilöä tai henkilöryhmää.

Perustelu: Jotta avoimen lähdekoodin kehitysprosessista saataisiin suurin mahdollinen hyöty, tulisi siihen hyväksyä osallistumaan mahdollisimman monipuolisilta taustoilta tulevia henkilöitä ja henkilöryhmiä. Siksi kielletään sulkemasta ketään pois kehitysprosessista.

Joillakin mailla, mukaanlukien Yhdysvallat, on vientirajoituksia tietyn tyyppisille ohjelmistoille. Avoimen lähdekoodin määritelmän mukainen lisenssi voi varoittaa lisenssin saajaa soveltuvista rajoituksista ja muistuttaa heitä velvollisuudesta noudattaa lakia; kuitenkaan itse lisenssiin ei saa kirjoittaa sellaisia rajoituksia.

6. Toimialojen syrjinnän kielto

Lisenssi ei saa syrjiä ketään käyttämästä ohjelmaa tietyllä toimialalla. On esimerkiksi kiellettyä rajoittaa ohjelman käyttöä liiketoiminnassa tai genetiikan tutkimuksessa.

Perustelu: Tämän kohdan tarkoituksena on kieltää lisenssiansat, joilla estetään avoimen lähdekoodin kaupallinen käyttö. Kaupalliset käyttäjät halutaan saada liittymään yhteisöön, ei tuntemaan olevansa siitä poissuljettuja.

7. Lisenssin levittäminen

Ohjelmaan kuuluvien oikeuksien on sovelluttava suoraan kaikille niille, joille ohjelma on levitetty ilman, että heidän tulisi ottaa käyttöön myös jokin uusi lisenssi.

Perustelu: Tämän kohdan tarkoituksena on kieltää ohjelmiston sulkeminen epäsuorin keinoin kuten vaatimalla salassapitosopimusta.

8. Lisenssi ei saa olla tuotekohtainen

Ohjelmaan kuuluvat oikeudet eivät saa riippua siitä, että ohjelma on osana jotakin tiettyä ohjelmistopakettia. Jos ohjelma erotetaan ohjelmistopaketista ja sen jälkeen sitä käytetään tai levitetään ohjelman lisenssillä, tällöin kaikkien niiden, joille ohjelma levitetään, tulee saada samat oikeudet kuin alkuperäisessä ohjelmistopaketissa.

Perustelu: Tämäkin kohta poistaa lisenssiansoja.

9. Lisenssi ei saa rajoittaa muita ohjelmia

Lisenssi ei saa asettaa rajoituksia muille ohjelmille, joita levitetään lisensoidun ohjelman mukana. Lisenssi ei saa esimerkiksi vaatia, että kaikki muut ohjelmat, joita levitetään samalla tallennusvälineellä, olisivat avoimen lähdekoodin ohjelmia.

Perustelu: Avoimen lähdekoodin ohjelmistojen jakelijoilla on oikeus itse päättää omista ohjelmistaan.

GPL-lisenssi on yhteensopiva tämän kohdan kanssa. Ohjelma joka on linkitetty GPL:n alla oleviin ohjelmakirjastoihin perii GPL:n vain, jos se muodostaa yhden teoksen eikä ole ainoastaan levitetty GPL-kirjastojen kanssa.

Suomeksi kääntänyt Mikko Välimäki


(C) 2000-17 Turré Legal Consulting