[make-initrd] make pseudo GUI from bootchain-interactime common feature

Leonid Krivoshein klark at basealt.ru
Mon Jun 28 17:43:48 MSK 2021


Добрый день!


28.06.2021 17:01, Alexey Gladkov пишет:
> On Thu, Jun 24, 2021 at 05:10:40PM +0300, Петр Михалицын wrote:
>> Всем привет,
>>   
>> Рассматривая новые фичи из bootchain обнаружил, что
>> bootchain-interactive не завязана на работе других фич из bootchain.В
>> связи с этим предлагаю вынести ее как отдельную фичу pseudo-dialogs (или
>> что-то типа того), которую могут использовать другие.
>>   
>> Я нахожу ее функционал достаточно полезным, внутри моей фичи, которая
>> осуществляет загрузку с защищенного носителя Рутокен. Так я бы смог
>> отображать в процессе загрузки меню настройки, которой мог бы
>> пользоваться администратор или пользователь. Внутри этого меню он сможет
>>
>> *  снять оверлей
>> *  изменить права доступа к защищенным разделам
>> *  разблокировать пин-код пользователя в случае необходимости
>> *
>> Все эти вещи конечно можно было бы сделать через grub или просто на
>> другой системе, но это будет уже не так удобно.
>>   
>> Так же предполагаю, что эта фича может быть использована и в других
>> сценариях общения с пользователем.
>>   
>> Что думаете по этому поводу?
> Я совсем не против добавить возможность интерактивно что-то спрашивать у
> пользователя в зависимости от возможностей терминала, если есть такая
> потребность.
>
> Правда с моей точки зрения было бы неплохо, если бы такая фича была
> работоспособна и c netconsole.
>
> Леонид, а у тебя какие планы на bootchain-interactive ?

Планы -- как можно быстрее интегрировать всю связку в make-initrd.

Идея переместить bootchain-interactive на верхний уровень и сделать 
частью make-initrd, независимой от bootchain была с самого начала, 
поэтому весь код этой фичи так написан, что он совсем не зависит от 
других модулей bootchain. Есть, правда, пара "но". Именно 
bootchain-interactive, как концепция, создана наспех, для написания 
остального кода altboot, поэтому её хорошо бы поревьювить именно в части 
общей пригодности интерфейса и арифметики.

Второй момент куда более важный. bootchain (изначально pipeline) мне 
видится как решение проблемы синхронизации последовательности 
выполняемых действий независимо от последовательности входящих событий. 
Так, фича overlayroot в bootchain сейчас может "гоняться" с фичей 
"resume" make-initrd. С ней вообще много чего может "гоняться". Было бы 
здорово сделать весь bootchain частью интерфейса make-initrd, и чтобы 
код разных его фич можно было более тесно интегрировать с bootchain, при 
необходимости. В первую очередь network, да и всё, что можно 
конфигурировать через диалоги, запрос паролей не только на токены, но и 
crypto-luks. Но это такие мечты и отдалённые задачи, наверняка решаемые 
уже после того, как удастся заапстримить bootchain.

При написании документации (уже около 30 страниц) обнаружил пару 
архитектурных изъяна в bootchain и сейчас их уже почти исправил, но пока 
не выгрузил обновления. При этом добился полной совместимости с 
pipeline, для его пользователей теперь вообще ничего можно не менять. С 
ipmi/novga консолями и utf8 тоже пока остаётся вопрос, как решать, ещё 
не заходил на эту задачу. И останется всё ещё раз прогнать на стендах, 
так-то оно вроде работало. После этого можно переходить к движению в 
апстрим в твоим участием! :-)


-- 
С уважением,
Леонид Кривошеин,
Начальник службы обеспечения совместимости.



More information about the Make-initrd mailing list