~ruther/guix-local

1c6b445b40dd693e9c2741942156258a89ebdb8b — Ludovic Courtès 11 years ago b3342b5
services: Update to use the dmd 0.2 API.

* gnu/services/avahi.scm (avahi-service)[start]: Wrap command in a
  list.
* gnu/services/dbus.scm (dbus-service)[start]: Likewise.
* gnu/services/ssh.scm (lsh-service): Likewise.
* gnu/services/base.scm (mingetty-service)[start]: Likewise.
  (nscd-service)[start]: Likewise.
  (syslog-service)[start]: Likewise.
  (guix-service)[start]: Likewise.
  (udev-service)[start]: Use 'exec-command' instead of 'execl'.
* gnu/services/xorg.scm (slim-service)[start]: Likewise, and use
  #:environment-variables.
M gnu/services/avahi.scm => gnu/services/avahi.scm +2 -2
@@ 88,8 88,8 @@ sockets."
      (requirement '(dbus-system networking))

      (start #~(make-forkexec-constructor
                (string-append #$avahi "/sbin/avahi-daemon")
                "--syslog" "-f" #$config))
                (list (string-append #$avahi "/sbin/avahi-daemon")
                      "--syslog" "-f" #$config)))
      (stop #~(make-kill-destructor))
      (activate #~(begin
                    (use-modules (guix build utils))

M gnu/services/base.scm => gnu/services/base.scm +24 -31
@@ 236,17 236,17 @@ the \"message of the day\"."
      (requirement '(user-processes host-name))

      (start  #~(make-forkexec-constructor
                 (string-append #$mingetty "/sbin/mingetty")
                 "--noclear" #$tty
                 #$@(if auto-login
                        #~("--autologin" #$auto-login)
                        #~())
                 #$@(if login-program
                        #~("--loginprog" #$login-program)
                        #~())
                 #$@(if login-pause?
                        #~("--loginpause")
                        #~())))
                 (list (string-append #$mingetty "/sbin/mingetty")
                       "--noclear" #$tty
                       #$@(if auto-login
                              #~("--autologin" #$auto-login)
                              #~())
                       #$@(if login-program
                              #~("--loginprog" #$login-program)
                              #~())
                       #$@(if login-pause?
                              #~("--loginpause")
                              #~()))))
      (stop   #~(make-kill-destructor))

      (pam-services


@@ 269,10 269,9 @@ the \"message of the day\"."
                           (use-modules (guix build utils))
                           (mkdir-p "/var/run/nscd")))

             (start
              #~(make-forkexec-constructor (string-append #$glibc "/sbin/nscd")
                                           "-f" "/dev/null"
                                           "--foreground"))
             (start #~(make-forkexec-constructor
                       (list (string-append #$glibc "/sbin/nscd")
                             "-f" "/dev/null" "--foreground")))
             (stop #~(make-kill-destructor))

             (respawn? #f)))))


@@ 310,10 309,9 @@ the \"message of the day\"."
      (provision '(syslogd))
      (requirement '(user-processes))
      (start
       #~(make-forkexec-constructor (string-append #$inetutils
                                                   "/libexec/syslogd")
                                    "--no-detach"
                                    "--rcfile" #$syslog.conf))
       #~(make-forkexec-constructor
          (list (string-append #$inetutils "/libexec/syslogd")
                "--no-detach" "--rcfile" #$syslog.conf)))
      (stop #~(make-kill-destructor))))))

(define* (guix-build-accounts count #:key


@@ 387,10 385,9 @@ hydra.gnu.org are used by default."
             (provision '(guix-daemon))
             (requirement '(user-processes))
             (start
              #~(make-forkexec-constructor (string-append #$guix
                                                          "/bin/guix-daemon")
                                           "--build-users-group"
                                           #$builder-group))
              #~(make-forkexec-constructor
                 (list (string-append #$guix "/bin/guix-daemon")
                       "--build-users-group" #$builder-group)))
             (stop #~(make-kill-destructor))
             (user-accounts accounts)
             (user-groups (list (user-group


@@ 409,6 406,9 @@ hydra.gnu.org are used by default."
             (requirement '(root-file-system))
             (documentation "Populate the /dev directory.")
             (start #~(lambda ()
                        (define udevd
                          (string-append #$udev "/libexec/udev/udevd"))

                        ;; Allow udev to find the modules.
                        (setenv "LINUX_MODULE_DIRECTORY"
                                "/run/booted-system/kernel/lib/modules")


@@ 416,14 416,7 @@ hydra.gnu.org are used by default."
                        (let ((pid (primitive-fork)))
                          (case pid
                            ((0)
                             ;; In dmd 0.1, file descriptor 0 is closed, thus
                             ;; is gets reused when open(2) is called, and it
                             ;; turns out that EPOLL_CTL_ADD of 0 returns
                             ;; EPERM for some reason.  So make sure 0 is
                             ;; open.
                             ;; FIXME: Close the other descriptors.
                             (execl (string-append #$udev "/libexec/udev/udevd")
                                    "udevd"))
                             (exec-command (list udevd)))
                            (else
                             ;; Wait for things to settle down.
                             (system* (string-append #$udev "/bin/udevadm")

M gnu/services/dbus.scm => gnu/services/dbus.scm +3 -3
@@ 81,9 81,9 @@ and policy files.  For example, to allow avahi-daemon to use the system bus,
      (provision '(dbus-system))
      (requirement '(user-processes))
      (start #~(make-forkexec-constructor
                (string-append #$dbus "/bin/dbus-daemon")
                "--nofork"
                (string-append "--config-file=" #$conf "/system.conf")))
                (list (string-append #$dbus "/bin/dbus-daemon")
                      "--nofork"
                      (string-append "--config-file=" #$conf "/system.conf"))))
      (stop #~(make-kill-destructor))
      (user-groups (list (user-group
                          (name "messagebus"))))

M gnu/services/ssh.scm => gnu/services/ssh.scm +1 -1
@@ 125,7 125,7 @@ The other options should be self-descriptive."
             (documentation "GNU lsh SSH server")
             (provision '(ssh-daemon))
             (requirement '(networking))
             (start #~(make-forkexec-constructor #$@lsh-command))
             (start #~(make-forkexec-constructor (list #$@lsh-command)))
             (stop  #~(make-kill-destructor))
             (pam-services
              (list (unix-pam-service

M gnu/services/xorg.scm => gnu/services/xorg.scm +3 -4
@@ 163,11 163,10 @@ reboot_cmd " dmd "/sbin/reboot
      (provision '(xorg-server))
      (requirement '(user-processes host-name))
      (start
       ;; XXX: Work around the inability to specify env. vars. directly.
       #~(make-forkexec-constructor
          (string-append #$bash "/bin/sh") "-c"
          (string-append "SLIM_CFGFILE=" #$slim.cfg
                         " " #$slim "/bin/slim" " -nodaemon")))
          (list (string-append #$slim "/bin/slim") "-nodaemon")
          #:environment-variables
          (list (string-append "SLIM_CFGFILE=" #$slim.cfg))))
      (stop #~(make-kill-destructor))
      (respawn? #t)
      (pam-services