Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mkimage-profiles
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ximper Linux
mkimage-profiles
Commits
b69a8a63
Commit
b69a8a63
authored
Jul 20, 2011
by
Michael Shigorin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
README update
reword 'em, structurize 'em, facelift 'em too
parent
24ce6f54
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
41 additions
and
43 deletions
+41
-43
Makefile
Makefile
+1
-1
README
README
+28
-29
README
features.in/README
+11
-12
README
sub.in/install2/README
+1
-1
No files found.
Makefile
View file @
b69a8a63
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
# 3. copy subprofiles, script hooks, and package lists/groups
# 3. copy subprofiles, script hooks, and package lists/groups
# from metaprofile to new profile (as needed)
# from metaprofile to new profile (as needed)
# --- in BUILDDIR
# --- in BUILDDIR
# 4. build subprofiles and subsequently image
# 4. build subprofiles and subsequently
the
image
all help
:
all help
:
@
echo
'** available distribution targets:'
@
echo
'** available distribution targets:'
...
...
README
View file @
b69a8a63
...
@@ -7,9 +7,8 @@ configurables: ~/.mkimage/profiles.mk,
...
@@ -7,9 +7,8 @@ configurables: ~/.mkimage/profiles.mk,
see doc/profiles.mk.sample and libdistro.mk
see doc/profiles.mk.sample and libdistro.mk
Концепция:
Концепция:
- метапрофиль служит репозиторием всего возможно нужного для
- метапрофиль служит репозиторием для построения индивидуального
построения индивидуального профиля, по которому создаётся
профиля, по которому создаётся итоговый дистрибутив
итоговый дистрибутив
- для одноразовых модификаций можно подправить сгенерированный
- для одноразовых модификаций можно подправить сгенерированный
профиль, для долгосрочной разработки стоит вливать правки
профиль, для долгосрочной разработки стоит вливать правки
в метапрофиль (что требует больше навыков и времени)
в метапрофиль (что требует больше навыков и времени)
...
@@ -27,32 +26,32 @@ see doc/profiles.mk.sample and libdistro.mk
...
@@ -27,32 +26,32 @@ see doc/profiles.mk.sample and libdistro.mk
- сборка дистрибутива
- сборка дистрибутива
Объекты:
Объекты:
- дистрибутивы:
distro.mk, могут основываться один на другом;
- дистрибутивы:
желательно избегать множественного наследования, используя
+ описываются в distro.mk
вместо него блоки use/*
+ могут основываться один на другом
- субпрофили (список собирается в $(SUBPROFILES)):
+ включают один или более субпрофилей по надобности
+
stage1: propagator и ядро инсталятора
+
желательно избегать множественного наследования, см. тж. фичи
+ install2: сам инсталятор
- субпрофили:
+
main: пакетная база к инсталяции (обязательная и дополнительная
)
+
список собирается в $(SUBPROFILES
)
+
...
+
базовые комплекты помещены в подкаталогах под sub.in/;
- блоки функциональности use/*: не являются самостоятельны
ми
их наборы скриптов могут расширяться фича
ми
(не путать с дистрибутивами), но законченными; описываются
- stage1: propagator, ядро инсталятора и initrd в т.ч. с firmware
в use.mk либо же в индивидуальных features.in/*/config.mk,
- install2: сам инсталятор (и модули ядра)
если необходимо дополнить не только distcfg.mk, а и дерево
- main: пакетная база к инсталяции (обязательная и дополнительная)
формируемого профиля
- фичи:
- фичи: законченные кусочки функциональности, могут зависеть
+ список собирается в $(FEATURES)
друг от друга; сливаются с соответствующими субпрофилями
+ законченные блоки функциональности (или наборы таковых)
при сборке $(BUILDDIR), могут нести с собой копируемые в один
+ описываются в индивидуальных features.in/*/config.mk
или несколько субпрофилей каталоги/файлы и могут выполнять
+ могут зависеть друг от друга и требовать субпрофили
необходимые действия во время сборки после копирования
+ при сборке $(BUILDDIR) содержимое указанных в $(FEATURES) фич
(generate.sh, generate.mk). NB: добавляем в $(FEATURES)
(подкаталоги, соответствующие входящим в дистрибутив субпрофилям)
(из того же config.mk, который будет включён в distro.mk)!
добавляется в профиль; затем выполняются generate.sh, generate.mk
- списки пакетов
: большая человеческая просьба по возможности
- списки пакетов
(*_LISTS): просьба по возможности избегать дублирования
избегать дублирования и подумать над pkg/lists/tagged...
- индивидуальные пакеты (*_PACKAGES): следует крайне осторожно пользоваться
COMMON_PACKAGES -- эти пакеты попадут во все стадии, в том числе в образ
NB: следует крайне осторожно пользоваться COMMON_PACKAGES,
чувствительной к объёму install2 (в stage1 -- только в инструментальный
т.к. указанные пакеты попадут во все стадии (в т.ч.
чрут); применяйте для того, что обязано быть и в инсталяторе, и в готовой
stage1 и install2, чувствительные к объёму).
системе
Результат:
Результат:
- при успешном завершении сборки образ называется сообразно
- при успешном завершении сборки образ называется сообразно
...
...
features.in/README
View file @
b69a8a63
...
@@ -2,20 +2,19 @@
...
@@ -2,20 +2,19 @@
каталоги, содержимое каждого из которых реализует одну из
каталоги, содержимое каждого из которых реализует одну из
подключаемых автономных возможностей дистрибутива.
подключаемых автономных возможностей дистрибутива.
Каждая фича должна содержать файл config.mk, включаемый
Каждая фича должна содержать задействуемый при построении
в ../distro.mk и как минимум содержащий добавление имени
конфигурации будущего образа файл config.mk, включаемый
этой фичи в переменную FEATURES на этапе создания конфигурации
в ../distro.mk; он может описывать одну или более целей
профиля.
вида use/*, дополняющих конфигурацию дистрибутива, и при
наличии дополнительных хуков для копирования или generate.*
должен добавить имя фичи в $(FEATURES).
На этапе
создания собственно профиля этот каталог задействуе
тся
На этапе
генерации дистрибутивного профиля фичи рассматриваю
тся
после инициализации профиля (см. ../image.in/) и копирования
после инициализации профиля (см. ../image.in/) и копирования
субпрофилей (см. ../sub.in/); обход его подкаталогов производится
субпрофилей (см. ../sub.in/). Для каждой фичи, указанной
в порядке отсортированных по алфавиту имён из списка,
в $(FEATURES), копируются подкаталоги сообразно субпрофилям,
содержащегося в переменной FEATURES.
а также выполняется скрипт generate.sh и задействуется generate.mk
(при их наличии).
Для каждой фичи производится копирование подкаталогов,
соответствующих запрошенным субпрофилям, а также выполняется
скрипт generate.sh и задействуется generate.mk (при их наличии).
Несложный пример содержится в 00example/, более близкий к жизни
Несложный пример содержится в 00example/, более близкий к жизни
и нынешним пределам возможностей метапрофиля -- в syslinux/.
и нынешним пределам возможностей метапрофиля -- в syslinux/.
sub.in/install2/README
View file @
b69a8a63
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
При добавлении скриптов в image-scripts.d/ следует позаботиться,
При добавлении скриптов в image-scripts.d/ следует позаботиться,
чтобы в компактном livecd, которым является инсталятор, оказались
чтобы в компактном livecd, которым является инсталятор, оказались
нужные утилиты (INSTALL2_PACKAGES). Перегружать его не следует,
нужные
им
утилиты (INSTALL2_PACKAGES). Перегружать его не следует,
поскольку это прямо влияет на требования по минимальному размеру
поскольку это прямо влияет на требования по минимальному размеру
оперативной памяти для установки.
оперативной памяти для установки.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment