GNOME OS үчүн атомдук жаңыртылган carbonOS дистрибьюторунун жана орнотуучусунун жаратуучусу, ошондой эле systemd-homed жана systemd-sysupdate иштеп чыгуучуларынын бири Адриан Вовк GNOMEге өзгөртүүлөрдү жарыялады, бул долбоордун systemdге көз карандылыгын жогорулатат. Алдыдагы GNOME 49 жана 50-релиздеринде кирүү экранын ишке киргизүү үчүн кээ бир нукура компоненттер стандарттык системалык мүмкүнчүлүктөр менен алмаштырылат, бул системаны колдонбогон дистрибуцияларда жана операциялык системаларда GNOME жеткирүү үчүн жаңы катмарларды түзүүнү талап кылат. Эски кодду стандарттык системалык мүмкүнчүлүктөрдүн пайдасына алып салуу техникалык тейлөөнү жөнөкөйлөтүп, долбоорду чечүүчү жолдордон арылтат жана сеанстарды сактоо жана калыбына келтирүү сыяктуу кошумча функцияларды ишке ашырууга мүмкүндүк берери белгиленген.
2015-жылдан бери GNOME ConsoleKitтин ордуна systemd-logind сессиясынын менеджерин колдонуп келет. Системаны колдоого албаган жайылтуулар elogind, системадан көзкарандысыз логиндин кыскартылган версиясын же ConsoleKit үчүн колдоону кайтарган патчтарды колдонушат. Системасыз иштөө үчүн мындай убактылуу чечимдер GNOME иштеп чыгууда эске алынбайт же текшерилбейт, ошондуктан алардын функционалдуулугу үчүнчү тараптын энтузиасттарынан көз каранды.
GNOME'дун келечектеги чыгарылыштарында GDM дисплей менеджери өзүнүн AccountsService ордуна, systemd тарабынан берилген userdb инфраструктурасын кошумча колдонот. GNOME жана systemd өзү бир эле колдонуучу үчүн бирден ашык графикалык сессияны иштетүүнү колдобойт. Бирок, GDM бир нече графикалык сеанстарды иштетүү үчүн бир эле учурда бир нече кирүү экрандарын көрсөтө алат, бул алыскы иш тактасына жетүү үчүн жана бир нече мониторлор жана киргизүү түзүлүштөрү бар көп орундуу системаларда пайдалуу. Бул функция GDMде 15 жыл мурун убактылуу чечүү жолу катары ишке ашырылган жана заманбап dbus-брокерине шайкеш келбейт, ошондуктан эсептерди динамикалык бөлүштүрүү жана ар бир кирүү экранынын инстанциясын уникалдуу колдонуучу астында иштетүү үчүн systemd-userdb колдонгон жаңы ишке өтүү чечими кабыл алынды.
Мындан тышкары, GNOME-дан GNOME-сессиясында GNOME кызматтарын тутумсуз чөйрөлөрдө ишке киргизүү үчүн кайра иштетүүчү катары колдонулган өзүнүн сервис менеджерин ишке ашырууну алып салуу чечими кабыл алынды. Орнотулган кызмат менеджери рабочий файлдарды ишке киргизүү жана алар менен байланышкан кызматтардын ишин көзөмөлдөө деңгээлинде иштеген. Бул кызмат менеджери акыркы 17 жыл бою дээрлик өзгөрүүсүз калды жана ал жок кылынбагандыгынын бирден-бир себеби, анын кирүү экранын ишке киргизүү үчүн GDMде колдонулушу болду. GDMди кирүү экранын ишке киргизүү үчүн systemd колдонууга алмаштыргандан кийин, долбоордун өзүнүн примитивдик сеанс менеджерин колдоого эч кандай негизи жок болчу, бул сеанстарды сактоо жана калыбына келтирүү мүмкүнчүлүгүн ишке ашырууга тоскоолдук кылат.
Өзгөртүүлөргө системаны колдонбогон дистрибуциялардын адаптациясын жөнөкөйлөтүү үчүн, GNOME 49 биринчи кирүү сеансы үчүн туруктуу колдонуучу gdm-greeter, экинчиси үчүн gdm-greeter-2 ж. шашылыш түрдө systemd-userdb (io.systemd.Multiplexer, userdb Varlink API) жана бөлүштүрүүдө колдонулган тейлөө менеджери менен өз ара аракеттенүүчү сеанс лидеринин процессин алмаштыруу үчүн катмарларды иштеп чыгуу керек.
Сеансты баштоо процесси, D-Bus кызматы жана systemd ортосундагы өз ара аракеттенүүнү координациялаган gnome-session-ctl аткарылуучу файлын алмаштыруу да керек болот. GNOME 49 чыкканга чейин gnome-session-ctl үчүн алмаштыруу иштелип чыгышы керек.
Source: opennet.ru
