[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#30706: Nginx service fails

From: Ludovic Courtès
Subject: bug#30706: Nginx service fails
Date: Mon, 05 Mar 2018 11:09:34 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Andreas Enge <address@hidden> skribis:

> guix system: loading new services: user-homes term-auto nginx...
> shepherd: Evaluating user expression (register-services (primitive-load 
> "/gnu/st?") ?).
> guix system: error: exception caught while executing 'eval' on service 'root':
> find-long-options: unbound variable

The problem we have here is that the agetty service expects
‘find-long-options’ from linux-boot.scm, and it expects it at the top

So what happens above is that we evaluate in PID 1 code like:

  (make <service>
    ;; …
    #:start (let ((tty … (find-long-options …) …))

If you run this on an “old” GuixSD, ‘find-long-options’ is undefined.

Thus the whole (register-services …) expression fails to evaluate, and
we end up with some of the services missing.


  1. ‘guix system reconfigure’ should probably register services one by
     one so that if one of the service expressions is erroneous, we
     don’t bork everything.  See ‘upgrade-shepherd-services’.

  2. IWBN to delay execution of this whole default-tty thing to the
     #:start method.  Ideas, Danny?

In general we should do as little as possible at the top level in the
Shepherd config file.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]