Τα αποτελέσματα της ψηφοφορίας για τα συστήματα init Debian συνοψίστηκαν

Δημοσίευσε ευρήματα γενική ψηφοφορία (GR, general resolution) разработчиков проекта Debian, участвующих в сопровождении пакетов и поддержании инфраструктуры, проводившегося по вопросу поддержки нескольких систем инициализации. Победил второй пункт («B») в списке — предпочитаемым остаётся systemd, но оставляется возможность сопровождения альтернативных систем инициализации. Голосование проводилось методом Кондорсе, при котором каждый голосующий ранжирует все варианты в порядке их предпочтения, а при вычислении результата учитывается сколько голосующих предпочитает один вариант другому.

Победивший вариант признаёт, что сервисные юниты systemd являются предпочтительным способом настройки запуска демонов и сервисов, но допускает, что существуют окружения, в которых разработчики и пользователи могут создавать и применять альтернативные системы инициализации и функциональные альтернативы возможностям systemd. Разработчикам альтернативных решений требуется предоставление ресурсов для проведения их работы и форматирования пакетов. Альтернативные решения, подобные elogind, применяемые для организации запуска приложений, привязанных к интерфейсам, специфичным для systemd, остаются важными для проекта. Поддержка подобных инициатив требует содействия в областях, в которых развиваемые альтернативные технологии пересекаются с остальным проектом, например, недопустимо затягивание рецензирования патчей и проведения обсуждений.

В пакеты допускается включение как unit-файлов systemd, так и init-скриптов для запуска сервисов. Пакеты могут использовать любые возможности systemd по желанию сопровождающего пакет, при условии, что эти возможности соответствуют требованиям правил Debian и не привязаны к экспериментальным или неподдерживаемым в Debian возможностям из других пакетов. Помимо systemd пакеты также могут включать поддержку альтернативных систем инициализации и предоставлять компоненты для замены специфичных интерфейсов systemd. Решения по включению патчей принимаются сопровождающими в рамках штатных процедур. Debian обязуется работать с производными дистрибутивами, выбравшими для себя другие системы инициализации, но взаимодействие строится на уровне сопровождающих, на которых ложатся решения о том, какие подготовленные сторонними дистрибутивами возможности принимать в основной состав Debian, а какие оставлять в производном дистрибутиве.

Να θυμίσουμε ότι το 2014 η τεχνική επιτροπή εγκρίθηκε μετάβαση προεπιλεγμένη διανομή στο systemd, αλλά όχι δούλεψε решения по отношению к поддержке нескольких систем инициализации (при голосовании победил пункт, указывающий на неготовность комитета вынести решение по данному вопросу). Лидер комитета порекомендовал сопровождающим пакеты сохранить поддержку sysvinit в качестве альтернативной системы инициализации, но указал, что не может навязывать свою точку зрения и в каждом случае решение следует принимать самостоятельно.

Μετά από αυτό, ορισμένοι προγραμματιστές επιχείρησαν προσπάθεια να πραγματοποιηθεί γενική ψηφοφορία, αλλά η προκαταρκτική ψηφοφορία έδειξε ότι δεν χρειαζόταν να ληφθεί απόφαση σχετικά με το ζήτημα της χρήσης πολλαπλών συστημάτων προετοιμασίας. Πριν από λίγους μήνες, μετά πρόβλημα με τη συμπερίληψη του πακέτου elogind (απαραίτητο για την εκτέλεση του GNOME χωρίς systemd) στον κλάδο δοκιμών λόγω σύγκρουσης με το libsystemd, το ζήτημα τέθηκε ξανά από τον επικεφαλής του έργου Debian, καθώς οι προγραμματιστές δεν μπορούσαν να συμφωνήσουν και η επικοινωνία τους μετατράπηκε σε αντιπαράθεση και έφτασε σε αδιέξοδο.

