monguix/services/pam-mkhomedir.scm

38 lines
1.2 KiB
Scheme
Raw Permalink Normal View History

2022-07-31 18:07:53 +02:00
(define-module (services pam-mkhomedir)
#:use-module (gnu)
#:use-module (gnu packages linux)
#:use-module (gnu services shepherd)
#:use-module (guix modules)
#:use-module (guix packages)
#:use-module (guix records)
#:use-module (srfi srfi-1))
(define-record-type* <pam-mkhomedir-configuration>
pam-mkhomedir-configuration make-pam-mkhomedir-configuration
pam-mkhomedir-configuration?
(arguments pam-mkhomedir-configuration-arguments (default '())))
(define (pam-mkhomedir-pam-service config)
2023-05-20 21:18:38 +02:00
(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)))))))))
2022-07-31 18:07:53 +02:00
(define-public pam-mkhomedir-service-type
(service-type
(name 'pam-mkhomedir)
(extensions
(list (service-extension pam-root-service-type pam-mkhomedir-pam-service)))
(default-value (pam-mkhomedir-configuration))
(description "Activate PAM mkhomedir module.")))