~ruther/guix-local

112440a7b832a3841bf8e8139975b43b78f8a6ab — Ludovic Courtès 11 years ago a68d976
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.
2 files changed, 10 insertions(+), 2 deletions(-)

M gnu/system/linux-initrd.scm
M gnu/system/vm.scm
M gnu/system/linux-initrd.scm => gnu/system/linux-initrd.scm +5 -1
@@ 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"

M gnu/system/vm.scm => gnu/system/vm.scm +5 -1
@@ 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