home-services: Demonadify 'on-first-login' handling.

* gnu/home/services.scm (compute-on-first-login-script): Use
'computed-file' instead of' gexp->script'.
(on-first-login-script-entry): Expect a regular value rather than a
monadic value and remove 'mlet'.
This commit is contained in:
Ludovic Courtès 2021-11-14 23:06:49 +01:00
parent a8b5b40f62
commit 4dcec60fa6
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 4 additions and 4 deletions

View File

@ -275,7 +275,7 @@ directory containing FILES."
will be put in @file{~/.guix-home/files}.")))
(define (compute-on-first-login-script _ gexps)
(gexp->script
(computed-file
"on-first-login"
#~(let* ((xdg-runtime-dir (or (getenv "XDG_RUNTIME_DIR")
(format #f "/run/user/~a" (getuid))))
@ -294,11 +294,11 @@ won't execute anything. You can check if xdg runtime directory exists,
XDG_RUNTIME_DIR variable is set to apropriate value and manually execute the
script by running '$HOME/.guix-home/on-first-login'")))))
(define (on-first-login-script-entry m-on-first-login)
(define (on-first-login-script-entry on-first-login)
"Return, as a monadic value, an entry for the on-first-login script
in the home environment directory."
(mlet %store-monad ((on-first-login m-on-first-login))
(return `(("on-first-login" ,on-first-login)))))
(with-monad %store-monad
(return `(("on-first-login" ,on-first-login)))))
(define home-run-on-first-login-service-type
(service-type (name 'home-run-on-first-login)