URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 114350
[ Назад ]

Исходное сообщение
"Выпуск независимого от дистрибутивов инсталлятора Calamares 3.2"

Отправлено opennews , 18-Май-18 00:07 
Состоялся (https://calamares.io/calamares-3.2.0-is-out/) релиз инструментария для построения инсталляторов Calamares 3.2 (https://calamares.io/), не зависящего от конкретных дистрибутивов Linux. Разработчикам дистрибутивов предоставлено несколько десятков готовых модулей c реализацией различных возможностей, востребованных в инсталляторах. Код написан (https://github.com/calamares/calamares) на языке С++, графический интерфейс основан на библиотеке Qt 5 (используется QML), для разработки модулей могут применяться языки C++ и Python. Calamares уже используется для организации установки дистрибутивов Manjaro,  Sabayon, Chakra, NetRunner, KaOS, OpenMandriva и  KDE neon. Проект развивается при участии сообществ KDE, Fedora, Kubuntu и Maui.


Calamares предоставляет такие возможности, как ручной и автоматический режимы разбиения дисковых разделов,  гибкая система адаптации  внешнего вида, модульная архитектура, большой выбор готовых модулей (от управления загрузчиками, до управления пользователями). Например, имеются модули для использования NetworkManager, UPower,   systemd-boot, GRUB, sgdisk, squashfs-tools и rsync. Установка может быть организована путём замены раздела  - данные копируются на новый раздел, который делается активным вместо ранее используемого раздела, что удобно для тестирования новых установок, оставляя возможность отката на прошлую версию.


Для создания собственного установщика на базе  Calamares  достаточно выбрать готовые модули (https://github.com/calamares/calamares/tree/master/src/modules) или написать собственные, определить логику установки дистрибутива и настроить внешний вид (https://github.com/calamares/calamares/tree/master/src/branding). Для упрощения и ускорения разработки модули и компоненты Calamares могут создаваться на языке Python (для интеграции с С++ используется Boost.Python (http://www.boost.org/doc/libs/1_57_0/libs/python/doc/index.html)). Все конфигурационные данные хранятся в формате YAML.


Основные новшества:


-  Добавлен модуль openrcdmcryptcfg для настройки конфигураций с системой инициализации OpenRC и шифрованной ФС, который может применяться в дистрибутивах не использующих systemd;
-  Добавлен модуль для рабочего стола KDE Plasma, позволяющий на этапе установки выбрать тему оформления и настроить внешний вид;
-  Добавлены модули ShellProcess и ContextualProcess, предназначенные для запуска последовательности shell-команд. ShellProcess может заменить другие модули, созданные на базе  dummyprocess, предлагая унифицированный файл конфигурации settings.conf. ContextualProcess позволяет запускать наборы команд на основании определённых параметров конфигурации, например, типа прошивки. Возможно сопоставление значений параметров по маске;
-  В модуль  bootloader добавлена настройка installEFIFallback, позволяющая управлять режимом установки в окружении UEFI;
-  Улучшено определение наиболее вероятной раскладки клавиатуры, на основании выбранного языка;

-  Названия языков в форме выбора языка на первой странице теперь отображаются с использованием национальных алфавитов;

-  Добавлена опция командной строки "-D" для выбора уровня отладочных логов. Переработан отладочный фреймворк;

-  Обеспечена поддержка повторяемых сборок;
-  Сессионный лог переименован в  ~/.cache/calamares/session.log


-  Добавлена поддержка настройки менеджера обновлений через указание специфичного для системы URL;
-  Добавлена функция информирования пользователя о завершении установки;
-  Убрана жесткая привязка в /bin/bash;
-  Повышены требования к версии библиотеки KPMCore, для работы теперь требуется как минимум выпуск 3.3, в котором появилась поддержка разделов LVM.


URL: https://calamares.io/calamares-3.2.0-is-out/
Новость: https://www.opennet.dev/opennews/art.shtml?num=48618


Содержание

Сообщения в этом обсуждении
"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено 128293 Виталик 128293 , 18-Май-18 00:07 
>Все конфигурационные данные хранятся в формате YAML

Что мотивирует людей в 2018 использовать это уродство я просто не понимаю 🤦


"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено kiwinix , 18-Май-18 00:50 
Ну там есть подсветка синтаксиса, и это лучше чем например, каждая строчка это key=value и да, такое используется во flatpak. И лучше чем xml.. так что уже хорошо

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено пох , 18-Май-18 02:16 
> Что мотивирует людей в 2018 использовать это уродство

наличие приятных готовых парсеров, разумеется.
А key=value надо самому писать, это немодно, сложно, можно ошибиться и выглядеть тем-самым-лохом у которого экпсплойт через конфиги. (а если то же самое в готовой либе - это ж не мы, это все - они, и вообще мы уже обновились на ее новую версию с улучшенными багами)

скажите спасибо, что не xml или json.


"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Виталик , 18-Май-18 08:56 
JSON как раз было бы хорошо. Да и key=value можно готовый найти, зачем писать.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 09:22 
Кому хорошо? Ломалам? Нормальных парсеров не было и нет.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Виталик , 18-Май-18 10:15 
Эм? Почти в любом языке в стандартной библиотеке есть парсер JSON...

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 21:15 
Здесь речь идёт не о "почти любом языке" отнюдь. Рекомендую осилить буквы и научиться читать для начала

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Виталик , 18-Май-18 22:40 
https://github.com/nlohmann/std_json/blob/master/proposal.md
Ниче, не переживай, скоро мб и в ваше старье завезут современную технологию JSON))))

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 12:15 
рукалицо
А ничего, что JSON является помножеством YAML?

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Виталик , 18-Май-18 22:59 
Ничего. Открывая YAML я так и не научился его сходу парсить себе в голову, хотя довольно часто приходится это делать, так как используем openapi, а там этот чертов YAML. С JSON такой проблемы нет, да, там лишние строки и скобки, да, меньше помещается в экран, но да и пофиг экраны сейчас большие

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 23:59 
А переписать этот чертов YAML в виде JSON не пробовали? Или что по-вашему означает фраза "JSON - это подмножество YAML"? YAML парсер понимает JSON. Чтобы генерился на выходе JSON - опции должны быть.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Виталик , 19-Май-18 02:25 
Они и есть, но к сожалению я там джуниор разработчик, а главному нравится YAML.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено winorun , 19-Май-18 05:39 
Сочувствую твоей команде.
Найди 10 отличий и определи где yaml а где JSON
~~~
{
   "firstName": "Иван",
   "lastName": "Иванов",
   "address": {
       "streetAddress": "Московское ш., 101, кв.101",
       "city": "Ленинград",
       "postalCode": "101101"
   },
   "phoneNumbers": [
       "812 123-1234",
       "916 123-4567"
   ]
}
~~~~~~~~~
   "firstName": "Иван",
   "lastName": "Иванов",
   "address": {
       "streetAddress": "Московское ш., 101, кв.101",
       "city": "Ленинград",
       "postalCode": "101101"
   },
