ed7bf0db9f
As was noted by Alexey Shabalin in libosinfo context, current ALT Linux images tend to lack ISO9660 metadata -- which they did have back in the day of Master 2.4. Please note that the data collection occurs this way due to mkimage's config.mk resetting the values to be empty; this was worked around by using another config file, $(BUILDDIR)lib/iso.mk, and including it later but that would require a separate target with per-target CONFIG variable which isn't elegant at all given the need to actually build up the metadata set. So the variables were changed (to be more readable anyways) and then proxied back to BOOT_*. This might be cleaned up some day after the inclusion order is tweaked or mkimage defaults get set-if-unset-yet (?=). |
||
---|---|---|
.gear | ||
bin | ||
conf.d | ||
doc | ||
features.in | ||
image.in | ||
lib | ||
pkg.in | ||
sub.in | ||
.gitignore | ||
COPYING | ||
main.mk | ||
Makefile | ||
QUICKSTART | ||
README | ||
reports.mk |
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/ иначе