Nädal 11: Kuidas arendada Linuxit?

 

Dear God. (Linux tuuma GitHub)

Kuidas saada Linuxi (tuuma) arendajaks? Iga inimene, kes on vähegi IT-st huvitatud on ilmselt kuulnud, et Linux on vabatarkvara, mille kallal saab teoorias iga inimene nokkida ja seda edasi arendada.

Teoorias.

 

 Ilmselt on mingisugune tõke/süsteem/hierarhia ikka paigas, et iga külaoss ei saaks oma 1337 keldris leiutatud magic fast-inverse-root valemit kernelisse toppida. Selle blogi lõpuks üritan aru saada nendest tõketest ja leida vastuse alguses esitatud küsimusele, selle käigus ehitades ka pildi, et missugune on Linuxi arendus- ja ärimudelid.

 

Torvalds oleks uhke. (John Carmacki lähtekood)

Esimene koht, kuhu pilgu peale viskan, on Linuxi GitHubi repo. Vaatan pull requests menüü alla ja vaatan, mida leian. See ei saa ju nii lihtne olla?


Ega see ole jah.
 

Igale commitile on vastuse andnud üks bot mis teavitab arendajat et, tolgus, nii ei saa.

Tuleb välja, et Linuxi GitHub on mõeldud kui ühe read-only kaustana ja arendus ise toimub läbi IRC kanalite/meililistide. Et kood saaks osa tuumast, peab liituma meililistiga, mis vastab sellele osale, mida arendada soovid. Igal alamsüsteemil on oma meililist.

Läbi meilide saadetakse siis oma patche laiali, ja iga inimene selles meililistis võib osa võtta sinu koodi kriitikast. kernel.com väidab, et igasugune Linuxi patch peab vastama kommuuni kõrgetele standarditele ja peab olema vormistatud vastavalt tagasisidele. Tehtud peab olema standartne dokumentatsioon, seletatud miks seda patchi vaja on ja mida see patchib, peab olema testitud mitmel erineval riistvaral jne.

Oletame, et mu kood on nüüd ideaalses seisus ja on teiste arendajate kriitika üle elanud. Kes siis teeb selle lõpliku otsuse, et minu kood saab ametlikult osa Linuxist? Eks see on Torvaldsi enda otsustada; ilmselt ka paar usaldusväärsemat kaaslast, kellele ta contributor võimud on laenanud.

Niisiis, arendusmudel näeb Linuxi tuumal välja selline:

1. Arendaja koostab enda patchi mingi konkreetse probleemi lahenduseks.

2. Arendaja jagab patchi ja sellega kaasneva dokumentatsiooni meililistis teistele.

3. Arendaja korrigeerib oma patchi vastavalt vajadusele.

4. Kui patchil on väärtust ja kaas-arendajad on rahul, võtab Torvalds & friends koodi vastu ja lükkab selle järgmise tuuma versiooni.

5. Kui uuel versioonil on piisavalt (bug-free) uuendusi, avalikustatakse uus versioon.

6. Voila, dev cycle tehtud.

Lisaks üritasin ka liituda #kernelnewbies IRC kanaliga uurimiseks, missugune arutelu aset võtab. Kanal oli reklaamitud kernel.com lehel. Üks IRC klient (Mibbit) ei töötanud ja teine (webchat) küsis minult... isikut tõestavat dokumenti?

 

What the fuck?

Pole kunagi midagi sellist varem näinud ja sellist nõuet pole kusagil mainitud ka. Eeldan, et webchat-poolne error. Nukker, kuna ID-kaarti ma küll katsetamiseks sisse ei lükka. Kardan veits.

Seoses ärimudeliga pole väga midagi põnevat rääkida: Linuxi tuum on GPL-2.0 copyleft litsentsi all, mis tähendab, et iga sellele tuumale toetuv tarkvara peab säilitama seda samat litsentsi.


GPL 2.0 piirangud, vabadused



Kasutatud materjalid, külastatud lehed.

https://github.com/torvalds/linux/

https://kernelnewbies.org/

https://www.kernel.org/doc/html/latest/process/howto.html

https://tldrlegal.com/license/gnu-general-public-license-v2

Kommentaarid

Populaarsed postitused sellest blogist

Nädal 7: Litsentsid; copyleft

Nädal 10: Eric S. Raymond "Kuidas saada häkkeriks"

Nädal 12: Disain tarkvaras