Die Ergebnisse der Abstimmung über Debian-Init-Systeme wurden zusammengefasst

Veröffentlicht Befund allgemeine Abstimmung (GR, allgemeine Resolution) der Debian-Projektentwickler, die an der Paketwartung und Infrastrukturwartung beteiligt sind, zum Thema der Unterstützung mehrerer Init-Systeme. Das zweite Element („B“) in der Liste hat gewonnen – systemd bleibt bevorzugt, aber die Möglichkeit, alternative Initialisierungssysteme beizubehalten, bleibt bestehen. Die Abstimmung erfolgte nach dieser Methode Condorcet, bei dem jeder Wähler alle Optionen in der Reihenfolge seiner Präferenz einordnet und bei der Berechnung des Ergebnisses berücksichtigt wird, wie viele Wähler eine Option einer anderen vorziehen.

Der siegreiche Vorschlag erkennt an, dass Systemd-Diensteinheiten die bevorzugte Methode zur Konfiguration von Daemons und Diensten für die Ausführung sind, erkennt jedoch an, dass es Umgebungen gibt, in denen Entwickler und Benutzer alternative Init-Systeme und funktionale Alternativen zu den Fähigkeiten von Systemd erstellen und verwenden können. Entwickler alternativer Lösungen benötigen Ressourcen, um ihre Arbeit auszuführen und ihre Pakete zu formatieren. Alternative Lösungen wie elogind zum Ausführen von Anwendungen, die an systemd-spezifische Schnittstellen gebunden sind, bleiben für das Projekt wichtig. Die Unterstützung solcher Initiativen erfordert Unterstützung in Bereichen, in denen sich die Entwicklung alternativer Technologien mit dem Rest des Projekts überschneidet, beispielsweise bei der Verzögerung der Patchüberprüfung und -diskussion.

Pakete können sowohl Systemd-Unit-Dateien als auch Init-Skripte zum Starten von Diensten enthalten. Pakete können alle systemd-Funktionen verwenden, die der Paketbetreuer wünscht, solange die Funktionen den Debian-Regeln entsprechen und nicht an experimentelle oder nicht unterstützte Debian-Funktionen in anderen Paketen gebunden sind. Zusätzlich zu systemd können Pakete auch Unterstützung für alternative Init-Systeme enthalten und Komponenten zum Ersetzen systemd-spezifischer Schnittstellen bereitstellen. Entscheidungen über die Einbindung von Patches werden von den Betreuern im Rahmen von Standardverfahren getroffen. Debian ist bestrebt, mit abgeleiteten Distributionen zu arbeiten, die andere Init-Systeme verwenden. Die Interaktion wird jedoch auf der Ebene des Betreuers aufgebaut, der entscheidet, welche von Distributionen Dritter vorbereiteten Funktionen in die Hauptzusammensetzung von Debian aufgenommen werden und welche übrig bleiben in der Ableitungsverteilung.

Erinnern wir uns daran, dass im Jahr 2014 der technische Ausschuss genehmigt Überlauf Standardverteilung auf systemd, aber nicht hat geklappt Entscheidungen bezüglich der Unterstützung mehrerer Bereitstellungssysteme (der Punkt, der darauf hinweist, dass der Ausschuss nicht bereit ist, eine Entscheidung zu diesem Thema zu treffen, gewann die Abstimmung). Der Ausschussvorsitzende empfahl den Paketbetreuern, Sysvinit als alternatives Init-System weiterhin zu unterstützen, wies jedoch darauf hin, dass er seinen Standpunkt nicht durchsetzen könne und dass die Entscheidung in jedem Fall unabhängig getroffen werden sollte.

Danach versuchten es einige Entwickler versuchen durchzuführen Die allgemeine Abstimmung ergab jedoch, dass in der vorläufigen Abstimmung keine Notwendigkeit bestand, über die Frage der Verwendung mehrerer Initialisierungssysteme zu entscheiden. Vor ein paar Monaten, danach проблем Mit der Aufnahme des elogind-Pakets (notwendig zum Ausführen von GNOME ohne systemd) in den Testzweig aufgrund eines Konflikts mit libsystemd wurde das Problem erneut vom Debian-Projektleiter angesprochen, da sich die Entwickler nicht einigen konnten und ihre Kommunikation zu einem Problem wurde Konfrontation und gelangte in eine Sackgasse.

