~ruther/guix-local

fe2b6434f02c8abb26aebb59c4e0d0ccacb4fc90 — Christopher Baines 9 years ago 82ccc49
services: Create /var/log upon activation.

When launching a container created with guix system container, the
attempt to create /var/log/wtmp would fail, as /var/log did not exist.

* gnu/services.scm (activation-script): Create /var/log

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
1 files changed, 5 insertions(+), 2 deletions(-)

M gnu/services.scm
M gnu/services.scm => gnu/services.scm +5 -2
@@ 334,9 334,11 @@ ACTIVATION-SCRIPT-TYPE."
  (mlet* %store-monad ((actions (service-activations)))
    (gexp->file "activate"
                (with-imported-modules (source-module-closure
                                        '((gnu build activation)))
                                        '((gnu build activation)
                                          (guix build utils)))
                  #~(begin
                      (use-modules (gnu build activation))
                      (use-modules (gnu build activation)
                                   (guix build utils))

                      ;; Make sure the user accounting database exists.  If it
                      ;; does not exist, 'setutxent' does not create it and


@@ 345,6 347,7 @@ ACTIVATION-SCRIPT-TYPE."

                      ;; Same for 'wtmp', which is populated by mingetty et
                      ;; al.
                      (mkdir-p "/var/log")
                      (close-port (open-file "/var/log/wtmp" "a0"))

                      ;; Set up /run/current-system.  Among other things this