Tip: to define an autofs service: ;; a stripped down version of autofs: (define-public mroh-autofs (package (inherit autofs) (name "mroh-autofs") (arguments `(,@(substitute-keyword-arguments (package-arguments autofs) ((#:configure-flags cf) `(list "--enable-ignore-busy" "--enable-sloppy-mount" "--with-libtirpc"))))) (inputs `(("e2fsprogs" ,e2fsprogs) ("libtirpc" ,libtirpc) ("nfs-utils" ,nfs-utils) ("util-linux" ,util-linux))))) (define (automount-shepherd-service config) (list (shepherd-service (provision '(automount)) (documentation "Run the automount server.") (requirement '(networking)) (start #~(make-forkexec-constructor (list #$(file-append mroh-autofs "/sbin/automount") "-f") #:log-file "/var/log/automount.log")) (stop #~(make-kill-destructor))))) (define automount-service-type (service-type (name 'automount) (description "Run the automount server.") (extensions (list (service-extension shepherd-root-service-type automount-shepherd-service) (service-extension rottlog-service-type (const (list (log-rotation (files (list "/var/log/automount.log")))))) (service-extension etc-service-type (lambda (config) `(("autofs.conf" ,(local-file "config/autofs.conf")) ("auto.master" ,(local-file "config/auto.master"))))))) (default-value '())))