Причудливая оболочка dnf --installroot
, apt
, pacman
и zypper
, которая генерирует индивидуальные образы дисков с множеством наворотов.
Более подробное описание и доступные функции и параметры см. на странице руководства.
Вы можете установить mkosi из своего дистрибутива, используя его менеджер пакетов, или установить версию для разработки из git. Если вы устанавливаете mkosi с помощью менеджера пакетов вашего дистрибутива, убедитесь, что он устанавливает как минимум mkosi v16 или новее (для проверки используйте mkosi --version
). Если ваш дистрибутив содержит только более старую версию mkosi, вместо этого рекомендуется установить mkosi, используя один из альтернативных методов установки, перечисленных ниже.
Чтобы запустить mkosi прямо из репозитория git, вы можете вызвать shim bin/mkosi
. Переменную среды MKOSI_INTERPRETER
можно установить при использовании прокладки bin/mkosi
для настройки интерпретатора Python, используемого для выполнения mkosi. Оболочку можно связать символически, например, /usr/local/bin
чтобы сделать ее доступной из PATH
.
git clone https://github.com/systemd/mkosi
ln -s $PWD /mkosi/bin/mkosi /usr/local/bin/mkosi
mkosi --version
mkosi также можно установить прямо из URL-адреса репозитория git, используя pipx
:
pipx install git+https://github.com/systemd/mkosi.git
mkosi --version
который прозрачно установит mkosi в виртуальную среду Python и двоичный файл mkosi в ~/.local/bin
. Это, вплоть до пути к виртуальной среде и двоичному файлу mkosi, эквивалентно
python3 -m venv mkosivenv
mkosivenv/bin/pip install git+https://github.com/systemd/mkosi.git
mkosivenv/bin/mkosi --version
Вы также можете упаковать mkosi в виде zip-приложения, которое можно развернуть в любом месте вашего PATH
. В результате этого в builddir/
останется двоичный файл mkosi
.
git clone https://github.com/systemd/mkosi
cd mkosi
tools/generate-zipapp.sh
builddir/mkosi --version
Помимо двоичного файла mkosi, вы также можете вызвать mkosi через
python3 -m mkosi
если он не установлен как zipapp.
Обратите внимание, что модуль Python существует исключительно для использования двоичного файла mkosi и не должен считаться общедоступным API.
mkosi также можно использовать в качестве плагина установки ядра для сборки initrds. Чтобы включить эту функцию, установите kernel-install/50-mkosi.install
в /usr/lib/kernel/install.d
. Дополнительную конфигурацию дистрибутива для initrd можно настроить в /usr/lib/mkosi-initrd
. Пользователи могут добавлять свои собственные настройки в /etc/mkosi-initrd
.
После установки плагин mkosi можно включить, прописав initrd_generator=mkosi-initrd
в /usr/lib/kernel/install.conf
или в /etc/kernel/install.conf
.
Чтобы взломать сам mkosi, вам также понадобится mypy для проверки типов и pytest для запуска тестов. Мы проверяем тесты и пишем CI (см. .github/workflows
), но вы можете запускать тесты и локально.
Найдите нас на сайте Matrix по адресу #mkosi:matrix.org.