M gnu/services.scm => gnu/services.scm +3 -0
@@ 27,6 27,7 @@
service-respawn?
service-start
service-stop
+ service-auto-start?
service-activate
service-user-accounts
service-user-groups
@@ 51,6 52,8 @@
(start service-start) ; g-expression (procedure)
(stop service-stop ; g-expression (procedure)
(default #~(const #f)))
+ (auto-start? service-auto-start? ; Boolean
+ (default #t))
(user-accounts service-user-accounts ; list of <user-account>
(default '()))
(user-groups service-user-groups ; list of <user-groups>
M gnu/services/dmd.scm => gnu/services/dmd.scm +3 -1
@@ 68,7 68,9 @@
(setenv "PATH" "/run/current-system/profile/bin")
(format #t "starting services...~%")
- (for-each start '#$(append-map service-provision services))))
+ (for-each start
+ '#$(append-map service-provision
+ (filter service-auto-start? services)))))
(gexp->file "dmd.conf" config)))
M gnu/system/install.scm => gnu/system/install.scm +4 -0
@@ 102,6 102,10 @@ the user's target storage device rather than on the RAM disk."
(documentation
"Make the store copy-on-write, with writes going to \
the given target.")
+
+ ;; This is meant to be explicitly started by the user.
+ (auto-start? #f)
+
(start #~(case-lambda
((target)
#$(make-cow-store #~target)