GNOME huwa adattat biex jiġi ġestit permezz ta' systemd

Benjamin Berg (Benjamin Berg), wieħed mill-inġiniera tar-Red Hat involuti fl-iżvilupp tal-GNOME, ġeneralizzata riżultati tax-xogħol fuq it-tranżizzjoni ta' GNOME għal ġestjoni tas-sessjoni esklussivament bl-użu ta' systemd, mingħajr ma tuża l-proċess gnome-sessjoni.

Ilu jintuża għal xi żmien mhux ħażin biex jikkontrolla l-login fil-GNOME. systemd-logind, li jsegwi stati ta' sessjoni speċifiċi għall-utent, jimmaniġġja l-identifikaturi tas-sessjoni, huwa responsabbli biex taqleb bejn sessjonijiet attivi, jikkoordina ambjenti b'ħafna sedili, jikkonfigura politiki ta 'aċċess għall-apparat, jipprovdi għodod għall-għeluq u l-irqad, eċċ.

Fl-istess ħin, parti mill-funzjonalità relatata mas-sessjoni baqgħet fuq l-ispallejn tal-proċess tas-sessjoni gnome, li kien responsabbli għall-ġestjoni permezz ta 'D-Bus, it-tnedija tal-maniġer tal-wiri u l-komponenti GNOME, u l-organizzazzjoni tal-autorun ta' applikazzjonijiet speċifikati mill-utent. . Matul l-iżvilupp ta’ GNOME 3.34, karatteristiċi speċifiċi għas-sessjoni ta’ gnome huma ppakkjati bħala fajls ta’ unità għal systemd, esegwiti fil-modalità “systemd —user”, i.e. fir-rigward tal-ambjent ta' utent speċifiku, u mhux is-sistema kollha. Il-bidliet diġà ġew implimentati fid-distribuzzjoni Fedora 31, li hija mistennija li tiġi rilaxxata fl-aħħar ta 'Ottubru.

L-użu ta 'systemd għamilha possibbli li tiġi organizzata t-tnedija ta' handlers fuq talba jew meta jseħħu ċerti avvenimenti, kif ukoll li tirrispondi b'mod aktar sofistikat għal terminazzjoni prematura ta 'proċessi minħabba fallimenti u ttrattati b'mod estensiv id-dipendenzi meta jibdew il-komponenti GNOME. Bħala riżultat, tista 'tnaqqas in-numru ta' proċessi li jaħdmu kontinwament u tnaqqas il-konsum tal-memorja. Pereżempju, XWayland issa jista' jitnieda biss meta jipprova jħaddem applikazzjoni bbażata fuq il-protokoll X11, u komponenti speċifiċi għall-ħardwer jistgħu jitniedu biss jekk ikun preżenti tali hardware (pereżempju, handlers għal smart cards jibdew meta tiddaħħal karta. u tispiċċa meta titneħħa).

Għodod aktar flessibbli għall-ġestjoni tat-tnedija tas-servizzi dehru għall-utent; pereżempju, biex jiġi diżattivat l-immaniġġjar taċ-ċavetta multimedjali, ikun biżżejjed li tesegwixxi "systemctl -user stop gsd-media-keys.target". F'każ ta' problemi, ir-reġistri assoċjati ma' kull handler jistgħu jitqiesu bil-kmand journalctl (per eżempju, “journalctl —user -u gsd-media-keys.service”), wara li qabel ppermettiet debug logging fis-servizz (“Ambjent= G_MESSAGES_DEBUG=kollha”). Huwa wkoll possibbli li tħaddem il-komponenti kollha tal-GNOME f'ambjenti ta' sandbox iżolati, li huma soġġetti għal rekwiżiti ta' sigurtà miżjuda.

Biex ittaffi t-tranżizzjoni, appoġġ għall-mod antik tat-tmexxija tal-proċessi ppjanat jippersistu fuq diversi ċikli ta' żvilupp GNOME. Sussegwentement, l-iżviluppaturi se jirrevedu l-istat tas-sessjoni gnome u x'aktarx (immarkat bħala "probabbli") ineħħu l-għodod għat-tnedija tal-proċessi u jżommu l-API D-Bus minnha. Imbagħad l-użu ta' "systemd -user" jiġi relegat għall-kategorija ta' funzjonijiet obbligatorji, li jistgħu joħolqu diffikultajiet għal sistemi mingħajr systemd u se jeħtieġu l-preparazzjoni ta' soluzzjoni alternattiva, kif darba kien il-każ ma' systemd-logind. Madankollu, fid-diskors tiegħu fil-GUADEC 2019, Benjamin Berg semma l-intenzjoni li jinżamm appoġġ għall-metodu tal-istartjar l-antik għal sistemi mingħajr systemd, iżda din l-informazzjoni tmur kontra l-pjanijiet għal paġna tal-proġett.

Sors: opennet.ru

Żid kumment