Mkimage/Profiles/m-p — различия между версиями

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
(Цели)
м (Средства: языки реализации, требуемые навыки)
 
(не показано 5 промежуточных версий этого же участника)
Строка 3: Строка 3:
 
__TOC__
 
__TOC__
 
= Суть =
 
= Суть =
{{pkg|mkimage-profiles}}, или ''m-p'' — результат осмысления и обобщения опыта создания семейств дистрибутивов свободного программного обеспечения на базе ALT Linux, [[Regular|применяемый]] [[Starterkits|на практике]].
+
{{pkg|mkimage-profiles}}, или ''m-p'' — технология создания [[starterkits|семейств]] [[releases|дистрибутивов]] свободного программного обеспечения на базе репозиториев ALT.
  
 
Входит в [[Starterkits/builder|стартеркит builder]] в готовом к употреблению виде.
 
Входит в [[Starterkits/builder|стартеркит builder]] в готовом к употреблению виде.
Строка 13: Строка 13:
 
| '''[[Mkimage/Profiles/m-p/examples|1.&nbsp;git&nbsp;clone<br />2.&nbsp;make<br />3.&nbsp;...<sup>*</sup>]]'''
 
| '''[[Mkimage/Profiles/m-p/examples|1.&nbsp;git&nbsp;clone<br />2.&nbsp;make<br />3.&nbsp;...<sup>*</sup>]]'''
 
|}
 
