Kompania Igalia prezantoi Moonforge, një distribucion për sisteme të integruara

Kompania Igalia, e njohur për pjesëmarrjen e saj në zhvillimin e projekteve të lira si GNOME, GTK, WebKitGTK, Epiphany, Maemo, GStreamer, Wine, Mesa dhe freedesktop.org, prezantoi projektin Moonforge, i cili thjeshton krijimin dhe mbështetjes së distribucioneve të veta Linux për pajisje të ndryshme dhe sisteme të integruara. Strukturat e distribucionit formohen mbi bazën e mjeteve të ndërtimit dhe metadatat e pakove nga projektet OpenEmbedded dhe Yocto. Punimet specifike për projektin shpërndahen nën licencën MIT.

Moonforge ofron zhvilluesve dhe integratorëve të sistemeve një kornizë, një grup skedarësh konfigurimi dhe një koleksion komponentësh për formimin e imazheve sistemore që përditësohen në mënyrë atomike, të bazuara në përdorimin e teknologjive tashmë të provuara dhe të zakonshme në industri, si yocto, bitbake dhe kas. Për imazhet e formuara mbahet një proces i thjeshtuar për instalimin e përditësimeve dhe sigurohet një cikël i gjatë mbështetjeje. Qëllimi kryesor i projektit është t'u ofrojë zhvilluesve të sistemeve të integruara mjete të dobishme që u japin mundësinë të përqendrohen në zhvillimin e funksionaliteteve specifike për produktin e tyre dhe të mos humbasin kohë me detyra që lidhen me krijimin dhe mbajtjen e distribucionit.

Imazhi sistemor ishte i ndërtuar nga një grup modulash të gatshëm Yocto. Çdo modul është përgjegjës për një mundësi të caktuar ose për mbështetje të një platforme specifike harduerike. Për shembull, ofrohen module për mbështetje Docker, QEMU ose Podman, menaxhimin e përditësimeve përmes RAUC, krijimin e një ndërfaqe grafike mbi bazën e kompozitit Weston, duke nisur ndërfaqen e shfletuesit mbi bazën e Webkit për kioske interneti dhe ndërtimin për platformat Raspberri Pi 4 dhe 5. server Mbështeten tre kanale shpërndarjeje të lëshimeve: stable (dega e qëndrueshme LTS), next (dega në të cilën zhvillohet lëshimi i ardhshëm LTS) dhe main (dega eksperimentale në të cilën zhvillohet zhvillimi). Çdo degë është e lidhur me versionin e saj të grupit të komponentëve Yocto. Dega e qëndrueshme përditësohet çdo muaj dhe korrespondon me lëshimet LTS të Yocto.

Përditësimet dërgohen në mënyrë OTA (Over-The-Air) duke përdorur mjete Mender dhe instalohen në mënyrë atomike nëpërmjet zëvendësimit të tërë sistemit. Në ruajtës krijohen dy ndarje identike rrënjësore - një aktive dhe një pasive. Një përditësim i ri instalohet në ndarjen pasive, pa ndikuar në funksionimin e ndarjes aktive. Pas rilindjes, ndarjet ndërrrohen vendet - ndarja me përditësimin e ri bëhet aktive, ndërsa ndarja e kaluar aktive kalon në modin pasiv dhe pret instalimin e përditësimit të ardhshëm. Nëse pas përditësimit diçka shkon gabim, bëhet rikthimi në variantin e mëparshëm të sistemit.

Për krijimin e imazheve sistemore përdoret mjeti BitBake, dhe për formimin e konfiguracionit dhe për sigurimin e ndërtimeve të ripërtypshme - kas. Ndërtimet, përditësimet, raportet mbi dobësitë dhe metadatat SBOM (Software Bill of Materials) mblidhen dhe publikohen automatikisht duke përdorur sisteme të integrimit dhe zhvillimit të vazhdueshëm (CI/CD). Infrastruktura e ndërtimit mbi bazën e Moonforge mund të vendoset si në mjedise lokale, ashtu edhe në mjedise publike ose private në re.

Për transparencën dhe parashikueshmërinë e proceseve të krijimit të produkteve të deriva në distribucion, aplikohet një ndarje rigoroze midis komponentëve upstream dhe downstream, duke lejuar zhvilluesit që, nëse është e nevojshme, të shtojnë funksionalitete të tjera sipër strukturës themelore. Konfiguracioni përcaktohet në një paraqitje deklarative, duke përdorur formatin YAML dhe mbulon fusha të tilla si lidhja e reposive të jashtme, aktivizimi i moduleve Yocto, menaxhimi i varësive midis komponentëve të distribucionit, aplikimi i patch-eve shtesë dhe ndryshimi i cilësimeve standarde të sistemit. serverë, так и в публичных или приватных облачных окружениях.

Для прозрачности и предсказуемости процессов создания производных продуктов в дистрибутиве применяется жёсткое разделение между upstream- и downstream-компонентами, позволяющее разработчикам при необходимости добавлять дополнительную функциональность поверх базовой начинки. Конфигурация определяется в декларативном представлении, используя формат YAML, и охватывает такие области как подключение внешних репозиториев, активация модулей Yocto, управление зависимостями между компонентами дистрибутива, применение дополнительных патчей и изменение применяемых по умолчанию системных настроек.

Burimi: opennet.ru

Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS 🔥 Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS | ProHoster