Commit faafaf12 authored by Michael Shigorin's avatar Michael Shigorin

README updates

...and some more cosmetic fixes
parent c2f70e5c
...@@ -2,7 +2,8 @@ see also http://www.altlinux.org/Mkimage/Profiles/next; ...@@ -2,7 +2,8 @@ see also http://www.altlinux.org/Mkimage/Profiles/next;
quickstart: make distclean server-base.iso quickstart: make distclean server-base.iso
configurables: ~/.mkimage/profiles.mk, see libdistro.mk configurables: ~/.mkimage/profiles.mk,
see doc/profiles.mk.sample and libdistro.mk
Концепция: Концепция:
- метапрофиль служит репозиторием всего возможно нужного для - метапрофиль служит репозиторием всего возможно нужного для
...@@ -29,8 +30,8 @@ configurables: ~/.mkimage/profiles.mk, see libdistro.mk ...@@ -29,8 +30,8 @@ configurables: ~/.mkimage/profiles.mk, see libdistro.mk
желательно избегать множественного наследования, используя желательно избегать множественного наследования, используя
вместо него блоки use/* вместо него блоки use/*
- субпрофили (список собирается в $(SUBPROFILES)): - субпрофили (список собирается в $(SUBPROFILES)):
+ stage1: propagator (ожидается после syslinux) + stage1: propagator и ядро инсталятора
+ install2: инсталятор + install2: сам инсталятор
+ main: пакетная база к инсталяции (обязательная и дополнительная) + main: пакетная база к инсталяции (обязательная и дополнительная)
+ ... + ...
- блоки функциональности use/*: не являются самостоятельными - блоки функциональности use/*: не являются самостоятельными
......
...@@ -11,3 +11,5 @@ ...@@ -11,3 +11,5 @@
Если требуется какая-либо иная обработка чрута, следует Если требуется какая-либо иная обработка чрута, следует
предпочитать scripts.d/. предпочитать scripts.d/.
Результат -- готовый образ в $(IMAGEDIR)/.
...@@ -13,20 +13,19 @@ endif ...@@ -13,20 +13,19 @@ endif
iso: iso:
@echo -n "** starting image build" @echo -n "** starting image build"
@if test -n "$(DEBUG)"; then \ @if test -n "$(DEBUG)"; then \
echo ": see $(BUILDLOG)"; \ echo ": tail -f $(BUILDLOG)" $(SHORTEN); \
else \ else \
echo " (coffee time)"; \ echo " (coffee time)"; \
fi fi
@if time $(ARCH) \ @if time -f %E $(ARCH) \
$(MAKE) -C $(BUILDDIR)/ GLOBAL_BUILDDIR=$(BUILDDIR) $(LOG); \ $(MAKE) -C $(BUILDDIR)/ GLOBAL_BUILDDIR=$(BUILDDIR) $(LOG); \
then \ then \
echo "** build done (`tail -2 $(BUILDLOG) \ echo "** build done (`tail -1 $(BUILDLOG) | cut -f1 -d. \
| sed -n 's,^.* \([0-9:]\+\)\...elapsed.*$$,\1,p' \
|| echo "no log"`)"; \ || echo "no log"`)"; \
else \ else \
echo "** build failed, see log: $(BUILDLOG)"; \ echo "** build failed, see log: $(BUILDLOG)" $(SHORTEN); \
if test -z "$(DEBUG)"; then \ if test -z "$(DEBUG)"; then \
echo " (you might want to re-run with DEBUG=1)"; \ echo " (you might want to re-run with DEBUG=1)"; \
fi; \ fi; \
tail -100 "$(BUILDLOG)" | grep "^E:"; \ tail -100 "$(BUILDLOG)" | egrep "^E:|rror|arning"; \
fi fi
...@@ -9,7 +9,7 @@ boot/%: distro/.init ...@@ -9,7 +9,7 @@ boot/%: distro/.init
# initalize config from scratch, put some sane defaults in # initalize config from scratch, put some sane defaults in
distro/.init: distro/.init:
@echo "** preparing distro configuration$${DEBUG:+: see $(CONFIG)}" @echo "** preparing distro configuration$${DEBUG:+: see $(CONFIG)}" $(SHORTEN)
@$(call try,MKIMAGE_PREFIX,/usr/share/mkimage) @$(call try,MKIMAGE_PREFIX,/usr/share/mkimage)
@$(call try,GLOBAL_VERBOSE,) @$(call try,GLOBAL_VERBOSE,)
@$(call try,IMAGEDIR,$(IMAGEDIR)) @$(call try,IMAGEDIR,$(IMAGEDIR))
......
...@@ -9,6 +9,7 @@ endif ...@@ -9,6 +9,7 @@ endif
BUILDLOG ?= $(BUILDDIR)/build.log BUILDLOG ?= $(BUILDDIR)/build.log
# LOG holds a postprocessor
ifdef DEBUG ifdef DEBUG
GLOBAL_VERBOSE ?= $(DEBUG) GLOBAL_VERBOSE ?= $(DEBUG)
ifeq (2,$(DEBUG)) ifeq (2,$(DEBUG))
......
...@@ -9,6 +9,11 @@ BUILDDIR := $(shell [ -s build ] \ ...@@ -9,6 +9,11 @@ BUILDDIR := $(shell [ -s build ] \
|| bin/mktmpdir mkimage-profiles.build) || bin/mktmpdir mkimage-profiles.build)
endif endif
# holds a postprocessor; shell test executes in particular situation
# NB: not exported, for toplevel use only
SHORTEN = $(shell [ "$(DEBUG)" != 2 -a -s build ] \
&& echo "| sed 's,$(BUILDDIR),build,'")
# even smart caching only hurts when every build goes from scratch # even smart caching only hurts when every build goes from scratch
NO_CACHE ?= 1 NO_CACHE ?= 1
......
...@@ -3,6 +3,9 @@ ...@@ -3,6 +3,9 @@
При добавлении скриптов в image-scripts.d/ следует позаботиться, При добавлении скриптов в image-scripts.d/ следует позаботиться,
чтобы в компактном livecd, которым является инсталятор, оказались чтобы в компактном livecd, которым является инсталятор, оказались
нужные утилиты (INSTALL2_PACKAGES). Перегружать его не следует. нужные утилиты (INSTALL2_PACKAGES). Перегружать его не следует,
поскольку это прямо влияет на требования по минимальному размеру
оперативной памяти для установки.
Результат -- squashfs-образ в файле altinst. Результат -- squashfs в файле altinst, подлежащем копированию
в образ.
...@@ -6,4 +6,14 @@ ...@@ -6,4 +6,14 @@
т.е. это scripts.d/; следует крайне бережно относиться т.е. это scripts.d/; следует крайне бережно относиться
к составу STAGE1_PACKAGES и объёму этой стадии. к составу STAGE1_PACKAGES и объёму этой стадии.
Обратите внимание: если не указать явно требуемый вариант
ядра посредством STAGE1_KFLAVOUR, будет взят последний из
перечисленных в KFLAVOURS; если не указать явно регэкс,
описывающий требуемые в инсталяторе модули, посредством
STAGE1_KMODULES_REGEXP -- будет только подмножество модулей
из kernel-image (упаковываются в syslinux/alt0/full.cz).
Требуется для инсталяционных, live- и rescue-образов. Требуется для инсталяционных, live- и rescue-образов.
Результат -- каталог syslinux/, подлежащий копированию
в образ.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment