mkimage – инструмент для сборки образов Sisyphus-based системы по шаблону.
mkimage – четвёртый и на данный момент последний среди длинного ряда сборщиков образов в рамках Sisyphus. Более подробно о том, кто кого сменял, можно узнать в истории.
mkimage был создан для замены spt – последний использует жёстко зашитую последовательность шелл-скриптов, а шаблоны дистрибутивов с трудом поддаются вычленению общих блоков.
В результате: шаблоны представляют собой модульные Makefiles (как результат – «бесплатное» кэширование и распараллеливание сборки). Как и spt, Использует hasher.
Предполагается использование 4.0/branch [+ people/boyarsh/repo/] либо 4.1/branch. На сегодняшний день придётся организовать кастомный apt.conf, см. ниже.
Далее (поправьте boyarsh на используемый логин! проверьте глазами получившееся):
Изучение существующих примеров удобней начинать с корневого Makefile.in и далее по profiles/*/Makefile.in и profiles/packages-lists/*. Стоит обратить внимание, что IMAGE_PACKAGES в профильном мэйкфайле может содержать как включаемые файлы-списки, так и имена пакетов (если как файлы они не будут найдены).
Q: чем различаются install2/{image-scripts.d,scripts.d}/?
A: image-scripts выполняются в chroot собранной стадии. scripts — в инструментальном chroot-е после установки пакетов и до архивации результата, что позволяет копировать файлы из/в chroot
С одной стороны, altlinux-release стал виртуальным пакетом.
С другой — сейчас его требует basesystem.
Результат таков, что сперва в базовую систему устанавливается какой-либо из кандидатов (сейчас это обычно altlinux-release-terminal по лексикографическому старшинству), а потом apt не может его заменить уже явно указанным.
Объезд: прибить в конфигурации гвоздиком нужный вариант.
Более системные варианты объездов и решений в данный момент обсуждаются в devel@.
> WARNING: The following essential packages will be removed > This should NOT be done unless you know exactly what you are doing! > altlinux-release-terminal (due to basesystem) http://lists.altlinux.org/pipermail/devel/2007-December/067565.html http://lists.altlinux.org/pipermail/devel/2007-December/067569.html
boyarsh@ в devel@
краткая суть объезда:
свой apt.conf:
pkgpriorities:
Если возникают проблемы вроде неустанавливающихся пакетов:
То может иметь смысл проверить вручную так:
Если не поднялся gfxboot и propagator выпал из автоматического режима — наверняка переменные INFO_THEME и DESKTOP_FLAVOUR (по состоянию на сегодня) не долетели до profiles/Makefile; попробуйте прибить руками и посмотреть, не в этом ли дело: