[devel-distro] installer-feature-* и rootfs

Ivan A. Melnikov iv at altlinux.org
Tue Dec 10 10:06:49 MSK 2019


On Mon, Dec 09, 2019 at 05:19:54PM +0300, Mikhail Efremov wrote:
> On Fri, 6 Dec 2019 23:21:40 +0700 Антон Мидюков wrote:
> > 06.12.2019 21:48, Антон Мидюков пишет:
> > > 06.12.2019 21:21, Mikhail Efremov пишет:  
> > >> On Fri, 6 Dec 2019 17:12:23 +0400 Ivan A. Melnikov wrote:
> > >> [...]  
> > >>> Как думаете, не стоит ли включить такой хук непосредственно
> > >>> в alterator-setup, а не в отдельный пакет?  
> > >> Лучше отдельный пакет, см. выше. Хуки в installer-feature-* писались
> > >> для использования в инсталляторе и могут работать неправильно при таком
> > >> нештатном использовании. Т.е. installer-features и
> > >> rootfs-installer-features - это грязные хаки, нельзя бездумно
> > >> использовать с ними произвольную installer-feature. Всегда нужно
> > >> внимательно эту installer-feature прочитать и убедиться, что ее можно
> > >> так использовать.  
> > >
> > > Я думаю, что не надо включать в собираемый rootfs installer-features, 
> > > которые не предназначены для этой rootfs.
> 
> И также отдельно включать {rootfs,livecd}-installer-features явно и
> только если хорошо знаешь, что делаешь. Пусть живет отдельно, иначе
> может создаться впечатление, что это штатная вещь, а не грязный хак,
> которым это на самом деле является.
> 
> > > Ограничить типом собираемой цели в mkimage-profiles не проблема.
> > >  
> > Мысль о бездумном использовании правильная. Давайте введём новую 
> > категорию features-common, которые подходят и для installer, и для 
> > livecd-install, и для alterator-setup. Поместим их скрипты, например, в 
> > /usr/share/install-common/. Научим выполнять оттуда скрипты всех троих. 
> > А затем останется постепенно выделить общие фичи, проверив, что они 
> > подходят всем троим. Тогда точно никому ничего не поломаем. А в названии 
> > feature укажем -common. Как идея?
> 
> Вот только проблемы хотя бы с тем, какие стадии вообще есть и когда
> какие хуки должны запускаться. В alterator-setup вообще нет установки
> пакетов, например. Поэтому не очевидно когда должны запускаться
> preinstall-хуки. И это далеко не единственное различие.
> Нужно продумать какие нужны хуки, в какой момент они должны
> запускаться, какие аргументы/переменные им должны передаваться и как
> они будут называться. И все это должно быть более-менее согласованно для
> installer, livecd-install и alterator-setup.

Я просмотрел то, что используется в simply; там что-то применимое
для rootfs происходит только в postinstall. Так что я оставил запуск
только postinstall хуков и в таком виде отправлю это в Сизиф, p9
и применю.

> > Не такая уж и большая работа, как мне кажется. Но результат будет не 
> > здесь и не сейчас, конечно.
> 
> Я бы предпочел сначала хорошенько все продумать прежде чем что-то
> делать. Иначе нагородим еще один жуткий набор костылей.

Мне кажется, что по большому счёту существующих костылей вполне
достатночно, нужно просто ими аккуратнee воспользоваться.

Из того, что я увидел, большая часть всего очень специфична для
installer'а и не требуется или должна делаться совсем по-другому
для livecd и rootfs. Включение сервисов и настройки control логичнее
мне кажется превести на фичи m-p, там для этого есть более
логичные и переносимые механизмы (например,
installer-feature-sudo-enable-by-default или installer-feature-nfs*).
Оставшиеся немногие вещи (вроде подстановки первого пользователя
в lightdm) мне кажется можно перетащить хоть в /etc/firsttime.d
(если на она выполняется до alterator-setup, это надо в любом
случае поправить).

-- 
  wbr,
    iv m.



More information about the devel-distro mailing list