Рассматривавшиеся варианты:

  • Η κύρια εστίαση είναι στο systemd. Η παροχή υποστήριξης για εναλλακτικά συστήματα init δεν αποτελεί προτεραιότητα, αλλά οι συντηρητές μπορούν προαιρετικά να περιλαμβάνουν σενάρια init για τέτοια συστήματα σε πακέτα.
  • Το systemd παραμένει προτιμότερο, αλλά απομένει η δυνατότητα διατήρησης εναλλακτικών συστημάτων αρχικοποίησης. Τεχνολογίες όπως το elogind, που επιτρέπουν σε εφαρμογές που συνδέονται με το systemd να εκτελούνται σε εναλλακτικά περιβάλλοντα, θεωρούνται σημαντικές. Τα πακέτα μπορεί να περιλαμβάνουν αρχεία init για εναλλακτικά συστήματα.
  • Υποστήριξη για μια ποικιλία συστημάτων init και δυνατότητα εκκίνησης του Debian με συστήματα init εκτός του systemd.
    Για την εκτέλεση υπηρεσιών, τα πακέτα πρέπει να περιλαμβάνουν σενάρια init· η παροχή μόνο αρχείων μονάδας συστήματος χωρίς δέσμες ενεργειών init sysv είναι απαράδεκτη.

  • Поддержка систем, не использующих systemd, но без внесения изменений, мешающих развитию. Разработчики соглашаются поддерживать несколько систем инициализации в обозримом будущем, но также считают необходимым работать над улучшением поддержки systemd. Разработкой и сопровождением специфичных решений следует заниматься заинтересованным в таких решениях сообществам, но другие мэйнтейнеры должны активно помогать и способствовать решению проблем, когда в этом возникает необходимость. В идеале пакеты должны функционировать при использовании любой системы инициализации, для чего можно поставлять традиционные init-скрипты или использовать иные механизмы, позволяющие работать без systemd. Невозможность работы без systemd рассматривается как ошибка, но не как ошибка, блокирующая релиз, за исключением случаев, когда имеется готовое решение для работы без systemd, но его отказываются сохранять (например, когда проблема вызвана удалением ранее поставлявшегося init-скрипта).
  • Υποστηρίζει τη φορητότητα χωρίς να εισάγει αλλαγές που εμποδίζουν την ανάπτυξη. Το Debian εξακολουθεί να θεωρείται ως μια γέφυρα για την ενσωμάτωση διαφορετικού λογισμικού που παρέχει ισοδύναμη ή παρόμοια λειτουργικότητα. Η φορητότητα μεταξύ πλατφορμών υλικού και στοίβων λογισμικού είναι ένας σημαντικός στόχος και ενθαρρύνεται η ενσωμάτωση εναλλακτικών τεχνολογιών, ακόμη κι αν η κοσμοθεωρία των δημιουργών τους διαφέρει από τη γενική συναίνεση. Η θέση σχετικά με το systemd και άλλα συστήματα αρχικοποίησης συμπίπτει πλήρως με το σημείο 4.
  • Να γίνει υποχρεωτική η υποστήριξη για πολλαπλά συστήματα αρχικοποίησης. Η παροχή της δυνατότητας εκτέλεσης του Debian με συστήματα init εκτός του systemd εξακολουθεί να είναι σημαντική για το έργο. Κάθε πακέτο πρέπει να λειτουργεί με χειριστές pid1 διαφορετικούς από το systemd, εκτός εάν το λογισμικό που περιλαμβάνεται στο πακέτο προοριζόταν αρχικά να λειτουργεί μόνο με systemd και δεν υποστηρίζει λειτουργία χωρίς systemd (η απουσία σεναρίων init δεν υπολογίζεται ότι προορίζεται μόνο για εργασία με systemd) .
  • Υποστηρίζει φορητότητα και πολλαπλές υλοποιήσεις. Οι γενικές αρχές είναι ακριβώς οι ίδιες με το σημείο 5, αλλά δεν υπάρχουν ειδικές απαιτήσεις για συστήματα systemd και init και δεν επιβάλλονται υποχρεώσεις στους προγραμματιστές. Οι προγραμματιστές ενθαρρύνονται να λαμβάνουν υπόψη ο ένας τα συμφέροντα του άλλου, να κάνουν συμβιβασμούς και να βρίσκουν κοινές λύσεις που είναι ικανοποιητικές για διάφορα μέρη.
  • Συνέχεια συζήτησης. Το στοιχείο μπορεί να χρησιμοποιηθεί για την υποβάθμιση μη αποδεκτών επιλογών.
  • Πηγή: opennet.ru

    Προσθέστε ένα σχόλιο