Instantiate nscd in each system container.

* gnu/system/linux-container.scm (%nscd-container-caches): New variable.
(containerized-operating-system): Instantiate nscd-service with smaller caches
and add it to the generated operating-system, replacing any nscd-service
specified by the caller.
* gnu/system/file-systems.scm: (%network-file-mappings): Remove "/var/run/nscd".

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
This commit is contained in:
Jason Conroy 2020-09-27 13:16:39 -04:00 committed by Mathieu Othacehe
parent da6aec32cf
commit 5627bfe45c
No known key found for this signature in database
GPG key ID: 8354763531769CA6
2 changed files with 43 additions and 24 deletions

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Google LLC
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
@ -590,11 +591,8 @@ a bind mount."
;; XXX: On some GNU/Linux systems, /etc/resolv.conf is a
;; symlink to a file in a tmpfs which, for an unknown reason,
;; cannot be bind mounted read-only within the container.
;; The same goes with /var/run/nscd, as discussed in
;; <https://bugs.gnu.org/37967>.
(writable? (or (string=? file "/etc/resolv.conf")
(string=? file "/var/run/nscd")))))
(cons "/var/run/nscd" %network-configuration-files)))
(writable? (string=? file "/etc/resolv.conf"))))
%network-configuration-files))
(define (file-system-type-predicate type)
"Return a predicate that, when passed a file system, returns #t if that file