~ruther/guix-local

12699cf858cb4c07641ce63ca2d54e5bd048ca0b — Jean-Pierre De Jesus DIAZ 6 months ago 9a70af5
services: nix: Point Nix to bin/bash.

The nix-service-type will create the nix.conf file pointing to
`bin/sh' file in the bash-minimal package, however this is a symbolic
link to `bin/bash' in that same package, so when the sandbox gets
created there will be a symlink in the Nix sandbox like this:

  drwxr-xr-x  2 nobody nogroup 4096 Sep 18 13:10 .
  drwxr-x--- 10 nobody nixbld  4096 Sep 18 13:10 ..
  lrwxrwxrwx  1 nobody nogroup    4 Jan  1  1970 sh -> bash

Making builds that depend on /bin/sh fail since /bin/bash does not
exist in the sandbox.

* gnu/services/nix.scm (nix-service-etc): Change ‘build-sandbox-paths’ to
point to ‘bin/bash’.

Change-Id: I9138e9b772b8468382cfde6d133f0758837d03ff
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
1 files changed, 1 insertions(+), 1 deletions(-)

M gnu/services/nix.scm
M gnu/services/nix.scm => gnu/services/nix.scm +1 -1
@@ 127,7 127,7 @@ GID."
                    (format #t "sandbox = ~a~%" (if #$sandbox "true" "false"))
                    ;; config.nix captures store file names.
                    (format #t "build-sandbox-paths = ~{~a ~}~%"
                            (append (list (string-append "/bin/sh=" #$bash-minimal "/bin/sh"))
                            (append (list (string-append "/bin/sh=" #$bash-minimal "/bin/bash"))
                                    internal-sandbox-paths
                                    '#$build-sandbox-items))
                    (for-each (cut display <>) '#$extra-config)))))))))))