services: mcron: Use match-record.

* gnu/services/mcron.scm (mcron-shepherd-services): Use match-record.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
This commit is contained in:
Bruno Victal 2023-03-13 19:30:49 +00:00 committed by Maxim Cournoyer
parent 6f4fd8f5b8
commit edb398449f
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -143,11 +143,10 @@ (define (shepherd-schedule-action mcron files)
(display line)
(loop)))))))))
(define mcron-shepherd-services
(match-lambda
(($ <mcron-configuration> mcron ()) ;nothing to do!
'())
(($ <mcron-configuration> mcron jobs log? log-format)
(define (mcron-shepherd-services config)
(match-record config <mcron-configuration> (mcron jobs log? log-format)
(if (eq? jobs '())
'() ; nothing to do
(let ((files (job-files mcron jobs)))
(list (shepherd-service
(provision '(mcron))
@ -165,8 +164,8 @@ (define mcron-shepherd-services
#~())
#$@files)
;; Disable auto-compilation of the job files and set a
;; sane value for 'PATH'.
;; Disable auto-compilation of the job files and
;; set a sane value for 'PATH'.
#:environment-variables
(cons* "GUILE_AUTO_COMPILE=0"
"PATH=/run/current-system/profile/bin"
@ -175,7 +174,6 @@ (define mcron-shepherd-services
#:log-file "/var/log/mcron.log"))
(stop #~(make-kill-destructor))
(actions
(list (shepherd-schedule-action mcron files)))))))))