f4519332e9
glebfm@ asked what to do with new package lists: whether these belong to features, or to distributions themselves. This question is actually open and up for discussion but there are guidelines that can and should be written down already; and so they were. Added pkgdups utility reference as well.
46 lines
3.7 KiB
Plaintext
46 lines
3.7 KiB
Plaintext
Этот каталог содержит включаемые фрагменты конфигурации образов с тем,
|
||
чтобы было удобнее параллельно разрабатывать специфические дистрибутивы
|
||
и VE без излишних merge conflict'ов.
|
||
|
||
Следует понимать, что основная цель появления mkimage-profiles на свет
|
||
-- это уменьшение "форков" внутри семейства дистрибутивных профилей.
|
||
Поэтому при возможности следует всё-таки работать над общей базовой
|
||
частью, включая скриптовые хуки и списки пакетов, а также оптимизировать
|
||
граф зависимостей между конфигурациями образов.
|
||
|
||
Попросту говоря, copy-paste -- тревожный признак.
|
||
|
||
По переменным:
|
||
- SYSTEM_PACKAGES стоит применять крайне осторожно -- эти пакеты попадут
|
||
во все стадии, в том числе в образ чувствительной к объёму install2
|
||
(в stage1 -- только в инструментальный чрут); применяйте для того,
|
||
что обязано быть и в инсталяторе, и в готовой системе
|
||
- для "обычного общего" (live, main, rescue) есть COMMON_PACKAGES
|
||
(NB: попадают в базовую систему)
|
||
- для "пользовательского" (live, main) есть THE_GROUPS, THE_LISTS
|
||
и THE_PACKAGES
|
||
- аналогично по модулям ядра:
|
||
+ STAGE1_KMODULES доступны в производных от stage2 (install2, live, rescue)
|
||
+ BASE_KMODULES попадут в установку по умолчанию
|
||
+ MAIN_KMODULES будут доступны для установки с носителя
|
||
+ LIVE_KMODULES предназначены для LiveCD/LiveFlash
|
||
+ THE_KMODULES попадут в "пользовательские" окружения
|
||
(live и установленную систему)
|
||
|
||
По подстановкам:
|
||
- $(VAR) подставляются перед их записью в $(CONFIG), который distcfg.mk
|
||
- $$(VAR) раскрываются позже, при включении $(CONFIG) и востребовании
|
||
значений; в этом случае их значения могут изменяться до окончания
|
||
конфигурации, а также зависеть от значений других переменных
|
||
|
||
По спискам пакетов:
|
||
- на этапе экспериментирования можно забивать прямо в описание образа
|
||
- при фиксации состояния стоит воспользоваться существующими списками,
|
||
а дополнительные оформить как можно более чётко обособленными по тем
|
||
задачам, для решения которых они и подобраны
|
||
- повторяющиеся логически связанные группы списков может иметь смысл
|
||
выделить в фичу (см., например, power или x11)
|
||
- если явной фичи не наблюдается, но у группы дистрибутивов намечается
|
||
заметная общая часть -- её можно выделить в промежуточную цель вида
|
||
distro/.name, не являющуюся самостоятельно собираемой
|