From 6d49355d8b69869ba46c7ca6a98eafc5dc6c4c64 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 12 Sep 2014 17:41:06 +0200 Subject: activation: Honor $GUIX_NEW_SYSTEM for use by 'guix system reconfigure'. * gnu/build/activation.scm (activate-current-system): Honor $GUIX_NEW_SYSTEM by default. * guix/scripts/system.scm (switch-to-system): Set $GUIX_NEW_SYSTEM before loading SCRIPT. --- gnu/build/activation.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 04dd19f3e1..16805b9bc6 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -236,8 +236,13 @@ copy SOURCE to TARGET." "Return the '--system' argument passed on the kernel command line." (find-long-option "--system" (linux-command-line))) -(define* (activate-current-system #:optional (system (boot-time-system))) +(define* (activate-current-system + #:optional (system (or (getenv "GUIX_NEW_SYSTEM") + (boot-time-system)))) "Atomically make SYSTEM the current system." + ;; The 'GUIX_NEW_SYSTEM' environment variable is used as a way for 'guix + ;; system reconfigure' to pass the file name of the new system. + (format #t "making '~a' the current system...~%" system) ;; Atomically make SYSTEM current. -- cgit v1.2.3