2011-10-06 12:46:31 +04:00
Welcome to mkimage-profiles!
2010-09-14 09:44:35 +04:00
2011-10-06 12:46:31 +04:00
English quickstart: make distro/server-base.iso;
see http://en.altlinux.org/Hasher (and a large tmpfs).
2010-09-27 23:02:57 +04:00
2011-10-06 12:46:31 +04:00
Configurables: ~/.mkimage/profiles.mk;
2011-06-12 22:27:49 +04:00
see doc/profiles.mk.sample and libdistro.mk
2010-09-14 09:44:35 +04:00
2011-10-06 12:46:31 +04:00
License: GPLv2+, see COPYING.
2011-07-20 23:10:52 +04:00
2011-11-06 23:57:28 +04:00
Most docs are in Russian, welcome to learn it or ask for English.
См. тж. http://www.altlinux.org/Mkimage/Profiles/m-p
Задача:
- конфигурирование и создание образов на базе ALT Linux
2011-09-19 11:55:45 +04:00
2010-09-14 09:44:35 +04:00
Концепция:
2011-11-06 23:57:28 +04:00
- конфигурация, как и образ -- объект постадийной сборки
2011-07-20 22:45:28 +04:00
- метапрофиль служит репозиторием для построения индивидуального
2011-11-06 23:57:28 +04:00
профиля, по которому создаётся итоговый образ
2010-09-14 09:44:35 +04:00
Особенности:
2010-09-27 23:02:57 +04:00
- метапрофиль может быть полностью read-only при сборке
2010-09-14 09:44:35 +04:00
- для сборки подыскивается предпочтительно tmpfs
server-ovz; KDEFAULT; syslinux features reworked
Renamed server-light.iso into server-ovz.iso to avoid brand dilution
and confusion (rider@'s server-light rather favours kvm, anyways).
Introduced KDEFAULT: a reliable default kernel chooser knob
since apt's regex ordering proved pretty unreliable.
Spelling things explicitly is better anyways.
SYSLINUX related features undergone pretty major rewrite
(that includes syslinux, hdt and memtest).
The problem to tackle was features.in/syslinux/generate.mk
assuming syslinux and pciids available in build *host* system;
this well might not be the case (or worse yet, those can be
just different). So now we're a bit less elegant and a bit
more enterprise, stuffing things into chroot and working there.
Bunch of other fixes along the road, including ; to name a few:
- fixed memtest entry (overlooked while renaming SYSLINUX_ITEMS)
- new and shiny doc/CodingStyle
- gfxboot, stage1 target chain, hdt tweaks
- distro.mk rehashed
- README++
- TODO: dropped (integer overflow anyways)
+ actually moved off-tree to reduce commit spam
- s,\.config\.mk,distcfg.mk,g
- doc/profiles.mk.sample: sample ~/.mkimage/profiles.mk
- ...and assorted fixups/additions
Sorry for convoluted commit, this would have been pretty hard to
rework into some really readable shape (and you might be interested
in the original repo's history horrors then, anyways).
2011-05-31 02:05:33 +04:00
- в профиль копируются только нужные объекты;
он автономен относительно метапрофиля
2010-09-09 13:50:29 +04:00
2010-09-22 01:58:24 +04:00
Стадии работы:
2011-11-06 23:57:28 +04:00
- инициализация сборочного профиля
- сборка конфигурации образа
- наполнение сборочного профиля
- сборка образа
2010-09-22 01:58:24 +04:00
2010-09-09 13:50:29 +04:00
Объекты:
2011-11-06 23:57:28 +04:00
- дистрибутивы и виртуальные окружения:
+ описываются в conf.d/*.mk или соответственно lib/{distro,ve}.mk
2011-10-06 12:46:31 +04:00
+ могут основываться одно на другом
2011-11-06 23:57:28 +04:00
+ дистрибутивы также:
- включают один или более субпрофилей по надобности
2011-07-20 22:45:28 +04:00
+ желательно избегать множественного наследования, см. тж. фичи
- субпрофили:
+ список собирается в $(SUBPROFILES)
+ базовые комплекты помещены в подкаталогах под sub.in/;
их наборы скриптов могут расширяться фичами
- фичи:
+ список собирается в $(FEATURES)
+ законченные блоки функциональности (или наборы таковых)
+ описываются в индивидуальных features.in/*/config.mk
2011-10-06 12:46:31 +04:00
+ могут требовать другие фичи, а также субпрофили
2011-11-16 19:58:42 +04:00
+ при сборке $(BUILDDIR) содержимое фич добавляется в профиль
2011-11-06 23:57:28 +04:00
- списки пакетов (*_LISTS):
+ просьба по возможности избегать дублирования
- индивидуальные пакеты (*_PACKAGES): см. тж. conf.d/README
2011-05-11 23:40:47 +04:00
Результат:
2011-11-06 23:57:28 +04:00
- при успешном завершении сборки образ называется по имени цели
и укладывается в $(IMAGEDIR):
2011-05-11 23:40:47 +04:00
+ указанный явно,
+ либо ~/out/ (если возможно),
+ или $(BUILDDIR)/out/ иначе