Os resultados da votação nos sistemas init Debian foram resumidos

Publicados resultados votação geral (GR, resolução geral) dos desenvolvedores do projeto Debian envolvidos na manutenção de pacotes e manutenção de infraestrutura, realizada sobre a questão do suporte a múltiplos sistemas init. Venceu o segundo item (“B”) da lista - systemd continua sendo o preferido, mas permanece a possibilidade de manter sistemas de inicialização alternativos. A votação foi realizada pelo método Condorcet, em que cada eleitor classifica todas as opções em ordem de preferência e, no cálculo do resultado, leva em consideração quantos eleitores preferem uma opção a outra.

A proposta vencedora reconhece que as unidades de serviço do systemd são a forma preferida de configurar daemons e serviços para execução, mas reconhece que existem ambientes nos quais desenvolvedores e usuários podem criar e usar sistemas init alternativos e alternativas funcionais às capacidades do systemd. Desenvolvedores de soluções alternativas necessitam de recursos para realizar seu trabalho e formatar seus pacotes. Soluções alternativas como elogind para executar aplicativos vinculados a interfaces específicas do systemd continuam importantes para o projeto. O apoio a tais iniciativas requer assistência em áreas onde o desenvolvimento de tecnologias alternativas se cruza com o resto do projecto, como o adiamento da revisão e discussão de patches.

Os pacotes podem incluir arquivos de unidade do systemd e scripts de inicialização para iniciar serviços. Os pacotes podem usar quaisquer recursos do systemd que o mantenedor do pacote desejar, desde que os recursos estejam em conformidade com as regras do Debian e não estejam vinculados a recursos experimentais ou não suportados do Debian em outros pacotes. Além do systemd, os pacotes também podem incluir suporte para sistemas init alternativos e fornecer componentes para substituir interfaces específicas do systemd. As decisões relativas à inclusão de patches são tomadas pelos mantenedores como parte dos procedimentos padrão. O Debian está comprometido em trabalhar com distribuições derivadas que optam por usar outros sistemas init, mas a interação é construída no nível do mantenedor, que toma decisões sobre quais recursos preparados por distribuições de terceiros são aceitos na composição principal do Debian e quais são deixados na distribuição derivada.

Recordemos que em 2014 a comissão técnica aprovado transição distribuição padrão no systemd, mas não deu certo decisões relativas ao suporte a múltiplos sistemas de provisionamento (o item que indicava a relutância do comitê em tomar uma decisão sobre esta questão ganhou a votação). O líder do comitê recomendou que os mantenedores de pacotes mantivessem o apoio ao sysvinit como um sistema init alternativo, mas indicou que não poderia impor seu ponto de vista e que a decisão deveria ser tomada de forma independente em cada caso.

Depois disso, alguns desenvolvedores tentaram tentar realizar votação geral, mas a votação preliminar mostrou que não havia necessidade de tomar uma decisão sobre a questão do uso de múltiplos sistemas de inicialização. Há alguns meses, depois проблем com a inclusão do pacote elogind (necessário para rodar o GNOME sem systemd) no ramo de testes devido a um conflito com o libsystemd, a questão foi novamente levantada pelo líder do projeto Debian, já que os desenvolvedores não concordaram, e sua comunicação se transformou em um confronto e chegou a um beco sem saída.

Opções consideradas:

  • O foco principal está no systemd. Fornecer suporte para sistemas init alternativos não é uma prioridade, mas os mantenedores podem opcionalmente incluir scripts init para tais sistemas em pacotes.
  • O systemd continua sendo o preferido, mas resta a possibilidade de manter sistemas de inicialização alternativos. Tecnologias como o elogind, que permitem que aplicativos vinculados ao systemd sejam executados em ambientes alternativos, são vistas como importantes. Os pacotes podem incluir arquivos init para sistemas alternativos.
  • Suporte para uma variedade de sistemas init e a capacidade de inicializar o Debian com sistemas init diferentes do systemd.
    Para executar serviços, os pacotes devem incluir scripts de inicialização; fornecer apenas arquivos de unidade systemd sem scripts de inicialização sysv é inaceitável.

  • Suporte para sistemas que não utilizam systemd, mas sem fazer alterações que atrapalhem o desenvolvimento. Os desenvolvedores concordam em oferecer suporte a vários sistemas init no futuro próximo, mas também acreditam que é necessário trabalhar para melhorar o suporte ao systemd. O desenvolvimento e a manutenção de soluções específicas devem ser deixados às comunidades interessadas nessas soluções, mas outros mantenedores devem ajudar e contribuir activamente para a resolução de problemas quando necessário. Idealmente, os pacotes devem funcionar usando qualquer sistema init, o que pode ser conseguido fornecendo scripts init tradicionais ou usando outros mecanismos que lhes permitam funcionar sem o systemd. A incapacidade de trabalhar sem o systemd é considerada um bug, mas não um bug de bloqueio de lançamento, a menos que haja uma solução pronta para trabalhar sem o systemd, mas é recusado para ser salvo (por exemplo, quando o problema é causado pelo remoção de um script de inicialização fornecido anteriormente).
  • Apoia a portabilidade sem introduzir alterações que prejudiquem o desenvolvimento. O Debian continua a ser visto como uma ponte para integração de diferentes softwares que fornecem funcionalidades equivalentes ou semelhantes. A portabilidade entre plataformas de hardware e pilhas de software é um objetivo importante, e a integração de tecnologias alternativas é incentivada, mesmo que a visão de mundo dos seus criadores seja diferente do consenso geral. A posição em relação ao systemd e outros sistemas de inicialização coincide completamente com o ponto 4.
  • Tornando obrigatório o suporte para vários sistemas de inicialização. Fornecer a capacidade de executar o Debian com sistemas init diferentes do systemd continua a ser importante para o projeto. Cada pacote deve funcionar com manipuladores pid1 diferentes do systemd, a menos que o software incluído no pacote tenha sido originalmente planejado para funcionar apenas com o systemd e não suporte a execução sem o systemd (a ausência de scripts de inicialização não conta como destinado apenas para trabalhar com o systemd) .
  • Suporta portabilidade e múltiplas implementações. Os princípios gerais são exatamente os mesmos do ponto 5, mas não há requisitos específicos para sistemas systemd e init, e nenhuma obrigação é imposta aos desenvolvedores. Os desenvolvedores são incentivados a levar em conta os interesses uns dos outros, fazer compromissos e encontrar soluções comuns que sejam satisfatórias para as diversas partes.
  • Discussão continuada. O item pode ser usado para fazer downgrade de opções inaceitáveis.
  • Fonte: opennet.ru

    Adicionar um comentário