9cedefdba9
The features might get copy-pasted (or even copied-and-pruned) when initialized; there's an unneccessary duplication of the function name in the line adding it to FEATURES list, thus prone to being forgotten and causing some havoc later on. It was wrong in the first place but tackling this with some double-colon rules ran into terminality issues, and further tortures were considered unneccessary. The current solution isn't perfect (no completely transparent function name registration upon corresponding target being called) but at least it is an improvement...
61 lines
3.1 KiB
Plaintext
61 lines
3.1 KiB
Plaintext
Welcome to mkimage-profiles!
|
||
|
||
English quickstart: make distro/server-base.iso;
|
||
see http://en.altlinux.org/Hasher (and a large tmpfs).
|
||
|
||
Configurables: ~/.mkimage/profiles.mk;
|
||
see doc/profiles.mk.sample and libdistro.mk
|
||
|
||
License: GPLv2+, see COPYING.
|
||
|
||
Most docs are in Russian, welcome to learn it or ask for English.
|
||
См. тж. http://www.altlinux.org/Mkimage/Profiles/m-p
|
||
|
||
Задача:
|
||
- конфигурирование и создание образов на базе ALT Linux
|
||
|
||
Концепция:
|
||
- конфигурация, как и образ -- объект постадийной сборки
|
||
- метапрофиль служит репозиторием для построения индивидуального
|
||
профиля, по которому создаётся итоговый образ
|
||
|
||
Особенности:
|
||
- метапрофиль может быть полностью read-only при сборке
|
||
- для сборки подыскивается предпочтительно tmpfs
|
||
- в профиль копируются только нужные объекты;
|
||
он автономен относительно метапрофиля
|
||
|
||
Стадии работы:
|
||
- инициализация сборочного профиля
|
||
- сборка конфигурации образа
|
||
- наполнение сборочного профиля
|
||
- сборка образа
|
||
|
||
Объекты:
|
||
- дистрибутивы и виртуальные окружения:
|
||
+ описываются в conf.d/*.mk или соответственно lib/{distro,ve}.mk
|
||
+ могут основываться одно на другом
|
||
+ дистрибутивы также:
|
||
- включают один или более субпрофилей по надобности
|
||
+ желательно избегать множественного наследования, см. тж. фичи
|
||
- субпрофили:
|
||
+ список собирается в $(SUBPROFILES)
|
||
+ базовые комплекты помещены в подкаталогах под sub.in/;
|
||
их наборы скриптов могут расширяться фичами
|
||
- фичи:
|
||
+ список собирается в $(FEATURES)
|
||
+ законченные блоки функциональности (или наборы таковых)
|
||
+ описываются в индивидуальных features.in/*/config.mk
|
||
+ могут требовать другие фичи, а также субпрофили
|
||
+ при сборке $(BUILDDIR) содержимое фич добавляется в профиль
|
||
- списки пакетов (*_LISTS):
|
||
+ просьба по возможности избегать дублирования
|
||
- индивидуальные пакеты (*_PACKAGES): см. тж. conf.d/README
|
||
|
||
Результат:
|
||
- при успешном завершении сборки образ называется по имени цели
|
||
и укладывается в $(IMAGEDIR):
|
||
+ указанный явно,
|
||
+ либо ~/out/ (если возможно),
|
||
+ или $(BUILDDIR)/out/ иначе
|