8989fc2771
An initial draft of it was done half a year ago but several tricky thingies had kept the code from showing up as it was rather brittle and incomplete. This implementation involves quite a few changes all over the place but finally works good enough for live and installer images. Please pay attention to the versions of these packages: - installer-feature-setup-plymouth (0.3.2-alt1+) - branding-altlinux-sisyphus (20110706-alt2+ if used) - plymouth (0.8.3-alt20.git20110406+) See also: - http://www.altlinux.org/Branding - http://www.altlinux.org/Plymouth
41 lines
1.2 KiB
Makefile
41 lines
1.2 KiB
Makefile
# step 4: build the distribution image
|
|
|
|
# package lists are needed for installer and live-install images
|
|
METADIR := files/Metadata
|
|
|
|
# preparation targets of ../../build-distro/lib/build-distro.mk
|
|
WHATEVER += metadata
|
|
|
|
# handle these too
|
|
DOT_BASE += $(BASE_PACKAGES_REGEXP)
|
|
|
|
# args: name, suffix, command
|
|
define dump-THEM
|
|
if [ -n "$($(1)_$(2))" ]; then echo -e "\n## $(1)_$(2)"; $(3) $($(1)_$(2)); fi;
|
|
endef
|
|
|
|
dump-PACKAGES = $(call dump-THEM,$(1),PACKAGES,echo)
|
|
dump-LISTS = $(call dump-THEM,$(1),LISTS,cat)
|
|
|
|
# BASE_PACKAGES, BASE_LISTS and whatever else goes into base install;
|
|
# thus construct requisite .base packagelist for alterator-pkg
|
|
metadata-.base:
|
|
@cd $(call list,/); \
|
|
{ \
|
|
echo "## generated by features.in/metadata/lib/metadata.mk"; \
|
|
$(foreach p,SYSTEM COMMON THE BASE,$(call dump-PACKAGES,$(p))) \
|
|
$(foreach l,THE BASE,$(call dump-LISTS,$(l))) \
|
|
if [ -n "$(DOT_BASE)" ]; then \
|
|
echo -e "\n## DOT_BASE\n$(DOT_BASE)"; \
|
|
fi; \
|
|
} | sed -re '/^[^[:space:]#]/ s/[[:space:]]+/\n/g' > .base
|
|
|
|
# see also alterator-pkg (backend3/pkg-install);
|
|
# we only tar up what's up to it
|
|
metadata: metadata-.base
|
|
@mkdir -p $(METADIR); \
|
|
tar -C $(PKGDIR) -cvf - \
|
|
$(call rlist,$(MAIN_GROUPS) .base) \
|
|
$(call rgroup,$(MAIN_GROUPS)) \
|
|
> $(METADIR)/pkg-groups.tar
|