systemd i postmarketOS
Nylig utviklere av postmarketOS-prosjektet, annonsert gjennom et blogginnlegg nyheter om innføringen av systemd til systembygg. De primær årsak å implementere systemstøtte er vanskeligheten med å opprettholde en initialiseringsstabel basert på OpenRC står overfor den økende avhengigheten av GNOME og KDE av systemkomponenter.
Tilgjengeligheten av å bruke systemd som systemadministrator kommer etter et års arbeid og et prototypeoppsett med systemd i stedet for OpenRC initialiseringssystemet er forberedt og gjort tilgjengelig for testing.
Det er nevnt at Til tross for tillegget av systemd, vil det fortsatt bli gitt støtte lage bygg basert på OpenRC i postmarketOS, i det minste så lenge dette systemet fortsetter å bli brukt i Alpine Linux. Alternativet for å velge OpenRC vil være tilgjengelig når du lager postmarketOS-bilder med pmbootstrap. I tillegg vil OpenRC fortsette å bli brukt av monteringsutviklere som jobber med det grafiske skallet Sxmo (Simple X Mobile), basert på Sway-komposittbehandleren.
På den annen side, bygg med systemd vil fortsatt være basert på basispakken Alpine Linux, til tross for at denne distribusjonen ikke har offisiell støtte for systemd og bruker Musl C-biblioteket i stedet for Glibc C, som er kompatibelt med systemd. PostmarketOS-utviklerne implementerer flere patcher for å integrere systemd med Musl C og planlegger å samarbeide med systemd-utviklere for å forenkle denne integrasjonen i fremtiden.
Dette er selvfølgelig ikke en lett oppgave, en av de viktigste hindringene vi møter når vi samarbeider tettere med KDE- og GNOME-utviklere er at de har problemer med vår OpenRC-baserte stabel. For å få KDE og GNOME til å fungere, bruker vi mange systemd polyfills i tillegg til OpenRC. Så selv om vi teknisk sett "bruker ikke systemd", bruker vi i praksis allerede en stor del av komponentene for å kjøre KDE og GNOME, bare forskjellige versjoner av disse komponentene
For å sikre funksjonaliteten til GNOME og KDE basert på systemd måtte flere lag vedlikeholdes, og å jobbe uten systemd innebar å vedlikeholde disse lagene riktig og synkronisere dem med GNOME- og KDE-utvikling, noe som ga betydelige utfordringer og en viss usikkerhet i pågående vedlikehold av utviklerne.
I tillegg til dette nevner utviklerne det Ulike lag og pakker ble implementert for å sikre støtte for vertsnavn, lokaliserte og tidsstempeltjenester i postmarketOS. Det er Teller inkludert bruk av openrc-settingsd for støtte for vertsnavntjenester, eudev i stedet for udev for enhetsadministrasjon, elogind i stedet for logind for brukersesjonsadministrasjon, og loggbok i stedet for journalført for loggadministrasjon og superd-pakken ble brukt for å gi funksjonalitet som ligner på «systemd – bruker» og erstatte systemd.timer med våknet.
Men, riktig vedlikehold og støtte er kun garantert for openrc-settingsd og eudev. Prosjekter som elogind, loggbok og superd krever fortsatt forbedringer, da de mangler noen nødvendige funksjoner, og våknet Den har ikke vært på service på rundt et år. I tillegg uttrykte KDE Plasma Mobile-utviklere interesse for å bruke systemd-coredumpd for å forenkle feilsøking, men erstatte det, kjernesamler, Den har ikke mottatt vedlikehold siden 2020.
Disse tjenestene kreves for ulike funksjoner i GNOME og andre applikasjoner. For eksempel D-Bus API levert av vertsnavn, lokalisert og tidsdatert Den brukes i GNOME for å endre regionale og tidssoneinnstillinger. Udev kreves for å administrere tilkoblede enheter, mens du logger inn, "systemd – bruker» og journald brukes til å administrere brukersesjoner i gnome-session. GNOME-klokke bruker systemd.timer for sine funksjoner.
En når det gjelder nye funksjoner som kan implementeres med systembaserte bygg, inkludert granulær rettighetsadministrasjon, bruk av avanserte funksjoner for å sikre sikkerhet og administrere avhengigheter mellom tjenester, full integrasjon med cgroups, socket-aktivering for å starte tjenester etter behov (f.eks. kan CUPS bare startes av tilgang til nettverksporten), og tilgjengeligheten av innebygde verktøy for å analysere oppstartsprosessen.
endelig hvis du er det interessert i å vite mer om det, kan du sjekke detaljene i følgende lenke.