Mkimage-profiles: различия между версиями
м (→Средства: языки реализации, требуемые навыки) |
|||
(не показано 11 промежуточных версий 4 участников) | |||
Строка 1: | Строка 1: | ||
[[File:M-p.png|274x174px|right]] | [[File:M-p.png|274x174px|right]] | ||
{{DISPLAYTITLE:mkimage-profiles}} | |||
__TOC__ | __TOC__ | ||
= Суть = | = Суть = | ||
{{pkg|mkimage-profiles}}, или ''m-p'' — | {{pkg|mkimage-profiles}}, или ''m-p'' — система управления конфигурацией [[starterkits|семейств]] [[releases|дистрибутивов]] свободного программного обеспечения из репозиториев ALT для различных платформ. | ||
Входит в [[Starterkits/builder|стартеркит builder]] в готовом к употреблению виде. | Входит в [[Starterkits/builder|стартеркит builder]] в готовом к употреблению виде. | ||
{| style="border:1px solid #AAA; background:#F9F9F9; width:100px; margin: 0 0 1em 1em; padding:.2em; text-align:left; float: right;" class=noprint | {| style="border:1px solid #AAA; background:#F9F9F9; width:100px; margin: 0 0 1em 1em; padding:.2em; text-align:left; float: right;" class=noprint | ||
|- | |- | ||
Строка 13: | Строка 12: | ||
| '''[[Mkimage/Profiles/m-p/examples|1. git clone<br />2. make<br />3. ...<sup>*</sup>]]''' | | '''[[Mkimage/Profiles/m-p/examples|1. git clone<br />2. make<br />3. ...<sup>*</sup>]]''' | ||
|} | |} | ||
= Цель = | = Цель = | ||
Создание дистрибутивных образов<ref>iso, img, tar...</ref> на нашей [[branches|пакетной]] [[sisyphus|базе]]. | |||
Отличие от [[Mkimage/Profiles/Desktop|предыдущего поколения]]<ref>...а также от большинства известных аналогов</ref> — возможность простого и управляемого наследования конфигурации при её создании из существующих «строительных блоков». | |||
{{main|Mkimage/history|l1=история}} | |||
= Средства = | = Средства = | ||
Языки реализации — <tt>make</tt> и <tt>shell</tt>, как и в [[mkimage]]. Для внесения изменений может потребоваться заметный опыт администрирования и базовый — разработки. | Языки реализации — <tt>make</tt> и <tt>shell</tt>, как и в [[mkimage]]. Для внесения изменений может потребоваться заметный опыт администрирования и базовый — разработки. | ||
= Свойства = | |||
* двухуровневость: | * двухуровневость: | ||
** сам метапрофиль объёмный и сложный, но выгодней для долгосрочной разработки | ** сам метапрофиль объёмный и сложный, но выгодней для долгосрочной разработки | ||
** сгенерированный дистрибутивный профиль легче прочитать и поправить одноразово | ** сгенерированный дистрибутивный профиль легче прочитать и поправить одноразово | ||
* наследственность на уровне | * наследственность на уровне особенностей (features) и образов в целом | ||
* прозрачность и диагностируемость формирования конфигурации | * прозрачность и диагностируемость формирования конфигурации (distcfg.mk) | ||
* документированность | * документированность | ||
{{main| | |||
= '''[[Mkimage/Profiles/m-p/examples|Примеры использования]]''' = | = '''Документация''' = | ||
# '''выполняем начальные инструкции по [http://git.altlinux.org/people/mike/packages/?p=mkimage-profiles.git;a=blob;f=QUICKSTART;hb=HEAD документации]''' | |||
# '''{{cmd|git clone git://git.altlinux.org/ | : ''Документация книжкой: '''[http://nightly.altlinux.org/docs/mkimage-profiles.html HTML]'''/'''[http://nightly.altlinux.org/docs/mkimage-profiles.pdf PDF]''''' | ||
{{main|mkimage-profiles/howto|l1=howto}} | |||
=== '''[[Mkimage/Profiles/m-p/examples|Примеры использования]]''' === | |||
# '''выполняем начальные инструкции по [http://git.altlinux.org/people/mike/packages/?p=mkimage-profiles.git;a=blob;f=QUICKSTART;hb=HEAD документации]''' (не пропустите про [[Hasher/Руководство#Монтирование_/proc|монтирование /proc]]!) | |||
# '''{{cmd|git clone git://git.altlinux.org/gears/m/mkimage-profiles.git}}''' | |||
# '''{{cmd|cd mkimage-profiles}}''' | # '''{{cmd|cd mkimage-profiles}}''' | ||
# '''{{cmd|make help}}''' | # '''{{cmd|make help}}''' | ||
# '''{{cmd|make regular-rescue.iso}}''' | # '''{{cmd|make regular-rescue.iso}}''' | ||
{{main|Mkimage/Profiles/m-p/examples|l1=примеры}} | {{main|Mkimage/Profiles/m-p/examples|l1=примеры}} | ||
= [[Mkimage/Profiles/m-p/design|Решения при дизайне]] = | |||
=== [[Mkimage/Profiles/m-p/objects|Объекты воздействия]] === | |||
Образ, субпрофиль, фича и список пакетов. Перед правкой профиля ознакомьтесь с ними. | |||
{{main|Mkimage/Profiles/m-p/objects|l1=объекты}} | |||
=== [[Mkimage/Profiles/m-p/design|Решения при дизайне]] === | |||
Конфигурация образа — тоже объект ''сборки''. | Конфигурация образа — тоже объект ''сборки''. | ||
{{main|Mkimage/Profiles/m-p/design|l1=дизайн}} | {{main|Mkimage/Profiles/m-p/design|l1=дизайн}} | ||
=== [[Mkimage/Profiles/m-p/style|Пожелания к коллегам]] === | |||
Давайте стараться [http://lib.ru/MEMUARY/ERSHOW_W/zapiski_ezdowogo_psa.txt делать ''красиво'']. | |||
= [[Mkimage/Profiles/m-p/style|Пожелания к коллегам]] = | |||
Давайте стараться [http://lib.ru/MEMUARY/ERSHOW_W/zapiski_ezdowogo_psa.txt | |||
{{main|Mkimage/Profiles/m-p/style|l1=стиль}} | {{main|Mkimage/Profiles/m-p/style|l1=стиль}} | ||
= [[Mkimage/Profiles/m-p/news|Состояние]] = | = [[Mkimage/Profiles/m-p/news|Состояние]] = | ||
[http://git.altlinux.org/people/ | [http://git.altlinux.org/people/antohami/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/Категория:Михаил_Шигорин доклады]: | ||
Строка 58: | Строка 61: | ||
** [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 Обнинск]. | ||
Осень 2020: разрабатывается ветка 1.4.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]], ppc64le, [[ports/riscv64|riscv64]]. Из всего этого налажены '''[[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=новости}} | ||
[[Категория:Mkimage]] | [[Категория:Mkimage]] | ||
{{Category navigation|title=mkimage-profiles|category=mkimage-profiles|sortkey=*}} | {{Category navigation|title=mkimage-profiles|category=mkimage-profiles|sortkey=*}} |
Текущая версия от 11:46, 1 февраля 2023
Суть
mkimage-profiles, или m-p — система управления конфигурацией семейств дистрибутивов свободного программного обеспечения из репозиториев ALT для различных платформ.
Входит в стартеркит builder в готовом к употреблению виде.
Цель
Создание дистрибутивных образов[1] на нашей пакетной базе.
Отличие от предыдущего поколения[2] — возможность простого и управляемого наследования конфигурации при её создании из существующих «строительных блоков».
Средства
Языки реализации — make и shell, как и в mkimage. Для внесения изменений может потребоваться заметный опыт администрирования и базовый — разработки.
Свойства
- двухуровневость:
- сам метапрофиль объёмный и сложный, но выгодней для долгосрочной разработки
- сгенерированный дистрибутивный профиль легче прочитать и поправить одноразово
- наследственность на уровне особенностей (features) и образов в целом
- прозрачность и диагностируемость формирования конфигурации (distcfg.mk)
- документированность
Документация
Примеры использования
- выполняем начальные инструкции по документации (не пропустите про монтирование /proc!)
- git clone git://git.altlinux.org/gears/m/mkimage-profiles.git
- cd mkimage-profiles
- make help
- make regular-rescue.iso
Объекты воздействия
Образ, субпрофиль, фича и список пакетов. Перед правкой профиля ознакомьтесь с ними.
Решения при дизайне
Конфигурация образа — тоже объект сборки.
Пожелания к коллегам
Давайте стараться делать красиво.
Состояние
Стабильная ветка; см. тж.:
Осень 2020: разрабатывается ветка 1.4.x; регулярно публикуется метапрофиль (git, rpm), при помощи которого можно собрать сразу несколько дистрибутивов, шаблонов виртуальных окружений, образов виртуальной машины для i586/x86_64, aarch64/armh, mipsel, e2k, ppc64le, riscv64. Из всего этого налажены регулярные сборки и стартеркиты, среди прочего.
Работаем без спешки, как для себя. Метабаг — #26300.