Дистрибутив openSUSE представи алтернативен инсталатор Agama 10

Разработчиците на проекта openSUSE публикуваха версия на инсталатора Agama 10, разработван за замяна на класическия интерфейс на инсталацията на SUSE и openSUSE, като е значително отделен от потребителския интерфейс на вътрешните компоненти на YaST. Agama предлага възможност за използване на различни фронтендове, например фронтенд за управление на инсталацията чрез уеб интерфейс. За тестване на новия инсталатор са създадени live сборки за архитектури x86_64, ppc64le, s390x и ARM64, поддържащи инсталация на алфа версия на openSUSE Leap 16, непрекъснато обновявани сборки на openSUSE Tumbleweed и редакция MicroOS на база контейнери. Кодът на компонентите на инсталатора се разпространява под лиценция GPLv2 и е написан на езиците Ruby, Rust и JavaScript/TypeScript.

Дистрибутив openSUSE представи алтернативен инсталатор Agama 10

Основните цели на разработката на Agama са премахване на съществуващите ограничения на графичния интерфейс, разширяване на възможностите за използване на функционалността на YaST в други приложения, избягване на зависимост от един език за програмиране и стимулиране на създаването на алтернативни настройки от страна на представителите на общността. Инсталаторът съдържа функции като избор на начален набор от приложения, настройка на мрежова връзка, език, клавиатура, часови пояс и параметри за локализация, подготовка на устройство за съхранение и разпределение на дялове, добавяне на потребители в системата.

За инсталиране на пакети, проверка на оборудването, разпределение на дисковете и други необходими функции при инсталацията в Agama продължават да се използват библиотеките YaST, върху които са реализирани услуги-прослойки, абстрахиращи достъпа до библиотеките през унифициран комуникационен протокол на базата на HTTP. В инсталатора се използва многопроцесна архитектура, благодарение на която интерфейсът за взаимодействие с потребителя не се блокира по време на изпълнението на други задачи. Основният интерфейс за управление на инсталацията е построен с помощта на уеб технологии. Уеб интерфейсът е написан на JavaScript с използване на фреймворка React и компонентите на PatternFly. Услугата за обмен на съобщения, както и вграденият http сървър, написан на езика Ruby.

В новата версия:

  • Добавена възможност за генериране на QR код, съдържащ линк за отваряне на уеб интерфейса на инсталатора в браузъра, което улеснява свързването с инсталатора от смартфон.
    Дистрибутив openSUSE представи алтернативен инсталатор Agama 10
  • Добавени са компоненти за подсветка на синтаксиса, използвани при редактиране от команда «agama config edit» на конфигурационния файл в JSON формат. За редактиране по подразбиране се извиква Vim (чрез променливата на средата EDITOR може да се зададе друг редактор).
    Дистрибутив openSUSE представи алтернативен инсталатор Agama 10
  • В режима на автоматична инсталация е реализирана възможността за създаване на групи от LVM томове, логически LVM томове, както и пулове и томове с динамично разпределение на мястото в хранилището (thin provisioning). В момента не се поддържа използването на вече съществуващи логически томове и групи от томове. Добавени са два режима за автоматично изтриване на томове - безусловно изтриване и изтриване само при необходимост (когато липсва място за създаване на посочените томове).
  • Добавен е зареждащ параметър «agama.install_url», чрез който може да се зададе URL на хранилище за инсталиране на пакети, различно от хранилището, посочено в конфигурацията.
  • Предоставена е възможност за разработка на компоненти на уеб интерфейса на инсталатора на езика Typescript. В бъдеще разработчиците планират постепенно да преведат кода от JavaScript на Typescript при необходимост.
  • В уеб интерфейса за управление на състоянието в асинхронен режим е използван фреймуъркът TanStack Query.
  • Размерът на хранилището, достъпно за инсталиране на допълнителни пакети след зареждането в Live режим, е увеличен от 500 MB на 3.5 GB.
  • За автоматизирано тестване на уеб интерфейса вместо системата Playwright е използвана JavaScript библиотеката Puppeteer.
  • Компонентите за управление на инсталатора, стартирани от командния ред, са прехвърлени от DBus на използването на HTTP клиент, който се свързва с вградения в инсталатора HTTP сървър.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster