7964bccb92
Thanks shaba@ for both the package and a wiki page, and dek@ for the inspiration to finally get to it. |
||
---|---|---|
.. | ||
00example | ||
bootloader | ||
build-distro | ||
build-ve | ||
cleanup | ||
dev | ||
dos | ||
firmware | ||
hdt | ||
install2 | ||
isomd5sum | ||
live | ||
lowmem | ||
memtest | ||
pack | ||
power | ||
rescue | ||
stage2 | ||
syslinux | ||
systemd | ||
x11 | ||
Makefile | ||
README |
Этот каталог содержит т.н. фичи (features, особенности) -- каталоги, содержимое каждого из которых реализует одну из подключаемых автономных возможностей образа. Каждая фича должна содержать задействуемый при построении конфигурации будущего образа файл config.mk, включаемый в ../Makefile; он может описывать одну или более целей вида use/*, дополняющих конфигурацию, и при наличии дополнительных хуков для копирования или generate.* должен добавить имя фичи в $(FEATURES). На этапе генерации сборочного профиля фичи рассматриваются после инициализации профиля (см. ../image.in/) и копирования субпрофилей (см. ../sub.in/). Для каждой фичи, указанной в $(FEATURES), копируются подкаталоги сообразно субпрофилям, а также производится обработка {tagged/,}{image-},scripts.d/ (см. cleanup/ в качестве примера); затем выполняется скрипт generate.sh и задействуется generate.mk (при их наличии). NB: тегированные скрипты являются экспериментальными, возможны недоработки и существенные изменения! Если фича дополняет хуками семейство целевых субпрофилей, построенных на одном базовом, можно воспользоваться подкаталогом с именем исходного базового субпрофиля (см. $src, $dst в Makefile). Каталог lib/ является специфическим для фич, определяющих построение конкретного вида образа -- см. build-*/. Несложный пример содержится в 00example/, более близкий к жизни и нынешним пределам возможностей метапрофиля -- в syslinux/. Основные фичи для построения дистрибутивных образов: - stage1: propagator, ядро инсталятора и initrd в т.ч. с firmware - stage2: базовый live-образ (и модули ядра, соответствующие stage1); используется фичами install2, live, rescue - main: пакетная база