Každý má nejaký telefón. Či už to je iPhone, kde si nemôžete nainštalovať objektívne lepší klient na YouTube Music bez reklám, alebo Android, kde máte predinštalované aplikácie od troch rôznych výrobcov plus vám tam vyskakujú reklamy na nový telefón ako notifikácie. Kto číta pravidelne moje články, vie, o čom hovorím. Dnes si ideme po veľmi dlhej dobe zrecenzovať telefón od Googlu, na ktorý som si dal GrapheneOS. Ako som sa o ňom dopočul? Raz som si počas školy (cez prestávku, samozrejme :)) prezeral stránku privacyguides.org , čo je Wikipédia, ale pre informačnú a operačnú bezpečnosť. Potom som išiel na prax do Esetu, kde môj nadriadený mal taktiež Pixel, ale osmičku s normálnym Androidom. Som sa ho pýtal, prečo si naň nedal GrapheneOS, a on na to povedal, že zabúda na to. Ale aj tak sa mi to zariadenie zapáčilo. Exteriér: Vyzerá to ako iPhone a je to hrubšie ako môj predošlý Android Naľavo je Samsung Galaxy A53 5G, napravo Pixel 9a Keď som ho rozbaľoval, tak prvé, čo mi napadlo, bolo...
Neskutočné sa stalo skutočným: Vyšiel nový Status update pre môj operačný systém, ktorý sa volá MatuushOS. Tentokrát mám veľmi veľa noviniek, ktoré sa udiali na tomto operačnom systéme. Čiže sa na ne poďme vrhnúť.
Recenv
O Recenve som rozprával už predtým v článku o Initramfs, ale tým, že vás mám rád, tak vám zhrniem, čo to je.
Recenv je veľmi minimálne obnovovacie prostredie, ktoré sa nastavuje cez parametre, ktoré sa predávajú linuxovému jadru. Cezeň sa dá aktualizovať/obnoviť operačný systém. Pri jeho tvorení som sa inšpiroval obnovovacím procesom, ktorý je vo Windowse, MacOS a na Androide.
Ale načo vytvárať ďaľší aktualizačný systém, keď existuje systemd-sysupdate a bootc?
Preto, lebo MatuushOS je 100% bez systemd. Toto rozhodnutie bolo urobené z dôvodu, že systemd je napísané v céčku, čo je jazyk, kde sa stráca produktivita z dôvodu trápenia sa so zostavovacím systémom a ktorý je 50 rokov starý, čiže vôbec nie je podľa mňa vhodný na nové projekty. A áno, aj systemd-sysupdate je napísaný v tomto jazyku. sd-sysupdate vyžaduje, aby tie obrazy boli vytvorené cez mkosi, čo je zase súčasť Systemd ekosystému.
bootc je síce napísané v Ruste, ale funguje na základe kontajnerov. Recenv funguje na základe obrazov, ktoré sú vytvorené cez fallocate. A samozrejme, vyžaduje systemd.
Zato recenv beží ešte pred spustením operačného systému v initramfs, čiže je jedno, aký inicializačný systém sa používa. Po jeho skončení sa jednoducho reštartuje naspäť do operačného systému. Plus som tam pridal aj podporu pre LVM a LUKS. Na rozdiel od týchto dvoch vie recenv zresetovať aj celý operačný systém priamo z initramfs, čiže nemusíte nemusíte mať poruke USB kľúč s danou distribúciou.
Plánujem do Recenvu pridať TUI cez Ratatui, ktoré bude náhradou za všetky println! makrá, ktoré sa v tomto prostredí nachádzajú.
mkiso
Odkedy som publikoval posledný Status update, tak sa toho v oblasti zostavovania môjho operačného systému veľmi veľa zmenilo. Už to nie je nezávislá distribúcia, ale už je to ,,iba˝ distribúcia založená na Alpine Linuxe, čo by sa dalo kvôli jej minimalistickosti povedať, že to je v podstate Linux From Scratch, ale so správcom balíkov.
Musím to zostavovať na GitHube z toho dôvodu, že tam je maximálny limit, koľko môže ten runner bežať, 6 hodín. Len tým, že predtým som experimentoval s MatuushOS na Gentoo, tak to bolo nejaké štyri hodiny.
Celé mkiso som prepísal do Shell skriptu, ktoré po zlepšení toho, ako pm funguje, prepíšem do MtScriptu.
Mii
Po tomto článku sa budem modliť, aby mi do schránky neprišlo predvolanie na súd.
Mii znamená MatuushOS initial installer, čo v slovenčine znamená počiatočný inštalátor MatuushOS a ako všetko okolo tejto distribúcie (okrem dokumentácie a scriptpakov, prvé je napísané v Markdowne a druhé je súbor skriptov, ale k tomu sa ešte dostaneme) je napísané v Ruste.
Mii funguje na základe tzv. scriptpakov, čo je sada skriptov, ktoré môžu byť napísané buď v Shell skripte alebo v MtScripte. Tieto skripty sú roztriedené do priečinkov podľa toho, čo robia.
Prečo nepoužiť Calamares alebo os-installer?
Calamares je inštalátor, ktorý používa 99% linuxových distribúcií. Je veľmi prispôsobiteľný čo sa týka vzhľadu a počtu krokov, ktoré môže používateľ prejsť. Problém s ním je taký, že je napísaný v C++, čo je síce lepšia verzia céčka, ale stále sa v ňom dajú urobiť také isté (a ešte horšie) chyby, aké sa dajú robiť v ,,neinkrementovanom˝ céčku. Keby sme chceli upraviť vzhľad aplikácie, tak musíme znovu zostaviť celý Calamares, čo trvá nejaký čas.
os-installer je inštalátor, ktorý je síce napísaný v Pythone, ale zato má používateľské prostredie, ktoré pripomína GNOME, čiže sa nebude hodiť na živý obraz s prostredím, ktoré nie je GNOME. Plus sa konfiguruje veľmi divne.
Dokumenatácia
Tej som sa vôbec nedotýkal. Stále tam chýbajú stránky o Recenve. Asi to tam pridám neskôr alebo prestavím generovanie dokumentácie tak, aby to pridávalo Markdown súbory z jednotlivých repozitárov.
Prečo to trvalo tak dlho napísať tento článok?
Lebo som sa venoval iným veciam, ktoré mali väčšiu prioritu, ako napríklad odborná prax. Venoval som sa aj portovaniu môjho telefónu (Samsung Galaxy A53 5G) na postmarketOS, čo je distribúcia, ktorá je taktiež založená na Alpine Linuxe a ktorej cieľom je mať najaktuálnejšie linuxové jadro na čo najviac zariadeniach.
Záver
Toto bol prehľad toho, čo sa zmenilo vo svete MatuushOS.
Ak sa vám tento článok páčil, tak ho nezabúdajte zdieľať na LinkedIne, Mastodone, Lemmy, jednoducho všade. Ak mi držíte palce v tom, že si zajtra ráno nenájdem v schránke predvolanie na súd, tak do komentárov na LinkedIne, Mastodone a Lemmy dajte palec hore.
Ale aj tak z tohoto blogu aj z MatuushOS zarábam presne nula centov.
👍🏻
OdpovedaťOdstrániťSice odborne tymto veciam vobec velmi nerozumiem, ale za mna- dobre sa to cita. Keby som posudzovala stylistiku- a tej rozumiem pomerne dost- texty su vzdy
OdpovedaťOdstrániťVzdy excelentne!!! A to je skoro rovnako dolezite ako odbornost publikovania.Lebo- naco su odborne znalosti, ked niekto nema schopnost dat to fo zrozumitelnej formy, ze. V y b o r ne!!!!!
OdpovedaťOdstrániť