summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-09-17 23:28:59 +0200
committerLudovic Courtès <ludo@gnu.org>2015-10-10 22:46:15 +0200
commit23afe939a2282369900e0e7a33405cc613d7a405 (patch)
tree9a8de9ac10180ddac013651d15066a1819285c9a
parente1c153e0ab116a174ea0ed88b76f222927048c5f (diff)
system: pam: Use 'computed-file' instead of 'gexp->derivation'.
* gnu/system/linux.scm (pam-service->configuration): Use 'computed-file' instead of 'gexp->derivation'. (pam-services->directory): Likewise. * gnu/system.scm (etc-directory): Adjust accordingly.
-rw-r--r--gnu/system.scm2
-rw-r--r--gnu/system/linux.scm15
2 files changed, 5 insertions, 12 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index 92a3ca3e6e..cb0ee90e09 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -447,7 +447,7 @@ on SHELLS. /etc/shells is used by xterm, polkit, and other programs."
(sudoers-file (plain-file "sudoers" "")))
"Return a derivation that builds the static part of the /etc directory."
(mlet* %store-monad
- ((pam.d (pam-services->directory pam-services))
+ ((pam.d -> (pam-services->directory pam-services))
(login.defs (text-file "login.defs" "# Empty for now.\n"))
(shells (shells-file shells))
(emacs (emacs-site-directory))
diff --git a/gnu/system/linux.scm b/gnu/system/linux.scm
index ac5005ebd1..10e72e905a 100644
--- a/gnu/system/linux.scm
+++ b/gnu/system/linux.scm
@@ -17,10 +17,8 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu system linux)
- #:use-module (guix store)
#:use-module (guix records)
#:use-module (guix derivations)
- #:use-module (guix monads)
#:use-module (guix gexp)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
@@ -86,18 +84,13 @@ dumped in /etc/pam.d/NAME, where NAME is the name of SERVICE."
(map (cut entry->gexp "session" <>) session))
#t))))
- (gexp->derivation name builder))))
+ (computed-file name builder))))
(define (pam-services->directory services)
"Return the derivation to build the configuration directory to be used as
/etc/pam.d for SERVICES."
- (mlet %store-monad
- ((names -> (map pam-service-name services))
- (files (sequence %store-monad
- (map pam-service->configuration
- ;; XXX: Eventually, SERVICES may be a list of
- ;; monadic values instead of plain values.
- services))))
+ (let ((names (map pam-service-name services))
+ (files (map pam-service->configuration services)))
(define builder
#~(begin
(use-modules (ice-9 match)
@@ -114,7 +107,7 @@ dumped in /etc/pam.d/NAME, where NAME is the name of SERVICE."
;; instead. See <http://bugs.gnu.org/20037>.
(delete-duplicates '#$(zip names files)))))
- (gexp->derivation "pam.d" builder)))
+ (computed-file "pam.d" builder)))
(define %pam-other-services
;; The "other" PAM configuration, which denies everything (see