Началось общее голосование о системах инициализации в Debian

Проект Debian объявил о начале общего голосования (GR, general resolution) разработчиков проекта Debian по поводу систем инициализации. Результат определит политику проекта в отношении привязки к systemd, поддержки альтернативных систем инициализации и взаимодействия с производными дистрибутивами, не использующими systemd. Голосование продлится до 27 декабря включительно, итоги будут подведены 28 декабря.

В 2014 году технический комитет утвердил переход дистрибутива по умолчанию на systemd, но не выработал решения по отношению к поддержке нескольких систем инициализации. Тогда комитет был неготов дать чёткий ответ. Его лидер порекомендовал сопровождающим пакетам сохранить поддержку sysvinit в качестве альтернативной системы инициализации.

После этого была попытка проведения общего голосования, но предварительное голосование показало незаинтересованность в общем. Несколько месяцев назад, после проблем с включением пакета elogind в ветку testing из-за конфликта с libsystemd, вопрос был повторно поднят лидером проекта Debian: разработчики не смогли договориться.

Это голосование решит вопрос поддержки нескольких систем инициализации. Если большинство будет “за”, то мэйнтейнеры не смогут игнорировать или затягивать подобные вопросы. После обсуждения трёх изначальных пунктов голосования, число вариантов увеличили до восьми. Можно выбрать сразу нескольких пунктов c ранжированием по уровню предпочтения. Право голоса имеют около тысячи разработчиков, участвующих в сопровождении пакетов и поддержании инфраструктуры.

Что предлагают?

  1. Основное внимание фокусируется на systemd. Предоставление поддержки альтернативных систем инициализации не является приоритетом, но сопровождающие вправе опционально включать в пакеты init-скрипты для таких систем.
  2. Поддержка разнообразных систем инициализации и возможность загрузки Debian с системами инициализации, отличными от systemd. Для запуска сервисов пакеты обязательно должны включать init-скрипты, поставка только unit-файлов systemd без sysv init-скриптов недопустима.
  3. Предпочитаемым остаётся systemd, но оставляется возможность сопровождения и альтернативных систем инициализации. Технологии, такие как elogind, позволяющие в альтернативных окружениях запускать приложения, привязанные к systemd, рассматриваются как важные. В пакеты допускается включение init-файлов для альтернативных систем.
  4. Поддержка систем, не использующих systemd, но без внесения изменений, мешающих развитию. Разработчики соглашаются поддерживать несколько систем инициализации в обозримом будущем, но также считают необходимым работать над улучшением поддержки systemd. Разработкой и сопровождением специфичных решений следует заниматься заинтересованным в таких решениях сообществам, но другие мэйнтейнеры должны активно помогать и способствовать решению проблем, когда в этом возникает необходимость. В идеале пакеты должны функционировать при использовании любой системы инициализации, для чего можно поставлять традиционные init-скрипты или использовать иные механизмы, позволяющие работать без systemd. Невозможность работы без systemd рассматривается как ошибка, но не как ошибка, блокирующая релиз, за исключением случаев, когда имеется готовое решение для работы без systemd, но его отказываются сохранять (например, когда проблема вызвана удалением ранее поставлявшегося init-скрипта).
  5. Поддержка переносимости, без внесения изменений, мешающих развитию. Debian продолжает рассматриваться как связующее звено для интеграции различного ПО, предоставляющего эквивалентную или похожую функциональность. Переносимость между аппаратными платформами и программными стеками относится к важным задачам, а интеграция альтернативных технологий приветствуется, даже если мировоззрение их создателей расходятся с общим мнением. Позиция в отношении systemd и других систем инициализации полностью совпадает с 4 пунктом.
  6. Перевод поддержки нескольких систем инициализации в разряд обязательных. Предоставление возможности запуска Debian с системами инициализации, отличными от systemd, продолжает иметь значение для проекта. Каждый пакет обязан работать с обработчиками pid1, отличными от systemd, за исключением случаев, когда входящее в пакет ПО изначально предназначено для работы только с systemd и отсутствует поддержка запуска без systemd (отсутствие init-скриптов не считается предназначением только для работы с systemd).
  7. Поддержка переносимости и нескольких реализаций. Общие принципы полностью совпадают с пунктом 5, но в отношении systemd и систем инициализации не предъявляется конкретных требований, а также не накладываются какие-либо обязательства на разработчиков. Разработчикам предлагается учитывать интересы друг друга, идти на компромиссы и находить общие решения, удовлетворительные для различных сторон.
  8. Продолжение обсуждения. Пункт может использоваться для снижения рейтинга неприемлемых вариантов.

По материалам opennet.ru

Залишити відповідь

Дякуємо, що поділились