Go to file
Anton Midyukov 72117f4990 phone.mk: update base packages for phosh
Dropped out of image gnome-control-center and xdg-desktop-portal-gtk
because fix ALT bug 46895. Add them.
Also now phosh requires mutter-gnome and gnome-shell-data  because
fix ALT bug  46896.
2023-07-14 00:36:05 +07:00
bin tar2fs, build-vm: add VM_BOOTSIZE for change size /boot partition 2023-07-03 14:50:13 +07:00
conf.d phone.mk: update base packages for phosh 2023-07-14 00:36:05 +07:00
doc reports: DEBUG must be enabled, CHECK must be disabled 2023-05-30 22:27:33 +07:00
features.in initrd-propagator: save more reproducible command in mkinitrd 2023-07-13 19:08:25 +07:00
image.in image.in/functions.mk: protect the code from spontaneous execution 2022-12-30 22:31:39 +07:00
lib reports: DEBUG must be enabled, CHECK must be disabled 2023-05-30 22:27:33 +07:00
pkg.in remove desktop+lxqt+extra package list 2023-07-11 19:10:02 +07:00
sub.in Initial feature live-install 2023-02-27 16:48:03 +07:00
.gitignore .gitignore: exclude .image.in/files/.empty 2022-02-21 21:50:40 +07:00
COPYING actually released as free software 2011-11-04 16:15:30 +02:00
main.mk Set variable BRANCH, if not defined or empty; show $BRANCH 2022-12-30 20:02:11 +07:00
Makefile reports: DEBUG must be enabled, CHECK must be disabled 2023-05-30 22:27:33 +07:00
QUICKSTART QUICKSTART: add a note about builder-useradd command 2023-07-03 14:50:13 +07:00
README README, doc: update urls, authors 2021-10-25 15:13:00 +07:00
reports.mk reports.mk: allow read access to the report to everyone 2023-05-30 22:53:28 +07: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 m-p! ==

*Brief summary*

  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.

Задача:

* конфигурирование и создание образов на базе ALT Linux

Концепция:

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

Особенности:

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

Стадии работы:

* инициализация сборочного профиля
* сборка конфигурации образа
* наполнение сборочного профиля
* сборка образа

Объекты:

* дистрибутивы и виртуальные среды/машины:
** описываются в conf.d/*.mk
** могут основываться на предшественниках, расширяя их
** дистрибутивы также включают один или более субпрофилей по надобности
** желательно избегать множественного наследования, см. тж. фичи

* субпрофили:
** список собирается в $(SUBPROFILES)
** базовые комплекты помещены в подкаталогах под sub.in/;
   их наборы скриптов могут расширяться фичами

* фичи:
** законченные блоки функциональности (или наборы таковых)
** описываются в индивидуальных features.in/*/config.mk
** могут требовать другие фичи, а также субпрофили
** накопительный список собирается в $(FEATURES)
** при сборке $(BUILDDIR) содержимое фич добавляется в профиль

* списки пакетов (*_LISTS):
** _внимание_: не надо создавать фичу, если достаточно списка пакетов!
** просьба по возможности избегать дублирования (см. bin/pkgdups)

* индивидуальные пакеты (*_PACKAGES): см. тж. conf.d/README

Результат:

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

См. тж.:

* https://altlinux.org/mkimage-profiles: обзорная документация, в т.ч. howto
* doc/:
** params.txt: переменные, указываемые при запуске сборки
** pkglists.txt: формирование состава образа
** features.txt: обзор подключаемых особенностей

Примечание: пути в документации задаются от каталога верхнего уровня,
если не указаны как относительные в явном виде (./) или по смыслу.

Удачи; что не так -- пишите.

Michael Shigorin <mike@altlinux.org>, Anton Midyukov <antohami@altlinux.org>