8d16069882
Looks like the 128k default block size is pretty well chosen: it saves ~6% of image size compared to 64k, and subsequent differences are ~3% per doubling the block size up to 1M (thanks led@ for carrying out the tests). So we'll stick with 256k for "normal" xz compression (inodes uncompressed) and get 512k back for "tight" one (compressed). The runtime performance issues are to be examined yet when bootchart or the like is deployed, nothing drastic though. With "fast" (gzip/lzo) squash compression inodes go unmolested. For the record, tight live-webkiosk builds as 95M image in 3:40, and tight live-flightgear.iso builds as 669M image in 6:34. Nice. There's no much sense going for 1M block size: e.g. live-webkiosk would drop to 93M (3:46) but its load time would increase up to 2:07 as compared to 1:48 for -b 524288 and 1:42 for -b 262144 -noI on a Duron 500/512M system given the very same DVD+RW media. |
||
---|---|---|
.. | ||
00example | ||
bootloader | ||
build-distro | ||
build-ve | ||
cleanup | ||
dev | ||
dos | ||
firmware | ||
hdt | ||
install2 | ||
isohybrid | ||
isomd5sum | ||
live | ||
lowmem | ||
ltsp | ||
memtest | ||
pack | ||
power | ||
repo | ||
rescue | ||
stage2 | ||
syslinux | ||
systemd | ||
virtualbox | ||
x11 | ||
Makefile | ||
README |
Этот каталог содержит т.н. фичи (features, особенности) -- каталоги, содержимое каждого из которых реализует одну из подключаемых автономных возможностей образа. Каждая фича должна содержать задействуемый при построении конфигурации будущего образа файл config.mk, включаемый в ../main.mk; он может описывать одну или более целей вида use/*, дополняющих конфигурацию, и при наличии дополнительных хуков для копирования или generate.* обязан добавить имя фичи в $(FEATURES), для чего создана функция add_feature без аргументов. На этапе генерации сборочного профиля фичи рассматриваются после инициализации профиля (см. ../image.in/) и копирования субпрофилей (см. ../sub.in/). Для каждой фичи, указанной в $(FEATURES), копируются подкаталоги сообразно субпрофилям, а также производится обработка {image-,}scripts.d/; затем выполняется скрипт generate.sh и задействуется generate.mk (при их наличии). Если фича дополняет хуками семейство целевых субпрофилей, построенных на одном базовом, можно воспользоваться подкаталогом с именем исходного базового субпрофиля (см. $src, $dst в Makefile). Наиболее употребительные цели можно снабжать "ярлычками" вроде "+icewm" с тем, чтобы сделать более краткими и выразительными использующие их правила. Просьба не злоупотреблять количеством. Каталог lib/ является специфическим для фич, определяющих построение конкретного вида образа -- см. build-*/. Несложный пример содержится в 00example/, более близкий к жизни и нынешним пределам возможностей метапрофиля -- в syslinux/.