|}
'''Документация книжкой''' ([http://nightly.altlinux.org/docs/mkimage-profiles.html HTML]/[http://nightly.altlinux.org/docs/mkimage-profiles.pdf PDF])
 
= Цели =
 
Основная: создание прикладных образов на пакетной базе ALT Linux.
 
  
Подчинённые:
+
= Цель =
# поощрение совместной работы;
+
Возможность создания образов на [[branches|пакетной]] [[sisyphus|базе]] ALT (iso, img, tar...) с простым и управляемым наследованием конфигурации без необходимости переизобретать уже существующие наработки.
# относительно низкая трудоёмкость использования;
+
 
# пригодность к '''[[Mkimage/Profiles/m-p/examples|применению]]''' разработчиками разного уровня для разных задач.
+
: ''Документация книжкой: '''[http://nightly.altlinux.org/docs/mkimage-profiles.html HTML]'''/'''[http://nightly.altlinux.org/docs/mkimage-profiles.pdf PDF]'''''
  
 
= Средства =
 
= Средства =
 +
Языки реализации — <tt>make</tt> и <tt>shell</tt>, как и в [[mkimage]].  Для внесения изменений может потребоваться заметный опыт администрирования и базовый — разработки.
 +
 
* двухуровневость:
 
* двухуровневость:
** метапрофиль более объёмен и сложен, но выгоден для долгосрочной разработки
+
** сам метапрофиль объёмный и сложный, но выгодней для долгосрочной разработки
** сгенерированный дистрибутивный профиль более легко обозрим и модифицируем как одноразовый форк
+
** сгенерированный дистрибутивный профиль легче прочитать и поправить одноразово
 
* наследственность на уровне индивидуальных особенностей и образов в целом
 
* наследственность на уровне индивидуальных особенностей и образов в целом
 
* прозрачность и диагностируемость формирования конфигурации
 
* прозрачность и диагностируемость формирования конфигурации
Строка 50: Строка 49:
 
{{main|Mkimage/Profiles/m-p/objects|l1=объекты}}
 
{{main|Mkimage/Profiles/m-p/objects|l1=объекты}}
 
= [[Mkimage/Profiles/m-p/news|Состояние]] =
 
= [[Mkimage/Profiles/m-p/news|Состояние]] =
[http://git.altlinux.org/people/mike/packages/?p=mkimage-profiles.git Публичная бета]; см. тж.:
+
[http://git.altlinux.org/people/mike/packages/?p=mkimage-profiles.git Стабильная ветка и публичная бета]; см. тж.:
 
* [https://www.openhub.net/p/mkimage-profiles анализ кода на openhub],
 
* [https://www.openhub.net/p/mkimage-profiles анализ кода на openhub],
 
* [http://0x1.tv/Категория:Михаил_Шигорин доклады]:
 
* [http://0x1.tv/Категория:Михаил_Шигорин доклады]:
Строка 59: Строка 58:
 
** [https://docviewer.yandex.ru/?url=ya-serp%3A%2F%2Fftp.altlinux.org%2Fpub%2Fpeople%2Fmike%2Fdoc%2Fconference%2Fprotva-shigorin-mkimage-profiles.pdf&name=protva-shigorin-mkimage-profiles.pdf&c=561cffa935c3 Обнинск].
 
** [https://docviewer.yandex.ru/?url=ya-serp%3A%2F%2Fftp.altlinux.org%2Fpub%2Fpeople%2Fmike%2Fdoc%2Fconference%2Fprotva-shigorin-mkimage-profiles.pdf&name=protva-shigorin-mkimage-profiles.pdf&c=561cffa935c3 Обнинск].
  
Осень 2017: разрабатывается ветка 1.2.x; регулярно публикуется метапрофиль ([http://git.altlinux.org/people/mike/packages/?p=mkimage-profiles.git git], [http://packages.altlinux.org/mkimage-profiles rpm]), при помощи которого можно собрать сразу несколько '''дистрибутивов''', '''шаблонов виртуальных окружений''', '''образов виртуальной машины''' для i586/x86_64<ref>{{cmd|git checkout 1.0}} — в 1.1.x bin/tar2vm по состоянию на март 2014 интересно сломан</ref>, '''образов ФС для ARM'''<ref>а вот ARM в 1.1.x как раз работает</ref>; чруты собраны и для PowerPC; развивается поддержка архитектуры "'''Эльбрус'''" ([[ports/e2k|e2k]]).  Из всего этого налажены '''[[Regular|регулярные сборки]]''' и '''[[Starterkits|стартеркиты]]''', среди прочего.
+
Лето 2019: разрабатывается ветка 1.3.x; [[Mkimage/Profiles/m-p/news|регулярно]] публикуется метапрофиль ([http://git.altlinux.org/people/mike/packages/?p=mkimage-profiles.git git], [http://packages.altlinux.org/mkimage-profiles rpm]), при помощи которого можно собрать сразу несколько '''дистрибутивов''', '''шаблонов виртуальных окружений''', '''образов виртуальной машины''' для i586/[[ports/x8664|x86_64]], [[ports/aarch64|aarch64]]/[[ports/arm|armh]], [[ports/mipsel|mipsel]], [[ports/e2k|e2k]].  Из всего этого налажены '''[[Regular|регулярные сборки]]''' и '''[[Starterkits|стартеркиты]]''', среди прочего.
  
 
Работаем без спешки, как для себя.  Метабаг — [https://bugzilla.altlinux.org/show_bug.cgi?id=26300 #26300].
 
Работаем без спешки, как для себя.  Метабаг — [https://bugzilla.altlinux.org/show_bug.cgi?id=26300 #26300].
 
{{main|Mkimage/Profiles/m-p/news|l1=новости}}
 
{{main|Mkimage/Profiles/m-p/news|l1=новости}}
= Примечания =
+
 
<references/>
 
 
[[Категория:Mkimage]]
 
[[Категория:Mkimage]]
 
{{Category navigation|title=mkimage-profiles|category=mkimage-profiles|sortkey=*}}
 
{{Category navigation|title=mkimage-profiles|category=mkimage-profiles|sortkey=*}}

Текущая версия на 19:09, 15 августа 2019

M-p.png

Суть[править]

mkimage-profiles, или m-p — технология создания семейств дистрибутивов свободного программного обеспечения на базе репозиториев ALT.

Входит в стартеркит builder в готовом к употреблению виде.

Основная статья: история
Information.svg
1. git clone
2. make
3. ...*

Цель[править]

Возможность создания образов на пакетной базе ALT (iso, img, tar...) с простым и управляемым наследованием конфигурации без необходимости переизобретать уже существующие наработки.

Документация книжкой: HTML/PDF

Средства[править]

Языки реализации — make и shell, как и в mkimage. Для внесения изменений может потребоваться заметный опыт администрирования и базовый — разработки.

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

Примеры использования[править]

  1. выполняем начальные инструкции по документации
  2. git clone git://git.altlinux.org/people/mike/packages/mkimage-profiles.git
  3. cd mkimage-profiles
  4. make help
  5. make regular-rescue.iso
Основная статья: примеры

Решения при дизайне[править]

Конфигурация образа — тоже объект сборки.

Основная статья: дизайн

Пожелания к коллегам[править]

Давайте стараться сделать красиво.

Основная статья: стиль

Объекты воздействия[править]

Образ, субпрофиль, фича и список пакетов. Перед правкой профиля ознакомьтесь!

Основная статья: объекты

Состояние[править]

Стабильная ветка и публичная бета; см. тж.:

Лето 2019: разрабатывается ветка 1.3.x; регулярно публикуется метапрофиль (git, rpm), при помощи которого можно собрать сразу несколько дистрибутивов, шаблонов виртуальных окружений, образов виртуальной машины для i586/x86_64, aarch64/armh, mipsel, e2k. Из всего этого налажены регулярные сборки и стартеркиты, среди прочего.

Работаем без спешки, как для себя. Метабаг — #26300.

Основная статья: новости