~ruther/guix-local

fdaacbad85a23f89db9431477684fb1333de03f3 — Ludovic Courtès 11 years ago 0392007
services: Add 'auto-start?' field to <service>.

* gnu/services.scm (<service>)[auto-start?]: New field.
* gnu/services/dmd.scm (dmd-configuration-file): Honor it.
* gnu/system/install.scm (cow-store-service): Add 'auto-start?' field.
3 files changed, 10 insertions(+), 1 deletions(-)

M gnu/services.scm
M gnu/services/dmd.scm
M gnu/system/install.scm
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)