services: 'fold-service-types' includes (gnu services).

* gnu/services.scm (all-service-modules): New procedure.
(fold-service-types): Use it for the default MODULES value.
This commit is contained in:
Ludovic Courtès 2017-11-08 13:25:04 +01:00
parent a3d37f3ae5
commit 3943913fac
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 6 additions and 1 deletions

View File

@ -175,9 +175,14 @@
(make-parameter `((,%distro-root-directory . "gnu/services")
(,%distro-root-directory . "gnu/system"))))
(define (all-service-modules)
"Return the default set of service modules."
(cons (resolve-interface '(gnu services))
(all-modules (%service-type-path))))
(define* (fold-service-types proc seed
#:optional
(modules (all-modules (%service-type-path))))
(modules (all-service-modules)))
"For each service type exported by one of MODULES, call (PROC RESULT). SEED
is used as the initial value of RESULT."
(fold-module-public-variables (lambda (object result)