Go to file
Michael Shigorin 3c26cc869d initial native ARM support
The only thing to be fixed was setarch(8) symlinks assumption
that is correct for x86 but not for ARM.

There's also some hasher(7) setup to be done:

  mkdir -p ~/.hasher
  echo >> ~/.hasher/config <<-EOF
  def_target=arm
  #cache_dir=$HOME/tmp	# depends on RAM/storage configuration
  EOF

...and of course apt(8) should be properly set up too.

An example PoC build on a CM-A510 board (tmpfs):

  $ make BRANDING=altlinux-centaurus ve/bare.tar.gz
  ** ARCH: arm
  18:10:45 initializing BUILDDIR: build/
  18:10:45 preparing distro config: build/distcfg.mk
  18:10:46 starting image build: tail -f build/build.log
  18:14:49 done (4:02)
  ** image: $TMP/out/bare-20120706-arm.tar.gz [23M]
2012-07-09 21:32:54 +03:00
.gear gear-store-tags 2012-07-02 16:19:06 +03:00
bin bashize tar2vm 2012-06-25 19:29:38 +03:00
conf.d desktop.mk: use Croscore Arimo for most installers 2012-07-02 16:14:34 +03:00
doc initial native ARM support 2012-07-09 21:32:54 +03:00
features.in 50-setup-network: spelling fixes 2012-07-02 16:14:34 +03:00
image.in initial native ARM support 2012-07-09 21:32:54 +03:00
lib initial native ARM support 2012-07-09 21:32:54 +03:00
pkg.in slinux/xfce: gnome-screensaver -> xscreensaver. 2012-06-26 18:48:03 +04:00
sub.in added plymouth feature 2012-06-14 17:15:24 +03: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
main.mk initial build-vm feature 2012-06-18 21:56:46 +03:00
Makefile initial native ARM support 2012-07-09 21:32:54 +03:00
QUICKSTART docs updated 2012-06-25 19:29:38 +03:00
README README: whoops, temporary name persisted 2012-07-02 16:14:34 +03:00
reports.mk Add LIBDIR variable. 2012-06-21 17:11:02 +04: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!

Configurables: ~/.mkimage/profiles.mk;
see doc/params.txt and conf.d/README

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 и doc/*.txt:
- params.txt: переменные, указываемые при запуске сборки
- features.txt: обзор подключаемых особенностей
- pkglists.txt: формирование состава образа

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

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

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

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

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

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