Go to file
Michael Shigorin 390f4f6bc8 lib/build.mk: add basic CHECK support
The idea is to check:
- the reachability of every target
  used to build the image in question;
- the availability of all the package lists
  and subsequently packages for that image;
- the lack of "dangling" intermediate targets,
  features, pkglists, hooks etc.

So far only the first step is implemented --
it's easy and somewhat helpful already for
  make CHECK=1 all
2011-12-06 14:22:20 +02:00
.gear gear-store-tags 2011-12-02 20:09:07 +02:00
bin pkgdups.sh and semi-random tagged pkglists shuffle 2011-12-02 20:02:55 +02:00
conf.d pkgdups.sh and semi-random tagged pkglists shuffle 2011-12-02 20:02:55 +02:00
doc lib/build.mk: add basic CHECK support 2011-12-06 14:22:20 +02:00
features.in repo: generate RPM-GPG-KEY as well 2011-12-02 17:46:04 +02:00
image.in initial repo feature 2011-11-19 11:45:59 +02:00
lib lib/build.mk: add basic CHECK support 2011-12-06 14:22:20 +02:00
pkg.in pkgdups.sh and semi-random tagged pkglists shuffle 2011-12-02 20:02:55 +02:00
sub.in initial repo feature 2011-11-19 11:45:59 +02:00
.gitignore kernel and BUILDDIR fixes 2011-11-04 16:15:29 +02:00
COPYING actually released as free software 2011-11-04 16:15:30 +02:00
Makefile conf/live.mk: minor refactoring 2011-12-02 17:45:41 +02:00
QUICKSTART full-view docs update 2011-11-07 00:01:36 +02:00
README introduced add_feature function 2011-11-19 11:47:29 +02:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Welcome to mkimage-profiles!

English quickstart: make distro/server-base.iso;
see http://en.altlinux.org/Hasher (and a large tmpfs).

Configurables: ~/.mkimage/profiles.mk;
see doc/profiles.mk.sample and libdistro.mk

License: GPLv2+, see COPYING.

Most docs are in Russian, welcome to learn it or ask for English.
См. тж. http://www.altlinux.org/Mkimage/Profiles/m-p

Задача:
- конфигурирование и создание образов на базе ALT Linux

Концепция:
- конфигурация, как и образ -- объект постадийной сборки
- метапрофиль служит репозиторием для построения индивидуального
  профиля, по которому создаётся итоговый образ

Особенности:
- метапрофиль может быть полностью read-only при сборке
- для сборки подыскивается предпочтительно tmpfs
- в профиль копируются только нужные объекты;
  он автономен относительно метапрофиля

Стадии работы:
- инициализация сборочного профиля
- сборка конфигурации образа
- наполнение сборочного профиля
- сборка образа

Объекты:
- дистрибутивы и виртуальные окружения:
  + описываются в conf.d/*.mk или соответственно lib/{distro,ve}.mk
  + могут основываться одно на другом
  + дистрибутивы также:
    - включают один или более субпрофилей по надобности
  + желательно избегать множественного наследования, см. тж. фичи
- субпрофили:
  + список собирается в $(SUBPROFILES)
  + базовые комплекты помещены в подкаталогах под sub.in/;
    их наборы скриптов могут расширяться фичами
- фичи:
  + список собирается в $(FEATURES)
  + законченные блоки функциональности (или наборы таковых)
  + описываются в индивидуальных features.in/*/config.mk
  + могут требовать другие фичи, а также субпрофили
  + при сборке $(BUILDDIR) содержимое фич добавляется в профиль
- списки пакетов (*_LISTS):
  + просьба по возможности избегать дублирования
- индивидуальные пакеты (*_PACKAGES): см. тж. conf.d/README

Результат:
- при успешном завершении сборки образ называется по имени цели
  и укладывается в $(IMAGEDIR):
  + указанный явно,
  + либо ~/out/ (если возможно),
  + или $(BUILDDIR)/out/ иначе