Browse Source

system: Add procedures to access user accounts and service names.

* gnu/system.scm (operating-system-user-accounts)
(operating-system-shepherd-service-names): New procedures.
wip-offload-compression
Ludovic Courtès 6 years ago
parent
commit
b2fef041fc
No known key found for this signature in database GPG Key ID: 90B11993D9AEBB5
  1. 18
      gnu/system.scm

18
gnu/system.scm

@ -82,6 +82,8 @@
operating-system-file-systems
operating-system-store-file-system
operating-system-activation-script
operating-system-user-accounts
operating-system-shepherd-service-names
operating-system-derivation
operating-system-profile
@ -578,6 +580,22 @@ hardware-related operations as necessary when booting a Linux container."
;; BOOT is the script as a monadic value.
(service-parameters boot)))
(define (operating-system-user-accounts os)
"Return the list of user accounts of OS."
(let* ((services (operating-system-services os))
(account (fold-services services
#:target-type account-service-type)))
(filter user-account?
(service-parameters account))))
(define (operating-system-shepherd-service-names os)
"Return the list of Shepherd service names for OS."
(append-map shepherd-service-provision
(service-parameters
(fold-services (operating-system-services os)
#:target-type
shepherd-root-service-type))))
(define* (operating-system-derivation os #:key container?)
"Return a derivation that builds OS."
(let* ((services (operating-system-services os #:container? container?))

Loading…
Cancel
Save