aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-05-23 22:35:08 +0200
committerLudovic Courtès <ludo@gnu.org>2014-05-23 22:37:24 +0200
commit112440a7b832a3841bf8e8139975b43b78f8a6ab (patch)
treedf6b209d99dd05eb2c6435c53dc48349ed0320b0
parenta68d976b666a5097585cf221f4f8d793f90f3464 (diff)
downloadguix-112440a7b832a3841bf8e8139975b43b78f8a6ab.tar
guix-112440a7b832a3841bf8e8139975b43b78f8a6ab.tar.gz
vm: Disable QEMU networking in the disk image initrd.
* gnu/system/linux-initrd.scm (qemu-initrd): Add #:qemu-networking? parameter and honor it. * gnu/system/vm.scm (system-disk-image): Pass #:qemu-networking #f.
-rw-r--r--gnu/system/linux-initrd.scm6
-rw-r--r--gnu/system/vm.scm6
2 files changed, 10 insertions, 2 deletions
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index 03199e0c39..b80ff10f1e 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -204,12 +204,16 @@ initrd code."
(define* (qemu-initrd file-systems
#:key
guile-modules-in-chroot?
+ (qemu-networking? #t)
volatile-root?)
"Return a monadic derivation that builds an initrd for use in a QEMU guest
where the store is shared with the host. FILE-SYSTEMS is a list of
file-systems to be mounted by the initrd, possibly in addition to the root
file system specified on the kernel command line via '--root'.
+When QEMU-NETWORKING? is true, set up networking with the standard QEMU
+parameters.
+
When VOLATILE-ROOT? is true, the root file system is writable but any changes
to it are lost.
@@ -267,7 +271,7 @@ exception and backtrace!)."
(boot-system #:mounts '#$(map file-system->spec file-systems)
#:linux-modules '#$linux-modules
- #:qemu-guest-networking? #t
+ #:qemu-guest-networking? #$qemu-networking?
#:guile-modules-in-chroot? '#$guile-modules-in-chroot?
#:volatile-root? '#$volatile-root?))
#:name "qemu-initrd"
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index 18635fd7e9..a15c4c358b 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -271,7 +271,11 @@ to USB sticks meant to be read-only."
(operating-system-file-systems os)))
(let ((os (operating-system (inherit os)
- (initrd (cut qemu-initrd <> #:volatile-root? volatile?))
+ ;; Since this is meant to be used on real hardware, don't set up
+ ;; QEMU networking.
+ (initrd (cut qemu-initrd <>
+ #:volatile-root? volatile?
+ #:qemu-networking? #f))
;; Force our own root file system.
(file-systems (cons (file-system