Estobuntu ISO genereerimine

Allikas: Pingviini viki

Estobuntu ISOd genereeritakse UCK (Ubuntu Customization Kit, alternatiiv Remastersys'ile) skriptide ja spetsiaalselt mugandatud DEB-pakettide abil abil.

Esiteks tasub pilk heita tehnilisele manuaalile. See on sisuliselt väga pealiskaudne kokkuvõte UCK skriptimisabi leheküljest (mis on tegelikult sama pealiskaudne).

Teiseks tasub pilk heita Estobuntu koodipuus remaster harule. Esiteks on seal harus paar eestikeelset sõna sellest, kuidas Estobuntu ISO genereerida. Sisuliselt see juhis töötab, muud polegi vaja (kuigi probleeme võib tulla).

Mõte on selles, et see remaster haru on tegelikult koopia viimasest UCK versioonist, kuhu on lisatud Estobuntule spetsiifilised skrptid ISO genereerimiseks. Estobuntu spetsiifika seisneb selles, et kataloogis libraries/customization-profiles/localized_cd paiknevad failid customize.estobuntu, customize_iso.estobuntu ja customize_initrd. Need teevad sisuliselt kõik muutused Ubuntu originaal-ISO kallal, mille järel UCK genereerib uue ISO.

Remaster haru juurkataloogis on UCK skript uck-gui, mida on õige pisut mugandatud Estobuntu ISO genereerimiseks (automaatse ISO genereerimise jaoks on kirjutatud skripti sisse vaikimisi väärtused, mida muidu küsitaks kasutajalt dialoogide käigus).

customize.estobuntu

Selles skriptis antakse käsud justkui Ubuntu live plaadi pealt, ainuke erinevus on see, et käsud käivitatakse kõik tekstirežiimis. See tähendab, et siin saab teha mistahes muudatusi Ubuntu plaadile, aga tuleb (üldjuhul) vältida:

  • Graafilisi rakendusi
  • Dialooge, mis ootavad kasutajalt millegi sisestamist (vastuste vaikimisi etteandmiseks saab pruukida sellist asja nagu Debiani preseed)

Kasutada saab nii apt-get'i kui aptitude'i kui mistahes Ubuntu vahendeid. Mida skript teeb?

  • Uuendab Ubuntu Live CD versiooni paketid, lisab eesti keele toe (see tehakse tegelikult osaliselt ära juba skriptis customize).
  • Eemaldab hulga mittevajalikke pakette (algselt ISO suuruse mahutamiseks CD peale).
  • Lisab allikate nimekirja lisavaramud, millest mõned jätab ta süsteemi mugandamise ajaks sisse lülitatuks, mõned aga lisabki väljalülitatutena. Mõte on selles, et kasutajal oleks pärast süsteemis neid lihtne sisse lülitada, kui ta soovib.
  • Lisab lisavaramute võtmed kataloogist keys.
  • Paigaldab paketid, mida on vaja GNOME'i või KDE jaoks, sest skriptile on antud ette parameetrid, mille järgi see teab, kas ta genereerib parajasti KDE või GNOME'i versiooni. Saab anda ette ka täpsemaid parameetreid (nt on hetkel kasutusel "test" parameeter).
  • Osa paigaldatavaid pakette on pärit sõltumatutest allikatest, osad on Estobuntu toimkonna käsitöö.
  • Lisab /etc/skel alla igasuguseid seadeid, nt bash'i, töölauavidinate, Firefoxi, Thunderbirdi, raadiote jne jaoks, vt täpsemalt kataloogist gnome_settings ja bash_settings.
  • Muudab ära mõned vaikimisi seaded gnome-settings vms abiga.
  • Teeb mõned viimase minuti häkid keeletoe ja ISO nime/vaikimisi kasutajanime jms jaoks

Tuleb tunnistada, et skript on eksisteerinud läbi mitme Estobuntu arendajate põlvkonna, mistõttu on seal palju rämpsu. Skripti puhastamine on väga hea idee, aga sellega väga kiirustama ka ei pea.

Estobuntu enda Deb-paketid

Estobuntu jaoks on koostatud hulk Deb-pakette, mis peaks süsteemi mugandamise tegema võimalikult loogiliseks ja modulaarseks. Eelistatum ongi määrata sõltuvused muudest pakettidest ära enda koostatud Deb-paketis. See pole aga alati võimalik, nt /etc/skel muudatused, vaikimisi taustapildid või kahtlased häkid, mis teevad eestikeelseks asju, mis Ubuntu's eestikeelsed pole. Sel juhul tuleb mugandused määrata tegemisele UCK skriptis.

Üldiselt on nii, et kasutaja võiks saada lasta enda arvutile peale Estobuntu pakette ka ilma UCK skripti üldse puutumata. See tähendab, et Estobuntu paketid peaks olema ehitatud nii iseseisvatena, et ühe paketi paigaldamine ei tooks kaasa kogu Estobuntu paigaldamist. Küll aga võiks olla võimalik paigaldada kõik Estobuntu paketid ühekoraga (metapakett estobuntu-gnome või estobuntu-kde jne). Samas ei peaks selline paigaldamine keerama midagi vussi kasutaja poolt pruugitud kujunduses ega paigaldama midagi --- eriti mitte mingeid häkke --- süsteemsetesse kataloogidesse. Seega peaks Estobuntu Deb-pakettides olema pigem funktsionaalsus ja mitte süsteemi mugandused või süsteemi madala taseme kujundus. Erandiks on estobuntu-artwork paketid, mida saab küll paigaldada, aga mis samuti ei sunni ennast peale (kasutaja lülitab Estobuntu kujunduse sisse eraldi vastavast eelistuste menüüst).

Kuna kasutajad tahavad Estobuntu pakette paigaldada ka ükshaaval, siis võiks jätta selle võimaldamiseks suur osa sõltuvusi "Recommends" tasemele ja "Depends" määrata pakettide puhul, mis tõesti vajavad üksteist ega saa töötada üksikult.

Kuidas teha ja arendada Estobuntu Debiani pakette, see on juba teine teema. Nende puhul on vaja tunda natuke paketihalduse hingeelu. Sellest on natuke juttu Estobuntu arenduslehel. Igatahes pole Estobuntu ISO genereerimiseks vaja Deb-pakette ise ehitada, tuleb ainult viidata varamutele, kus need paketid olemas on.

UCK skripti varamu-poliitika arenduse ajal

Arenduse ajal on tavaks esialgu kasutada pakette PPA'dest ja muudest juhuslikest allikatest, kuid beeta ajaks peaks kõik vajalikud paketid kopeerma Estobuntu enda reposse. See on garantiiks, et süsteem jääb töötama ka edaspidi ja ei sõltu muudatustest Estobuntust sõltumatutes allikates. Kui kasutaja tahab uusi pakette, siis peab ta vastava PPA'd vms ise sisse lülitama. See ei käi aga Estobuntu garantii alla. Üldiselt Estbuntuga kaasa pandud sõltumatuid pakette peale väljalaskmist eriti ei uuendata, sest sellega pole kellelgi aega tegeleda (mis ei tähenda, et sellega ei võiks tegeleda).

ISO mugandamine enda tarbeks

Sisuliselt saab ISO genereerimise skripti täiendada ja genereerida enda vajadustele vastav Estobuntu ISO. Lisaks eestindusskriptile (viidatud allpool) on mõeldav teha eraldi Estobuntu lisadega UCK, see on lihtsaimal tasemel 10 minuti töö. Tulemuseks oleks, et inimesed saavad genereerida enda täiendustega Estobuntu ISO'sid (kui on huvi sellise asja järgi, siis võib võtta arendajatega ühendust).

See tähendab lisada oma asju /etc/skel kataloogi, eemaldada ja lisada pakette, muuta kujundust jne. Estobuntu ISO olemasolu põhjendus on aga see, et oleks varnast võtta kõigile sobiv eestindatud Ubuntu versioon. Kõigi all mõeldakse siis tädi Maalit ja keskmist Ubuntut kasutavat arvutivõõrast inimest, kes tahab võimalikult lihtsat, aga samas sündantsoojendavalt eestimeelset süsteemi. Seega pole sihtgrupiks Linux'i entusiastist programmeerija.

Mõte on see, et eksisteeriks üks korralik tuumsüsteem, kuhu kõik mugandajad saavad edastada parandusi, kuid oma erivajadused võiks rahuldada skripti ise täiendades. Sellise süsteemi töötamise peamiseks eelduseks on see, et kasutajad annavad tagasisidet, otsivad koodis puudujääke ja aitavad ise neid parandada.

customize_initrd

Seda on sõltuvalt Ubuntu väljalaskest vaja olnud alguse logo ja kasutajanimede muutmiseks. Mingites versioonides on need paigaldatud initrd alla, mingil ajal jäätud sellest välja.

customize_iso.estobuntu

See skript on nagu tavaline kasutaja arvutis käivitatav skript, see --- nagu ka initrd skript --- ei jookse enam laivplaadi juurkasutaja õigustes. Programme laivsüsteemi piires käivitada ei saa, aga saab teha muudatusi failides. Siin tehakse puhastustööd valmis ISO kallal, püütakse eemaldada ajutisi ja mittevajalikke faile. Ka mugandatakse selle käigus laivplaadi alguse menüüd.

Arendusversioonid

Estobuntu arendajate poolt genereeritud eri tõmmiseid koos genereerimislogidega leiab:

NB! Need on katsetusversioonid ega ole mõeldud igapäevaseks kasutamiseks. Neid laadivad üldiselt alla arendajad ja beetatestijad, et kontrollida süsteemi eri osade töökorda ja anda selle kohta tagasisidet. Neis versioonides võivad olla suured puudujäägid vastavalt sellele, mis faasis Estobuntu arendus hetkel on.

Vaata ka