// А тут коментарии
   "phoneNumbers": [
       "812 123-1234",
       "916 123-4567"
   ]

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Виталик , 19-Май-18 07:34 
YAML конфиг "in the wild" выглядит примерно так https://editor.swagger.io/, а не как у тебя со скобками и без особой вложенности.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 13:51 
В ямле ненормальны 2 вещи - встроенные тего-свистоперделки и пробелы, прибитые гвоздями.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено angra , 18-Май-18 02:32 
Неужто изобрели что-то лучше чем yaml?

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено IRASoldier , 18-Май-18 05:10 
JSON

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Snelius , 18-Май-18 07:15 
JSON прекрасен, но он не всегда удобен именно для хранения конфигурации. Т.к. формат не предусматривает комментариев, очень порой полезных.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 09:24 
Отлично. Напиши ещё парсер тогда и переезжаем на ЖСОН.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 13:52 
JSON5

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 21-Май-18 21:53 
TOML

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 00:27 
Вроде QML, а по скрину похоже на
💩. Хоть бы Материал включили что ли.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 03:38 
QML - рисовалка, какая связь между рисовалкой и тем, что с ее помощью нарисовано?

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Anonimus , 18-Май-18 14:09 
Каждый из выше перечисленных дистрибутивов сильно кастомизируют инсталятор до вполне приемлемого уровня - на скрине абсолютный дефолт с опором на функционал. Как уже написал выше дефолт никто не использует.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 00:30 
Выглядит-то как г*о, как впрочем и большинство модных КуТешных поделок. Ну и да, серьезные дистрибутивы - те, которые разрабатывают, а не тупо собирают (типа дебиана) все равно пилят свое.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 01:13 
Qt как бы легко может в красоту, особенно с Qt Quick Controls 2, и он не виноват, что большинство разрабов плохие дизайнеры

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено анон , 18-Май-18 01:23 
Ну как сказать, на Gtk все однотипно и даже не вырвиглазно. Другое дело, что гномеры обычно половину контролов теряют, ну дык это ж гномеры.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Anonimus , 18-Май-18 14:17 
> Выглядит-то как г*о, как впрочем и большинство модных КуТешных поделок. Ну и
> да, серьезные дистрибутивы - те, которые разрабатывают, а не тупо собирают
> (типа дебиана) все равно пилят свое.

тот же дебиан активно помогает развивать этот продукт и не использует только потому что еще не весь функционал который есть в текущем был реализован. В частности раньше нормально не работал функционал связанный с LVM и LUKS, что существенно. Когда все функции будут полностью имплементированы скорее всего и они начнут использовать его по дефолту.


"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Ph0zzy , 18-Май-18 08:40 
А есть что-нибудь такое же, но --с перламутровыми пуговицами-- с текстовым интерфейсом?

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Andrey Mitrofanov , 18-Май-18 09:28 
> А есть что-нибудь такое же, но --с перламутровыми пуговицами-- с текстовым интерфейсом?

С имаксом, комстрокой и лиспом есть -- брать будете?


"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Аноним , 18-Май-18 18:31 
Да. Ссылку в студию, пожалуйста.

"Выпуск независимого от дистрибутивов инсталлятора Calamares ..."
Отправлено Andrey Mitrofanov , 19-Май-18 07:41 
#>>С имаксом, комстрокой и лиспом есть [I]-- брать будете?[/I]
> Да. Ссылку в студию, пожалуйста.

https://www.gnu.org/software/guix/manual/html_node/Preparing...
https://www.gnu.org/software/guix/manual/html_node/Proceedin...

Лиспом - гайл ским, имаксом - GNU Zile [[на полставки[[, но вроде можно прямо на лайве [поробовать!] сказать guix install emacs[[.

[I]Так будете брать-то, очередь не задерживайте!?