Čas od času napíšeme zprávičku o nějakém tom politickém režimu, který se chce zbavit závislosti na Západu, a proto prý vybuduje svůj vlastní operační systém. V minulosti jsme to často slýchávali ze strany Ruska, no a jak se v posledních letech naplno rozhořela obchodní válka mezi USA a Čín[ou, zvažuje to i asijská velmoc.
Jenže… Čas plyne a pracovní stanice bílých límečků od Kozojed u Plzně po ruský Vladivostok i přes všechny sliby nadále ovládá Windows a tu a tam i nějaký ten Mac a Linux s grafickým desktopem.
Český operační systém HelenOS z pražského Matfyzu (Foto: Helenos.org)
Kde jsou tedy ty alternativní národní operační systémy, které budou hrdě vzdorovat globálním hegemonům?
Tady:
Ke Karlovu 2027/3
121 16 Praha 2
Právě na této adrese totiž sídlí starý dobrý Matfyz – Matematicko-fyzikální fakulta Univerzity Karlovy –, kde se zkraje 21. století zrodil HelenOS. Helenčin operační systém přitom není n-tou variací na Debian či jinou linuxovou distribuci, ale je to do posledního bajtu české jádro operačního systému s vlastním grafickým desktopem a aplikacemi ze světa GNU.
Studentský projekt Jakuba Jermáře
Finové mají svého Linuse Torvaldse, který před třemi dekádami zbastlil první linuxové jádro, no a tuzemští geekové by zase mohli vzdát hold Jakubovi Jermářovi, který o deset let později právě během studií na Matfyzu napsal jednoduché mikrojádro operačního systému. A protože to byl opravdu spartánský kernel, dostal jméno Spartan.
HelenOS na kapesním Neo Freerunner (Foto: Helenos.org)
K projektu se později přidali další, začal se rodit prototyp kompletního operačního systému se vším všudy včetně grafického rozhraní s okny, dostal jméno po Heleně Trojské a jeho zdrojové kódy publikované pod svobodnou licencí najdete na GitHubu.
Hřiště pro ajťáky
Spojení národní operační systém jsem samozřejmě použil v nadsázce, takové ambice totiž Helenka (asi) nemá, celé roky ale sloužila jako ideální hřiště pro studenty MFF UK, na kterém si mohli zkoušet prakticky všechny aspekty vývoje od těch nejnižších pater na hraně železa až po tvorbu vlastních aplikací.
DirectX/OpenGL to sice ještě není, ale tato dema ukazují možnosti grafického API
HelenOS tak dnes podporuje celou škálu procesorových architektur počínaje IA-32 a AMD64 a konče 64bitovým armem. A co je zdaleka nejdůležitější, Helenku si můžete vyzkoušet i bez její kompilace ze zdrojových kódů. K dispozici jsou totiž hotové obrazy jak ve formě ISO, tak třeba image pro starší Raspberry Pi.
Stručně řečeno, když si nainstalujete virtualizační nástroj QEMU a stáhnete vhodný ISO obraz, v případě Windows spustíte emulovanou Helenku třeba příkazem:
qemu-system-i386 -device e1000,netdev=n1 -netdev user,id=n1,hostfwd=udp::8080-:8080,hostfwd=udp::8081-:8081,hostfwd=tcp::8080-:8080,hostfwd=tcp::8081-:8081,hostfwd=tcp::2223-:2223 -usb -device nec-usb-xhci,id=xhci -device usb-tablet -device intel-hda -device hda-duplex -serial stdio -boot d -cdrom HelenOS-0.9.1-ia32.iso
V tomto případě HelenOS nastartuje svůj grafický desktop, bude podporovat USB periferie a připojí se také k internetu.
Věčně studentský projekt
Byť se dnes o Helence už možná v širší komunitě nepíše takovou měrou jako kdysi, projekt stále žije, autoři do něj zasahují v podstatě na denní bázi a jak se Jermář svěřil ve starším rozhovoru pro Root, cesta samotná je cíl, což u studijních projektů platí dvojnásob.
V Redmondu, Mountain View a Cupertinu se tedy zatím nemusejí bát, že s bídou skončí na pracovním úřadu, troufám si ale tvrdit, že většinu našich čtenářů překvapí, že něco takového jako HelenOS vůbec existuje a v QEMU to fakt funguje!
Stačí navštívit web ci.helenos.org, kde najdete všemožná noční sestavení distribucí Helenky s různými předinstalovanými aplikacemi – třeba i s portovaným Pythonem, anebo stabilní a funkční build 0.9.1 přímo z webu helenos.org.
Pojďme si to vyzkoušet.
Helenka startuje
Nainstaloval jsem QEMU, stáhl obraz HelenOS pro architekturu IA-32, a v příkazové řádce Windows spustil onen dlouhý příkaz zmíněný výše. Najdete jej i na webu operačního systému v sekci QuickStart.
Systémový zavaděč Grub a pak už start HelenOS na Windows
Na Windows 10 by mělo vše fungovat, a po chvíli se už otevře okno virtualizovaného počítače z dob uhlí a páry (rozumějte ze starých dobrých devadesátek) a do terminálu se začnou vypisovat startovací záznamy HelenOS.
No, a pak to přijde. Naskočí grafický desktop!
Pražská Helenka v akci
Opět zopakuji, že se jedná o studijní – experimentální – operační systém, takže tu nehledejte Chrome, Firefox, LibreOffce, klient Steamu a katalog s miliony balíčků. Nad vkusnou modrou tapetou se ale zobrazí okénko Launcher, tedy jakási paralela nabídky Start. Najdete tu také kalkulačku Calculator a hlavně textový Terminal.
HelenOS z Matfyzu virtualizovaný v QEMU na Windows
Je tam i Tetris!
Další aplikace už na vás čekají ve složce /app, jejíž obsah si můžete prohlédnout v terminálu. K dispozici budete mít základní posixové příkazy, takže funguje cd (změna adresáře), ls (výpis adresáře) atp.
Adresářová struktura HelenOS. Programy jsou ve složce /app.
Z těch síťových nechybí program ping a autoři českého operačního systému naprogramovali i vlastní webový server websrv. Váš HTTP server běží na Ubuntu nebo CentOS? No fuj, buďte přece trošku originální!
Běžící procesy top, textový editor, tetris a vkusná kalkulačka
Pokud žádný web nemáte, případně vám chybí port PHP aj., abyste na Helence rozjeli Wordpress, zabaví vás Tetris.
S Helenkou si můžete přeložit vlastní programy
Pro pokročilejší zájemce je tu nakonec prostor i k portování aplikací právě pro Helenku, respektive experimentování s těmi vlastními napsanými v C/C++. V takovém případě si už ale budete muset HelenOS přeložit ze zdrojových kódů společně s kódy vlastních prográmků uložených právě v adresáři /app.
První pokus o překlad vlastní Helenky se mi sice v prostředí Windows Subsystem for Linux nezdařil a výstup zaplnila exploze rudých chyb, ale já to jen tak nevzdám
Nejlépe pomůže pohled na GitHub projektu a sekci Developer Area na webu Helenky. Přece jen, přeložit si vlastní program pro takto exotický operační systém, je v roce 2021 o něco zábavnější než další zbytečný Hello word na Linuxu.
HelenOS tedy určitě vyzkoušejte a kdo ví, třeba bude za dalších třicet let pohánět celý svět open-source od největších superpočítačů po kdejaký domácí Wi-Fi router, jako se to v minulosti podařilo právě Linuxu.
Že je to naprosto bizarní představa? No... Samozřejmě že je, ale teleportujte se na počátek 90. let minulého století a řekněte to samé Torvaldsovi. Asi by se také jen pousmál.