Commit 85217cd1 authored by Mike Radyuk's avatar Mike Radyuk Committed by Michael Shigorin

added asciidoc support

parent 301a13a0
PROJECT = mkimage-profiles
TOPLEVEL_DOC = mkimage-profiles.asciidoc
HTMLPAGE = $(TOPLEVEL_DOC:.asciidoc=.html)
RESOURCE_FILES = /etc/asciidoc/
A2X = a2x
.PHONY: all clean
all: $(HTMLPAGE)
%.html: %.asciidoc
$(A2X) -d book -f xhtml -a lang=ru \
--icons -r $(RESOURCE_FILES) -r ./ \
--xsltproc-opts='--stringparam toc.max.depth 3' \
$<
chunked: $(TOPLEVEL_DOC)
$(A2X) -d book -f chunked -a lang=ru \
--icons -r /etc/asciidoc/ -r ./ \
--xsltproc-opts='--stringparam toc.max.depth 3' \
$<
pdf: $(TOPLEVEL_DOC)
$(A2X) --verbose --fop --fop-opts='-c fop.xconf' -d book -f pdf -a lang=ru \
--xsltproc-opts=' \
--stringparam toc.max.depth 3 \
--stringparam title.font.family "Arial" \
--stringparam body.font.family "Verdana" \
--stringparam monospace.font.family "Arial"' \
$<
Welcome to mkimage-profiles! [float]
=== Welcome to mkimage-profiles! ===
Configurables: ~/.mkimage/profiles.mk; Configurables: ~/.mkimage/profiles.mk;
see doc/params.txt and conf.d/README see doc/params.txt and conf.d/README
License: GPLv2+, see COPYING License: GPLv2+, see COPYING
Most docs are in Russian, welcome to learn it or ask for English. Most docs are in Russian, welcome to learn it or ask for English.
Задача: Задача:
- конфигурирование и создание образов на базе ALT Linux
* конфигурирование и создание образов на базе ALT Linux
Концепция: Концепция:
- конфигурация, как и образ -- объект постадийной сборки
- метапрофиль служит репозиторием для построения индивидуального * конфигурация, как и образ -- объект постадийной сборки
* метапрофиль служит репозиторием для построения индивидуального
профиля, по которому создаётся итоговый образ профиля, по которому создаётся итоговый образ
Особенности: Особенности:
- метапрофиль может быть полностью read-only при сборке
- для сборки подыскивается предпочтительно tmpfs * метапрофиль может быть полностью read-only при сборке
- в профиль копируются только нужные объекты; * для сборки подыскивается предпочтительно tmpfs
* в профиль копируются только нужные объекты;
он автономен относительно метапрофиля он автономен относительно метапрофиля
Стадии работы: Стадии работы:
- инициализация сборочного профиля
- сборка конфигурации образа * инициализация сборочного профиля
- наполнение сборочного профиля * сборка конфигурации образа
- сборка образа * наполнение сборочного профиля
* сборка образа
Объекты: Объекты:
- дистрибутивы и виртуальные среды/машины:
+ описываются в conf.d/*.mk или соответственно lib/{distro,ve,vm}.mk * дистрибутивы и виртуальные среды/машины:
+ могут основываться на предшественниках, расширяя их ** описываются в conf.d/*.mk или соответственно lib/{distro,ve,vm}.mk
+ дистрибутивы также: ** могут основываться на предшественниках, расширяя их
- включают один или более субпрофилей по надобности ** дистрибутивы также:
+ желательно избегать множественного наследования, см. тж. фичи *** включают один или более субпрофилей по надобности
- субпрофили: ** желательно избегать множественного наследования, см. тж. фичи
+ список собирается в $(SUBPROFILES) * субпрофили:
+ базовые комплекты помещены в подкаталогах под sub.in/; ** список собирается в $(SUBPROFILES)
** базовые комплекты помещены в подкаталогах под sub.in/;
их наборы скриптов могут расширяться фичами их наборы скриптов могут расширяться фичами
- фичи: * фичи:
+ законченные блоки функциональности (или наборы таковых) ** законченные блоки функциональности (или наборы таковых)
+ описываются в индивидуальных features.in/*/config.mk ** описываются в индивидуальных features.in/*/config.mk
+ могут требовать другие фичи, а также субпрофили ** могут требовать другие фичи, а также субпрофили
+ накопительный список собирается в $(FEATURES) ** накопительный список собирается в $(FEATURES)
+ при сборке $(BUILDDIR) содержимое фич добавляется в профиль ** при сборке $(BUILDDIR) содержимое фич добавляется в профиль
- списки пакетов (*_LISTS): * списки пакетов (*_LISTS):
+ просьба по возможности избегать дублирования (см. bin/pkgdups) ** просьба по возможности избегать дублирования (см. bin/pkgdups)
- индивидуальные пакеты (*_PACKAGES): см. тж. conf.d/README * индивидуальные пакеты (*_PACKAGES): см. тж. conf.d/README
Результат: Результат:
- при успешном завершении сборки образ называется по имени цели
* при успешном завершении сборки образ называется по имени цели
и укладывается в $(IMAGEDIR): и укладывается в $(IMAGEDIR):
+ указанный явно, ** указанный явно,
+ либо ~/out/ (если возможно), ** либо ~/out/ (если возможно),
+ или $(BUILDDIR)/out/ иначе ** или $(BUILDDIR)/out/ иначе
- формируются отчёты, если запрошены (REPORT) * формируются отчёты, если запрошены (REPORT)
См. тж.: См. тж.:
- http://altlinux.org/m-p
- doc/: * http://altlinux.org/m-p
+ params.txt: переменные, указываемые при запуске сборки * doc/:
+ pkglists.txt: формирование состава образа ** params.txt: переменные, указываемые при запуске сборки
+ features.txt: обзор подключаемых особенностей ** pkglists.txt: формирование состава образа
** features.txt: обзор подключаемых особенностей
Удачи; что не так -- пишите. Удачи; что не так -- пишите.
--
Michael Shigorin <mike@altlinux.org> Michael Shigorin <mike@altlinux.org>
== Генерация документации ==
Необходимые пакеты:
apt-get install asciidoc-a2x xmlgraphics* fonts-ttf-ms
Внимание! Пакеты весьма увесисты (около гигабайта), имейте ввиду.
Для генерации текущей документации посредством ASCIIDOC выполнить:
для pdf-версии
make -f Makefile.asciidoc -d pdf
для html-версии
make -f Makefile.asciidoc -d
Сгенерируются соответственно mkimage-profiles.pdf или mkimage-profiles.html
Опция -d для детального вывода, необязательна.
== conf.d ==
Этот каталог содержит включаемые фрагменты конфигурации образов с тем, Этот каталог содержит включаемые фрагменты конфигурации образов с тем,
чтобы было удобнее параллельно разрабатывать специфические дистрибутивы чтобы было удобнее параллельно разрабатывать специфические дистрибутивы
и VE без излишних merge conflict'ов. и VE без излишних merge conflict'ов.
......
предположения фрагментов кода об окружении
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Предположения фрагментов кода об окружении*
NB: пути приводятся от верхнего уровня; проект в целом предполагает NB: пути приводятся от верхнего уровня; проект в целом предполагает
ALT Linux 6.0+ и GNU make 3.81 (на которых и разрабатывается), ALT Linux 6.0+ и GNU make 3.81 (на которых и разрабатывается),
но может быть портирован вместе с mkimage. но может быть портирован вместе с mkimage.
- lib/report.mk * lib/report.mk
+ ожидает, что каждая подлежащая трассированию цель каждого ** ожидает, что каждая подлежащая трассированию цель каждого
makefile при сборке конфигурации образа содержит непустой makefile при сборке конфигурации образа содержит непустой
recipe -- хотя бы "; @:" -- т.к. зависит от запуска $(SHELL) recipe -- хотя бы "; @:" -- т.к. зависит от запуска $(SHELL)
+ характерный признак пропуска -- разрыв графа (report-targets.png) ** характерный признак пропуска -- разрыв графа (report-targets.png)
- pkg.in/lists/Makefile * pkg.in/lists/Makefile
+ ожидает, что названия пакаджлистов указываются в переменных ** ожидает, что названия пакаджлистов указываются в переменных
вида *_LISTS, и копирует в генерируемый профиль только их вида *_LISTS, и копирует в генерируемый профиль только их
+ если задать имя файла пакаджлиста непосредственно в Makefile ** если задать имя файла пакаджлиста непосредственно в Makefile
субпрофиля, он не будет скопирован субпрофиля, он не будет скопирован
+ характерное сообщение об ошибке: ** характерное сообщение об ошибке:
E: Couldn't find package E: Couldn't find package
- features.in/stage2/stage1/scripts.d/02-kdefault * features.in/stage2/stage1/scripts.d/02-kdefault
- features.in/stage2/stage1/scripts.d/03-test-kernel * features.in/stage2/stage1/scripts.d/03-test-kernel
- sub.in/stage1/Makefile * sub.in/stage1/Makefile
+ ожидают, что в stage1 попадёт строго одно ядро сообразно ** ожидают, что в stage1 попадёт строго одно ядро сообразно
явному указанию в STAGE1_KFLAVOUR (либо последнее указанное явному указанию в STAGE1_KFLAVOUR (либо последнее указанное
в KFLAVOURS) в KFLAVOURS)
+ если добавить какой-либо kernel-image в STAGE1_PACKAGES*, ** если добавить какой-либо kernel-image в STAGE1_PACKAGES*,
результат может быть неожиданным результат может быть неожиданным
+ вероятная ошибка: незагрузка полученного squashfs ** вероятная ошибка: незагрузка полученного squashfs
- features.in/install2/install2/stage2cfg.mk * features.in/install2/install2/stage2cfg.mk
- features.in/live/live/stage2cfg.mk * features.in/live/live/stage2cfg.mk
- features.in/rescue/rescue/stage2cfg.mk * features.in/rescue/rescue/stage2cfg.mk
- features.in/syslinux/cfg.in/15live.cfg * features.in/syslinux/cfg.in/15live.cfg
- features.in/syslinux/cfg.in/20install2.cfg * features.in/syslinux/cfg.in/20install2.cfg
- features.in/syslinux/cfg.in/80rescue.cfg * features.in/syslinux/cfg.in/80rescue.cfg
- features.in/syslinux/scripts.d/20-propagator-ramdisk * features.in/syslinux/scripts.d/20-propagator-ramdisk
+ ожидают, что названия squashfs-образов второй стадии инсталятора, ** ожидают, что названия squashfs-образов второй стадии инсталятора,
livecd и спасательной системы соответственно altinst, live и rescue livecd и спасательной системы соответственно altinst, live и rescue
- image.in/Makefile * image.in/Makefile
+ ожидает, что конфигурация будет в distcfg.mk (см. тж. lib/profile.mk), ** ожидает, что конфигурация будет в distcfg.mk (см. тж. lib/profile.mk),
а лог сборки -- в build.log (см. тж. lib/log.mk); альтернативой было а лог сборки -- в build.log (см. тж. lib/log.mk); альтернативой было
бы пробрасывание переменных с полным путём ради единственного места бы пробрасывание переменных с полным путём ради единственного места
ловля плюх == Ловля плюх ==
~~~~~~~~~~
При отладке сборки конфигурации или самого дистрибутива При отладке сборки конфигурации или самого дистрибутива
могут оказаться полезными следующие средства: могут оказаться полезными следующие средства:
- build/distcfg.mk * build/distcfg.mk
+ формируется автоматически в процессе построения конфигурации; ** формируется автоматически в процессе построения конфигурации;
+ содержит трассировочную информацию (откуда что взялось); ** содержит трассировочную информацию (откуда что взялось);
+ этот файл применяется как авторитетный конфигурационный ** этот файл применяется как авторитетный конфигурационный
- build/build.log * build/build.log
+ подробность зависит от значения переменной DEBUG, ** подробность зависит от значения переменной DEBUG,
которую можно передать при запуске make (см. params.txt); которую можно передать при запуске make (см. params.txt);
+ содержит коммит, из которого происходит сборка, и признак ** содержит коммит, из которого происходит сборка, и признак
"грязности" рабочего каталога при наличии модификаций после "грязности" рабочего каталога при наличии модификаций после
этого коммита; этого коммита;
+ содержит список конфигурационных переменных и их конечных значений, ** содержит список конфигурационных переменных и их конечных значений,
созданный на основании distcfg.mk (см. тж. build/vars.mk) созданный на основании distcfg.mk (см. тж. build/vars.mk)
Общая информация по отладке сборки профилей mkimage: Общая информация по отладке сборки профилей mkimage:
......
фичи == Фичи ==
~~~~
Особенности дистрибутива, не учитываемые в пакетной базе Особенности дистрибутива, не учитываемые в пакетной базе
или зависящие от переменных времени сборки/установки образа; или зависящие от переменных времени сборки/установки образа;
по необходимости влияют на конфигурацию, приносят с собой по необходимости влияют на конфигурацию, приносят с собой
......
списки пакетов == Списки пакетов ==
~~~~~~~~~~~~~~
Состав пакетной базы субпрофилей определяется значенями Состав пакетной базы субпрофилей определяется значенями
следующих переменных профиля (см. тж. ../conf.d/README): следующих переменных профиля (см. тж. ../conf.d/README):
- main: пакетная база для установки * main: пакетная база для установки
+ sub.in/main/Makefile, features.in/*/main/lib/*.mk ** sub.in/main/Makefile, features.in/*/main/lib/*.mk
+ THE_LISTS, BASE_LISTS, MAIN_LISTS ** THE_LISTS, BASE_LISTS, MAIN_LISTS
+ THE_GROUPS, MAIN_GROUPS ** THE_GROUPS, MAIN_GROUPS
+ THE_PACKAGES, BASE_PACKAGES, MAIN_PACKAGES, ** THE_PACKAGES, BASE_PACKAGES, MAIN_PACKAGES,
SYSTEM_PACKAGES, COMMON_PACKAGES SYSTEM_PACKAGES, COMMON_PACKAGES
+ THE_PACKAGES_REGEXP, BASE_PACKAGES_REGEXP, MAIN_PACKAGES_REGEXP ** THE_PACKAGES_REGEXP, BASE_PACKAGES_REGEXP, MAIN_PACKAGES_REGEXP
+ THE_KMODULES, BASE_KMODULES, MAIN_KMODULES, BASE_KMODULES_REGEXP ** THE_KMODULES, BASE_KMODULES, MAIN_KMODULES, BASE_KMODULES_REGEXP
- KFLAVOURS *** KFLAVOURS
- stage2: общая часть installer, live, rescue * stage2: общая часть installer, live, rescue
+ sub.in/stage2/Makefile, features.in/*/stage2/lib/*.mk ** sub.in/stage2/Makefile, features.in/*/stage2/lib/*.mk
+ SYSTEM_PACKAGES, STAGE2_PACKAGES ** SYSTEM_PACKAGES, STAGE2_PACKAGES
+ STAGE1_KMODULES, STAGE1_KMODULES_REGEXP, ** STAGE1_KMODULES, STAGE1_KMODULES_REGEXP,
STAGE2_KMODULES, STAGE2_KMODULES_REGEXP STAGE2_KMODULES, STAGE2_KMODULES_REGEXP
- STAGE1_KFLAVOUR или последний из KFLAVOURS *** STAGE1_KFLAVOUR или последний из KFLAVOURS
- installer: компактная "живая" система, содержащая только инсталятор * installer: компактная "живая" система, содержащая только инсталятор
+ см. stage2 ** см. stage2
+ features.in/install2/install2/stage2cfg.mk, *** features.in/install2/install2/stage2cfg.mk,
features.in/*/install2/lib/*.mk features.in/*/install2/lib/*.mk
+ INSTALL2_PACKAGES *** INSTALL2_PACKAGES
- live: пользовательский LiveCD (может содержать также инсталятор) * live: пользовательский LiveCD (может содержать также инсталятор)
+ см. stage2 ** см. stage2
+ features.in/live/live/stage2cfg.mk, ** features.in/live/live/stage2cfg.mk,
features.in/*/live/lib/*.mk features.in/*/live/lib/*.mk
+ THE_LISTS, LIVE_LISTS ** THE_LISTS, LIVE_LISTS
+ THE_GROUPS, LIVE_GROUPS ** THE_GROUPS, LIVE_GROUPS
+ THE_PACKAGES, LIVE_PACKAGES, COMMON_PACKAGES ** THE_PACKAGES, LIVE_PACKAGES, COMMON_PACKAGES
+ THE_PACKAGES_REGEXP, LIVE_PACKAGES_REGEXP ** THE_PACKAGES_REGEXP, LIVE_PACKAGES_REGEXP
+ THE_KMODULES, LIVE_KMODULES ** THE_KMODULES, LIVE_KMODULES
- rescue: спасательный LiveCD * rescue: спасательный LiveCD
+ см. stage2 ** см. stage2
+ features.in/rescue/rescue/stage2cfg.mk ** features.in/rescue/rescue/stage2cfg.mk
+ RESCUE_PACKAGES, COMMON_PACKAGES ** RESCUE_PACKAGES, COMMON_PACKAGES
+ RESCUE_LISTS ** RESCUE_LISTS
- stage1: ядро и загрузчик второй стадии * stage1: ядро и загрузчик второй стадии
+ sub.in/stage1/Makefile, features.in/*/stage1/lib/*.mk ** sub.in/stage1/Makefile, features.in/*/stage1/lib/*.mk
+ STAGE1_PACKAGES, SYSTEM_PACKAGES ** STAGE1_PACKAGES, SYSTEM_PACKAGES
+ STAGE1_PACKAGES_REGEXP ** STAGE1_PACKAGES_REGEXP
+ STAGE1_KMODULES_REGEXP ** STAGE1_KMODULES_REGEXP
- STAGE1_KFLAVOUR или последний из KFLAVOURS *** STAGE1_KFLAVOUR или последний из KFLAVOURS
== QEMU ==
Для сборки на "неродной" архитектуре с применением трансляции Для сборки на "неродной" архитектуре с применением трансляции
посредством QEMU установите пакет livecd-qemu-arch и выполните посредством QEMU установите пакет livecd-qemu-arch и выполните
команду register-qemu-arm от имени root (также предоставляется команду register-qemu-arm от имени root (также предоставляется
......
требования по оформлению кода == Требования по оформлению кода ==
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* постарайтесь не вносить без обсуждения разнобой стилей, * постарайтесь не вносить без обсуждения разнобой стилей,
если есть предметные пожелания по коррекции текущего -- если есть предметные пожелания по коррекции текущего --
пишите в devel-distro@ или мне (mike@), обсудим; пишите в devel-distro@ или мне (mike@), обсудим;
...@@ -11,8 +11,9 @@ ...@@ -11,8 +11,9 @@
* документируйте на русском (README) или английском (README.en) языке * документируйте на русском (README) или английском (README.en) языке
то, что написали или изменили. то, что написали или изменили.
рекомендации [float]
~~~~~~~~~~~~ === рекомендации ===
* трезво относитесь ко входным данным и не пренебрегайте кавычками: * трезво относитесь ко входным данным и не пренебрегайте кавычками:
название дистрибутива с пробелом или получение текста ошибки вместо название дистрибутива с пробелом или получение текста ошибки вместо
ожидаемого вывода команды могут привести к сложнодиагностируемым ожидаемого вывода команды могут привести к сложнодиагностируемым
...@@ -30,7 +31,9 @@ ...@@ -30,7 +31,9 @@
* постарайтесь не вылазить за 80 колонок. * постарайтесь не вылазить за 80 колонок.
ссылки [float]
~~~~~~
=== ссылки ===
* https://lists.altlinux.org/mailman/listinfo/devel-distro * https://lists.altlinux.org/mailman/listinfo/devel-distro
(подписка по приглашению) (подписка по приглашению)
сборка образов виртуальных машин == Сборка образов виртуальных машин ==
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ВНИМАНИЕ: заключительная операция создания образа жёсткого диска *ВНИМАНИЕ:* заключительная операция создания образа жёсткого диска
из архива с содержимым корневой файловой системы требует доступа из архива с содержимым корневой файловой системы требует доступа
к sudo и разрешения на выполнение скрипта bin/tar2vm в корневом к sudo и разрешения на выполнение скрипта bin/tar2vm в корневом
каталоге метапрофиля при установке mkimage-profiles из пакета каталоге метапрофиля при установке mkimage-profiles из пакета
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
Соответствующий фрагмент конфигурации sudo(8) может выглядеть как: Соответствующий фрагмент конфигурации sudo(8) может выглядеть как:
mike ALL=NOPASSWD: /usr/share/mkimage-profiles/bin/tar2vm mike ALL=NOPASSWD: /usr/share/mkimage-profiles/bin/tar2vm
При работе с локальной копией mkimage-profiles.git следует иметь При работе с локальной копией mkimage-profiles.git следует иметь
в виду, что предоставлять недоверенному пользователю право выполнять в виду, что предоставлять недоверенному пользователю право выполнять
...@@ -24,4 +24,4 @@ mike ALL=NOPASSWD: /usr/share/mkimage-profiles/bin/tar2vm ...@@ -24,4 +24,4 @@ mike ALL=NOPASSWD: /usr/share/mkimage-profiles/bin/tar2vm
Пример сборки и запуска VM: Пример сборки и запуска VM:
$ make ROOTPW=reallysecret1 vm/bare.img && kvm -hda ~/out/bare.img $ make ROOTPW=reallysecret1 vm/bare.img && kvm -hda ~/out/bare.img
== features.in ==
Этот каталог содержит т.н. фичи (features, особенности). Этот каталог содержит т.н. фичи (features, особенности).
Фича -- отдельно подключаемая сущность, которая содержит Фича -- отдельно подключаемая сущность, которая содержит
......
<?xml version="1.0"?>
<!-- $Id: fop.xconf 901793 2010-01-21 17:37:07Z jeremias $ -->
<!-- NOTE: This is the version of the configuration -->
<fop version="1.0">
<base>.</base>
<source-resolution>72</source-resolution>
<target-resolution>72</target-resolution>
<default-page-settings height="11in" width="8.26in"/>
<renderers>
<renderer mime="application/pdf">
<filterList>
<value>flate</value>
</filterList>
<fonts>
<auto-detect/>
</fonts>
</renderer>
<renderer mime="application/x-afp">
<images mode="b+w" bits-per-pixel="8"/>
<renderer-resolution>240</renderer-resolution>
<resource-group-file>resources.afp</resource-group-file>
</renderer>
<renderer mime="application/postscript">
</renderer>
<renderer mime="application/vnd.hp-PCL">
</renderer>
<renderer mime="image/svg+xml">
<format type="paginated"/>
<link value="true"/>
<strokeText value="false"/>
</renderer>
<renderer mime="application/awt">
</renderer>
<renderer mime="image/png">
</renderer>
<renderer mime="image/tiff">
</renderer>
<renderer mime="text/xml">
</renderer>
</renderers>
</fop>
\ No newline at end of file
== image.in ==
Этот каталог копируется из метапрофиля в профиль "как есть" Этот каталог копируется из метапрофиля в профиль "как есть"
и формирует "заготовку" финальной стадии, собирающей собственно и формирует "заготовку" финальной стадии, собирающей собственно
образ из результатов работы индивидуальных субпрофилей образ из результатов работы индивидуальных субпрофилей
......
== lib ==
Этот каталог содержит вспомогательные makefiles, Этот каталог содержит вспомогательные makefiles,
обеспечивающие основную функциональность создания обеспечивающие основную функциональность создания
конфигурации образа и генерации соответствующего конфигурации образа и генерации соответствующего
......
= mkimage-profiles =
Michael Shigorin <mike@altlinux.org>
:DocVersion: v0.1.0
:DocDate: Oct 2012
= Введение =
mkimage-profiles, или m-p — результат осмысления и обобщения опыта создания семейств дистрибутивов.
*Цели*
* пригодность к применению как очень крутыми хакерами, так и новичками
* относительно низкая трудоёмкость использования
* поощрение совместной работы
*Средства*
Двухуровневость:
метапрофиль более объёмен и сложен, но выгоден для долгосрочной разработки
сгенерированный дистрибутивный профиль более легко обозрим и модифицируем как одноразовый форк
наследственность на уровне индивидуальных особенностей и образов в целом
прозрачность и диагностируемость формирования конфигурации
документированность
*Примеры использования*
Выполняем начальные инструкции по документации
git clone git://git.altlinux.org/people/mike/packages/mkimage-profiles.git
cd mkimage-profiles
make distro/icewm.iso
include::README[]
= Основы =
== Предположения об окружении ==
include::doc/assumptions.txt[]
include::doc/debug.txt[]
include::doc/features.txt[]
include::doc/params.txt[]
include::doc/pkglists.txt[]
include::doc/qemu.txt[]
include::doc/style.txt[]
include::doc/vm.txt[]
= Каталоги =
include::conf.d/README[]
include::features.in/README[]
include::image.in/README[]
include::lib/README[]
include::pkg.in/README[]
include::sub.in/README[]
include::sub.in/main/README[]
include::sub.in/stage1/README[]
include::sub.in/stage2/README[]
\ No newline at end of file
== pkg.in ==
Этот каталог содержит все возможные списки пакетов и описания групп, Этот каталог содержит все возможные списки пакетов и описания групп,
которые по мере необходимости копируются из метапрофиля в формируемый которые по мере необходимости копируются из метапрофиля в формируемый
профиль. профиль.
[float]
=== pkg.in/groups ===
Этот каталог содержит описания групп, копируемые из метапрофиля Этот каталог содержит описания групп, копируемые из метапрофиля
в создаваемый профиль по необходимости (только фигурирующие в в создаваемый профиль по необходимости (только фигурирующие в
списке, которым является значение переменной MAIN_GROUPS). списке, которым является значение переменной MAIN_GROUPS).
......
=== pkg.in/lists/tagged ===
Этот каталог содержит тегированные списки; на данный момент Этот каталог содержит тегированные списки; на данный момент
реализация (../../../bin/tags2lists) требует, чтобы каждый реализация (../../../bin/tags2lists) требует, чтобы каждый
из тегов был отдельным словом, состоящим из символов из набора из тегов был отдельным словом, состоящим из символов из набора
......
== sub.in ==
Этот каталог содержит субпрофили; содержимое затребованных Этот каталог содержит субпрофили; содержимое затребованных
(названия которых содержатся в значении переменной SUBPROFILES, (названия которых содержатся в значении переменной SUBPROFILES,
которую заполняют цели sub/* -- см. ../lib/distro.mk) будет которую заполняют цели sub/* -- см. ../lib/distro.mk) будет
......
=== sub.in/main ===
Этот каталог содержит субпрофиль main, собирающий пакетную базу Этот каталог содержит субпрофиль main, собирающий пакетную базу
для локальной инсталяции дистрибутива из полученного образа, для локальной инсталяции дистрибутива из полученного образа,
включая необязательные пакеты; в distro/live-builder применяется включая необязательные пакеты; в distro/live-builder применяется
как локальный репозиторий для сборки. как локальный репозиторий для сборки.
Подбирает: Подбирает:
- SYSTEM_PACKAGES, COMMON_PACKAGES, BASE_PACKAGES, BASE_LISTS: * SYSTEM_PACKAGES, COMMON_PACKAGES, BASE_PACKAGES, BASE_LISTS:
в установку по умолчанию; в установку по умолчанию;
- MAIN_PACKAGES, MAIN_LISTS: дополнительные пакеты. * MAIN_PACKAGES, MAIN_LISTS: дополнительные пакеты.
В image-scripts.d/* смысла нет, только scripts.d/* -- В image-scripts.d/* смысла нет, только scripts.d/* --
рабочий чрут не содержит исполняемых файлов. рабочий чрут не содержит исполняемых файлов.
......
=== sub.in/stage1 ===
Этот каталог содержит субпрофиль первой стадии загрузки; Этот каталог содержит субпрофиль первой стадии загрузки;
здесь место syslinux (загрузчик) и propagator (ориентировка здесь место syslinux (загрузчик) и propagator (ориентировка
на местности, вытягивание второй стадии с CD/FTP/...). на местности, вытягивание второй стадии с CD/FTP/...).
...@@ -18,6 +19,7 @@ STAGE1_KMODULES_REGEXP -- будет подмножество модулей ...@@ -18,6 +19,7 @@ STAGE1_KMODULES_REGEXP -- будет подмножество модулей
Результат -- каталог syslinux/ для копирования в образ. Результат -- каталог syslinux/ для копирования в образ.
TODO (3.2+): "The network drivers directory (drivers/net)
NOTE: TODO (3.2+): "The network drivers directory (drivers/net)
has been massively rearranged with most drivers moved into has been massively rearranged with most drivers moved into
media-specific or protocol-specific subdirectories." media-specific or protocol-specific subdirectories."
=== sub.in/stage2 ===
Этот каталог содержит общий базовый субпрофиль "живой" второй стадии, Этот каталог содержит общий базовый субпрофиль "живой" второй стадии,
используемый для сборки образов install2, live, rescue (возможно, используемый для сборки образов install2, live, rescue (возможно,
нескольких одновременно в составе одного дистрибутива). нескольких одновременно в составе одного дистрибутива).
......
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