Компания Igalia прСдставила Moonforge, дистрибутив для встраиваСмых систСм

Компания Igalia, извСстная своим участиСм Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ‚Π°ΠΊΠΈΡ… свободных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠ°ΠΊ GNOME, GTK, WebKitGTK, Epiphany, Maemo, GStreamer, Wine, Mesa ΠΈ freedesktop.org, прСдставила ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Moonforge, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΠΉ созданиС ΠΈ сопровоТдСниС собствСнных Linux-дистрибутивов для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройств ΠΈ встраиваСмых систСм. Начинка дистрибутива формируСтся Π½Π° основС сборочного инструмСнтария ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² OpenEmbedded ΠΈ Yocto. Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ‡Π½Ρ‹Π΅ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT.

Moonforge прСдоставляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈ систСмным ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ каркас, Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² для формирования Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎ обновляСмых систСмных ΠΎΠ±Ρ€Π°Π·ΠΎΠ², основанных Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… ΠΈ распространённых Π² индустрии Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ yocto, bitbake ΠΈ kas. Для сформированных ΠΎΠ±Ρ€Π°Π·ΠΎΠ² поддСрТиваСтся ΡƒΠΏΡ€ΠΎΡ‰Ρ‘Π½Π½Ρ‹ΠΉ процСсс установки ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈ обСспСчиваСтся Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» сопровоТдСния. Основная Ρ†Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° β€” ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° встраиваСмых систСм ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ инструмСнтарий, Π΄Π°ΡŽΡ‰ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠΈ спСцифичной для ΠΈΡ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° Π·Π°Π΄Π°Ρ‡ΠΈ, связанныС с Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ΠΌ дистрибутива.

БистСмный ΠΎΠ±Ρ€Π°Π· компонуСтся ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Yocto. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. НапримСр, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Docker, QEMU ΠΈΠ»ΠΈ Podman, управлСния обновлСниями Ρ‡Π΅Ρ€Π΅Π· RAUC, формирования графичСского интСрфСйса Π½Π° Π±Π°Π·Π΅ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра Weston, запуска Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ интСрфСйса Π½Π° Π±Π°Π·Π΅ Webkit для ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-киосков ΠΈ сборки для ΠΏΠ»Π°Ρ‚ Raspberri Pi 4 ΠΈ 5.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ Ρ‚Ρ€ΠΈ ΠΊΠ°Π½Π°Π»Π° распространСния Ρ€Π΅Π»ΠΈΠ·ΠΎΠ²: stable (ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ LTS-Π²Π΅Ρ‚ΠΊΠ°), next (Π²Π΅Ρ‚ΠΊΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ развиваСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ LTS-Ρ€Π΅Π»ΠΈΠ·) ΠΈ main (ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ Π²Π΅Ρ‚ΠΊΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ вСдётся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°). КаТдая Π²Π΅Ρ‚ΠΊΠ° привязана ΠΊ своСй вСрсии Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Yocto. Π‘Ρ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ Π²Π΅Ρ‚ΠΊΠ° обновляСтся Ρ€Π°Π· Π² мСсяц ΠΈ соотвСтствуСт LTS-Ρ€Π΅Π»ΠΈΠ·Π°ΠΌ Yocto.

ОбновлСния Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ OTA (Over-The-Air) с использованиСм инструмСнтария Mender ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΌΠ΅Π½Ρƒ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ всСй систСмы. На Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»Π΅ создаётся Π΄Π²Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΡ€Π½Π΅Π²Ρ‹Ρ… Ρ€Π°Π·Π΄Π΅Π»Π° β€” Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈ пассивный. НовоС ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ устанавливаСтся Π² пассивный Ρ€Π°Π·Π΄Π΅Π», Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ влияя Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ. ПослС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ мСстами β€” Ρ€Π°Π·Π΄Π΅Π» с Π½ΠΎΠ²Ρ‹ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ становится Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ, Π° ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΉ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» пСрСводится Π² пассивный Ρ€Π΅ΠΆΠΈΠΌ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ установки ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ обновлСния. Если послС обновлСния Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ пошло Π½Π΅ Ρ‚Π°ΠΊ, осущСствляСтся ΠΎΡ‚ΠΊΠ°Ρ‚ Π½Π° ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ систСмы.

Для создания систСмных ΠΎΠ±Ρ€Π°Π·ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ инструмСнтарий BitBake, Π° для формирования ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ обСспСчСния воспроизводимых сборок β€” kas. Π‘Π±ΠΎΡ€ΠΊΠΈ, обновлСния, ΠΎΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠΎΠ± уязвимостях ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ SBOM (Software Bill of Materials) автоматичСски ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚ΡΡ ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΡŽΡ‚ΡΡ с использованиСм систСм Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ³ΠΎ развёртывания (CI/CD). Бборочная инфраструктура Π½Π° Π±Π°Π·Π΅ Moonforge ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π²Ρ‘Ρ€Π½ΡƒΡ‚Π° ΠΊΠ°ΠΊ Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сСрвСрах, Ρ‚Π°ΠΊ ΠΈ Π² ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹Ρ… ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… окруТСниях.

Для прозрачности ΠΈ прСдсказуСмости процСссов создания ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Π² дистрибутивС примСняСтся ТёсткоС Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ upstream- ΠΈ downstream-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΈ нСобходимости Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ²Π΅Ρ€Ρ… Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π½Π°Ρ‡ΠΈΠ½ΠΊΠΈ. ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ опрСдСляСтся Π² Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ прСдставлСнии, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YAML, ΠΈ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ области ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡˆΠ½ΠΈΡ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², активация ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Yocto, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ зависимостями ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ дистрибутива, ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ примСняСмых ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ систСмных настроСк.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