Debian se vraća podršci za višestruke init sustave

Sam Hartman, voditelj Debian projekta, pokušao razumjeti nesuglasice vezane uz isporuku paketa elogind kao dio distribucije. U srpnju tim zadužen za pripremu izdanja blokiran uključivanje eloginda u granu testiranja, budući da je ovaj paket u sukobu s libsystemd.

Sjetite se toga elogind pruža sučelja potrebna za pokretanje GNOME-a bez instaliranja systemd-a. Projekt je nastao kao fork systemd-logind, smješten u poseban paket i oslobođen vezivanja za systemd komponente. Između ostalog, elogind pruža vlastitu verziju biblioteke libelođind, koja preuzima brojne funkcije ponuđene u libsystemd i zamjenjuje ovu biblioteku tijekom instalacije.

Razlozi blokiranja bili su sukob s paketom systemd i opasnost od zamjene libsystemd s alternativnim libelogindom, koji je potpuno nekompatibilan s izvornom bibliotekom na ABI razini.
Paket označava elogind kao konfliktan sa systemd bibliotekama, ali on je inherentno dizajniran da radi samo bez systemd-a, a konflikt sa systemd-om je zapravo koristan jer sprječava greškom instaliranje eloginda. S druge strane, u sadašnjem obliku, pokušaji putem APT-a da ažuriraju konfiguraciju sa systemd na verziju sa sysvinit i elogind rezultiraju oštećeni sustav s APT-om koji ne radi. Ali čak i ako se ovaj nedostatak eliminira, prijelaz sa systemd na elogind ostaje nemoguć bez brisanja već instaliranih korisničkih okruženja.

Programeri eloginda bili su zaprosio prilagoditi elogind za rad na vrhu standardnog libpam-systemd, bez korištenja vlastitog libpam-elogind sloja. Prijelaz eloginda na libpam-systemd otežan je nedostatkom podrške za koncept odsječaka, ali programeri eloginda ne žele postići potpunu usklađenost s API-jem i točno ponoviti sve mogućnosti systemda, budući da elogind pruža samo minimalne funkcionalnost za organiziranje korisničkih prijava i nema za cilj repliciranje svih systemd podsustava.

Rješavanje opisanih tehničkih problema trebalo bi se rješavati na razini interakcije između tima za izdanje i održavatelja elogind i systemd, no voditelj projekta je bio prisiljen intervenirati jer se timovi nisu mogli dogovoriti, zajednički rad je prerastao u sučeljavanje i rješavanje problema problem je došao u slijepu ulicu, u kojoj je svaka strana bila u pravu na svoj način. Prema Samu Hartmanu, situacija se približava stanju koje zahtijeva opće glasovanje (GR, opća rezolucija), u kojem će zajednica odlučiti o alternativnim sustavima za init i podršku za sysvinit s elogindom.

Ako članovi projekta glasaju za diverzifikaciju pokretačkih sustava, svi će održavatelji biti uključeni u zajednički rad na rješavanju ovog problema ili će se određenim programerima dodijeliti rad na ovom problemu, a održavatelji više neće moći ignorirati alternativni početni sustav, šutjeti ili odgoditi proces.

Trenutno već u spremištu akumulirano 1033 paketa koji pružaju servisne jedinice za systemd, ali ne uključuju init.d skripte. Za rješavanje ovog problema ponudio opskrbljuje servisne datoteke prema zadanim postavkama, ali pripremi rukovatelj koji bi automatski analizirao naredbe iz tih datoteka i generirao init.d skripte na temelju njih.

Ako zajednica odluči da Debian ima dovoljno podrške za jedan init sustav, više se ne možemo brinuti o sysvinit-u i elogind-u i fokusirati se samo na jedinice jedinica i systemd. Ova će odluka negativno utjecati na portove koji ne koriste Linux kernel (Debian GNU / Hurd, Debian GNU / NetBSD и Debian GNU / kFreeBSD), ali takvih priključaka još nema u glavnoj arhivi i nemaju status službeno podržan.

Vezanje na systemd također će znatno otežati promjenu smjera distribucije u budućnosti i ograničiti daljnje eksperimentiranje na polju inicijalizacije i upravljanja uslugama. Održavanje eloginda u radnom obliku puno je lakše nego brisanje i pokušaj ponovnog dodavanja. Svaka opcija odluke ima prednosti i nedostatke, pa će prije glasovanja biti potrebna potpuna rasprava o svim prednostima i nedostacima.

Izvor: opennet.ru

Dodajte komentar