From 5d4f39e64ab446f11d22721464c2dc418c0d9b98 Mon Sep 17 00:00:00 2001 From: Andrew Tropin Date: Tue, 31 Aug 2021 15:24:25 +0300 Subject: [PATCH] home-services: run-on-change: Handle first generation case. * gnu/home-services.scm (compute-on-change-gexp): Handle first generation case. Signed-off-by: Oleg Pykhalov --- gnu/home-services.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gnu/home-services.scm b/gnu/home-services.scm index 2a773496f0..9f1e986616 100644 --- a/gnu/home-services.scm +++ b/gnu/home-services.scm @@ -439,7 +439,10 @@ with one gexp, but many times, and all gexps must be idempotent."))) (define expressions-to-eval (map (lambda (x) - (let* ((file1 (string-append (getenv "GUIX_OLD_HOME") "/" (car x))) + (let* ((file1 (string-append + (or (getenv "GUIX_OLD_HOME") + "/gnu/store/non-existing-generation") + "/" (car x))) (file2 (string-append (getenv "GUIX_NEW_HOME") "/" (car x))) (_ (format #t "Comparing ~a and\n~10t~a..." file1 file2)) (any-changes? (something-changed? file1 file2)) @@ -454,7 +457,8 @@ with one gexp, but many times, and all gexps must be idempotent."))) (for-each primitive-eval expressions-to-eval) (display "On-change gexps evaluation finished.\n\n")) (display "\ -On-change gexps won't evaluated, disabled by service configuration.\n")))) +On-change gexps won't be evaluated, disabled by service +configuration.\n")))) (define home-run-on-change-service-type (service-type (name 'home-run-on-change)