diff options
author | Marius Bakke <mbakke@fastmail.com> | 2020-03-30 12:17:33 +0200 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2020-03-30 12:17:33 +0200 |
commit | ae0badf5bb791428423a98d4e4e2b8d297a5d4be (patch) | |
tree | 4282d243db3e90839a5f7d3b5878674ccd0e2e14 /gnu/system/vm.scm | |
parent | ee401ed9249fbe284ef1b9b437d39207ca88131b (diff) | |
parent | 927f3655662b41f25225ea03baa3ded687aa7cbb (diff) | |
download | guix-ae0badf5bb791428423a98d4e4e2b8d297a5d4be.tar.gz |
Merge branch 'master' into core-updates
Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/guile.scm gnu/packages/linux.scm gnu/packages/package-management.scm gnu/packages/pulseaudio.scm gnu/packages/web.scm
Diffstat (limited to 'gnu/system/vm.scm')
-rw-r--r-- | gnu/system/vm.scm | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index d1c131ecb4..c6ec25a895 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -186,12 +186,15 @@ made available under the /xchg CIFS share." ;; the initrd. See example at ;; <https://lists.gnu.org/archive/html/guix-devel/2017-10/msg00233.html>. (program-file "linux-vm-loader" - ;; When USER-BUILDER succeeds, reboot (indicating a - ;; success), otherwise die, which causes a kernel panic - ;; ("Attempted to kill init!"). - #~(if (zero? (system* #$user-builder)) - (reboot) - (exit 1)))) + ;; Communicate USER-BUILDER's exit status via /xchg so that + ;; the host can distinguish between success, failure, and + ;; kernel panic. + #~(let ((status (system* #$user-builder))) + (call-with-output-file "/xchg/.exit-status" + (lambda (port) + (write status port))) + (sync) + (reboot)))) (let ((initrd (or initrd (base-initrd file-systems |