diff --git a/services/pam-mkhomedir.scm b/services/pam-mkhomedir.scm index 2b458d2..3e11d3f 100644 --- a/services/pam-mkhomedir.scm +++ b/services/pam-mkhomedir.scm @@ -13,16 +13,20 @@ (arguments pam-mkhomedir-configuration-arguments (default '()))) (define (pam-mkhomedir-pam-service config) - (let ((module #~(string-append #$linux-pam "/lib/security/pam_mkhomedir.so"))) - (list (lambda (pam) - (pam-service - (inherit pam) - (session - (cons* (pam-entry - (control "optional") - (module module) - (arguments (pam-mkhomedir-configuration-arguments config))) - (pam-service-session pam)))))))) + (list + (pam-extension + (transformer + (lambda (pam) + (define pam-mkhomedir-module + #~(string-append #$linux-pam "/lib/security/pam_mkhomedir.so")) + (pam-service + (inherit pam) + (session + (cons* (pam-entry + (control "optional") + (module pam-mkhomedir-module) + (arguments (pam-mkhomedir-configuration-arguments config))) + (pam-service-session pam))))))))) (define-public pam-mkhomedir-service-type (service-type