Berücksichtigte Optionen:

  • Der Schwerpunkt liegt auf systemd. Die Bereitstellung von Unterstützung für alternative Init-Systeme hat keine Priorität, Betreuer können jedoch optional Init-Skripte für solche Systeme in Pakete aufnehmen.
  • systemd bleibt bevorzugt, es besteht jedoch weiterhin die Möglichkeit, alternative Initialisierungssysteme beizubehalten. Als wichtig werden Technologien wie elogind angesehen, die es ermöglichen, an systemd gebundene Anwendungen in alternativen Umgebungen auszuführen. Pakete können Init-Dateien für alternative Systeme enthalten.
  • Unterstützung für eine Vielzahl von Init-Systemen und die Möglichkeit, Debian mit anderen Init-Systemen als systemd zu starten.
    Um Dienste auszuführen, müssen Pakete Init-Skripte enthalten. Es ist nicht akzeptabel, nur systemd-Unit-Dateien ohne sysv-Init-Skripte bereitzustellen.

  • Unterstützung für Systeme, die systemd nicht verwenden, jedoch ohne Änderungen vorzunehmen, die die Entwicklung behindern würden. Die Entwickler sind sich einig, auf absehbare Zeit mehrere Init-Systeme zu unterstützen, halten es aber auch für notwendig, an der Verbesserung der Systemd-Unterstützung zu arbeiten. Die Entwicklung und Wartung spezifischer Lösungen sollte den an diesen Lösungen interessierten Communities überlassen werden, andere Betreuer sollten jedoch bei Bedarf aktiv helfen und zur Problemlösung beitragen. Im Idealfall sollten Pakete mit jedem Init-System funktionieren, was durch die Bereitstellung herkömmlicher Init-Skripte oder die Verwendung anderer Mechanismen erreicht werden kann, die es ihnen ermöglichen, ohne Systemd zu funktionieren. Die Unfähigkeit, ohne systemd zu arbeiten, wird als Fehler betrachtet, aber nicht als Release-blockierender Fehler, es sei denn, es gibt eine fertige Lösung für das Arbeiten ohne systemd, deren Speicherung jedoch verweigert wird (z. B. wenn das Problem durch verursacht wird). Entfernen eines zuvor bereitgestellten Init-Skripts).
  • Unterstützt die Portabilität, ohne Änderungen einzuführen, die die Entwicklung behindern. Debian wird weiterhin als Brücke für die Integration verschiedener Software angesehen, die gleichwertige oder ähnliche Funktionalität bietet. Portabilität zwischen Hardwareplattformen und Software-Stacks ist ein wichtiges Ziel, und die Integration alternativer Technologien wird gefördert, auch wenn die Weltanschauung ihrer Entwickler vom allgemeinen Konsens abweicht. Die Position bezüglich systemd und anderen Initialisierungssystemen stimmt vollständig mit Punkt 4 überein.
  • Die Unterstützung mehrerer Initialisierungssysteme ist obligatorisch. Die Bereitstellung der Möglichkeit, Debian mit anderen Init-Systemen als systemd auszuführen, ist weiterhin wichtig für das Projekt. Jedes Paket muss mit anderen pid1-Handlern als systemd funktionieren, es sei denn, die im Paket enthaltene Software war ursprünglich nur für die Arbeit mit systemd gedacht und unterstützt die Ausführung ohne systemd nicht (das Fehlen von Init-Skripten gilt nicht als nur für die Arbeit mit systemd gedacht). .
  • Unterstützt Portabilität und mehrere Implementierungen. Die allgemeinen Prinzipien sind genau die gleichen wie in Punkt 5, es gibt jedoch keine spezifischen Anforderungen für systemd- und init-Systeme und es werden den Entwicklern keine Verpflichtungen auferlegt. Entwickler werden ermutigt, die Interessen des anderen zu berücksichtigen, Kompromisse einzugehen und gemeinsame Lösungen zu finden, die für verschiedene Parteien zufriedenstellend sind.
  • Fortsetzung der Diskussion. Mit dem Gegenstand können inakzeptable Optionen herabgestuft werden.
  • Source: opennet.ru

    Kommentar hinzufügen