GNU Guix System | |
---|---|
Fil:GNU Guix System logo.svg | |
Guix System med Xfce och med GNU IceCat och GNU Emacs inkluderade | |
Utvecklaren | GNU-projektet [1] [2] |
OS-familjen | Unix-liknande OS |
Källa | öppna |
senaste versionen | 1.3.0 [3] (11 maj 2021 ) |
Pakethanterare | GNU Guix |
Plattformar som stöds | x86_64, i686, arm [4] |
Typ av kärna |
Monolitisk : Linux-fri (operativ) Mikrokärna : GNU Hurd (under utveckling) |
Gränssnitt | GNOME [5] , Xfce [5] , Enlightenment [5] och LXDE [5] |
Licens | GPL |
stat | under utveckling |
Hemsida | guix.gnu.org |
Mediafiler på Wikimedia Commons |
GNU Guix System är en Linux-distribution byggd med GNU Guix [6] [7] pakethanterare . Den använder den Linux-fria kärnan med stöd för GNU Hurd - element [8] . Den 3 februari 2015 lades distributionen till Free Software Foundations lista över gratis GNU+Linux-distributioner [9] ..
GuixSD använder GNU Guix , en funktionell pakethanterare, och en systemkonfigurationshanterare baserad på Nix-pakethanteraren , med hjälp av GNU Guile , som är en implementering av programmeringsspråket Scheme . Alla paketdefinitioner, såväl som all systemkonfiguration, är skrivna i det domänspecifika språket Guile Scheme [10] .
GuixSD använder GNU Daemon Shepherd som sitt init- system , som är utvecklat i tandem med Guix och också är skrivet i Guile . Det kallades tidigare "dmd", vilket betyder "Daemon management Daemons" eller "Daemons-management Daemon", men namnet har ändrats för att undvika konflikt med Digital Mars D- kompilatorn [11] .
Shepherd exponerar användarutrymmesfunktionalitet asynkront som tjänster, vilket för Shepherd är generiska funktioner och objektdatatyper . Deras export används av Shepherd för att utöka basoperativsystemet på ett visst sätt. I motsats till systemd körs userspace process shepherd som en användare. Kärnan i Shepherds modell för initiering av användarutrymme är konceptet förlängning, en form av komponerbarhet där tjänster är utformade för att läggas ovanpå andra tjänster, förstärka dem med mer komplexa eller specialiserade beteenden efter önskemål. [12] Detta uttrycker de instansieringsbaserade beroendeförhållandena som finns i många moderna provisioneringssystem, [13] vilket gör systemet modulärt samtidigt som det tillåter tjänster att interagera variabelt med varandra på godtyckliga sätt.
Shepherd tillhandahåller också så kallade virtuella tjänster , som tillåter dynamisk sändning över en klass av relaterade tjänsteobjekt, såsom alla de objekt som skapar en e-postserverimplementering för ett system [14] . Ett system som hanteras genom Shepherd-demonen kan representera sitt användarutrymme som en riktad acyklisk graf , och "systemtjänsten" som ansvarar för de tidiga start- och init-faserna är både dess rot och alla efterföljande initierade tjänster som tillägg till funktionaliteten hos systemtjänsten , antingen direkt eller genom andra tjänster [12] [15] .
GNU Shepherd är skrivet och konfigurerat med hjälp av Guile Scheme och är avsett att tillåta en hög grad av systemadministratörsprogrammering, men det kan också användas för att hantera individuella användarprofiler för oprivilegierade demoner och tjänster. [16] . Dess tjänster och konfiguration lagras enhetligt som objektorienterad Scheme -kod , och medan en kärnuppsättning tjänster tillhandahålls genom bassystemet GuixSD [17] , kan godtyckliga nya tjänster deklareras flexibelt. Och genom Guile Object System (GOOPS) kan befintliga tjänster åsidosättas efter användarens gottfinnande genom att be Shepherd att dynamiskt ändra tjänster på de specificerade sätten när de instansieras [18] [19] .
GNU Shepherd utvecklades ursprungligen för att fungera med GNU Hurd och användes senare i GuixSD [20] .
GNU-projekt | ||
---|---|---|
Berättelse | ||
Licenser |
| |
Programvara _ |
| |
Personligheter |
| |
Andra ämnen |
|
Linux- distributionsfamiljer | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Debian |
| ||||||||||||||
ubuntu |
| ||||||||||||||
Fedora |
| ||||||||||||||
röd hatt |
| ||||||||||||||
Mandriva |
| ||||||||||||||
Slackware | |||||||||||||||
Gentoo | |||||||||||||||
Båge | |||||||||||||||
Självständig | |||||||||||||||
Särskild |
| ||||||||||||||
Kategori Wikimedia Commons Wikinews Wikidata |