summary refs log tree commit diff
diff options
context:
space:
mode:
authorvolth <volth@volth.com>2018-07-18 14:28:48 +0000
committervolth <volth@volth.com>2018-08-20 22:02:02 +0000
commit341250fa10e07f50a2700fe18465bb91900c851d (patch)
tree97be9d21102b087e2f06e1d459016e8499bc4b82
parent27ecfd34e8b676438ae03be601bfca46c4f61b7a (diff)
downloadnixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.tar
nixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.tar.gz
nixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.tar.bz2
nixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.tar.lz
nixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.tar.xz
nixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.tar.zst
nixpkgs-341250fa10e07f50a2700fe18465bb91900c851d.zip
qemu: 2.12.1 -> 3.0.0
-rw-r--r--nixos/lib/qemu-flags.nix8
-rw-r--r--nixos/tests/ec2.nix4
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix7
3 files changed, 12 insertions, 7 deletions
diff --git a/nixos/lib/qemu-flags.nix b/nixos/lib/qemu-flags.nix
index 6f61c64a832..f115ca5ac00 100644
--- a/nixos/lib/qemu-flags.nix
+++ b/nixos/lib/qemu-flags.nix
@@ -1,11 +1,15 @@
 # QEMU flags shared between various Nix expressions.
 { pkgs }:
 
+let
+  zeroPad = n: if n < 10 then "0${toString n}" else toString n;
+in
+
 {
 
   qemuNICFlags = nic: net: machine:
-    [ "-net nic,vlan=${toString nic},macaddr=52:54:00:12:${toString net}:${toString machine},model=virtio"
-      "-net vde,vlan=${toString nic},sock=$QEMU_VDE_SOCKET_${toString net}"
+    [ "-device virtio-net-pci,netdev=vlan${toString nic},mac=52:54:00:12:${zeroPad net}:${zeroPad machine}"
+      "-netdev vde,id=vlan${toString nic},sock=$QEMU_VDE_SOCKET_${toString net}"
     ];
 
   qemuSerialDevice = if pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64 then "ttyS0"
diff --git a/nixos/tests/ec2.nix b/nixos/tests/ec2.nix
index f585fa2ec23..8271747ccc6 100644
--- a/nixos/tests/ec2.nix
+++ b/nixos/tests/ec2.nix
@@ -68,7 +68,9 @@ let
           # again when it deletes link-local addresses.) Ideally we'd
           # turn off the DHCP server, but qemu does not have an option
           # to do that.
-          my $startCommand = "qemu-kvm -m 768 -net nic,vlan=0,model=virtio -net 'user,vlan=0,net=169.0.0.0/8,guestfwd=tcp:169.254.169.254:80-cmd:${pkgs.micro-httpd}/bin/micro_httpd ${metaData}'";
+          my $startCommand = "qemu-kvm -m 768";
+          $startCommand .= " -device virtio-net-pci,netdev=vlan0";
+          $startCommand .= " -netdev 'user,id=vlan0,net=169.0.0.0/8,guestfwd=tcp:169.254.169.254:80-cmd:${pkgs.micro-httpd}/bin/micro_httpd ${metaData}'";
           $startCommand .= " -drive file=$diskImage,if=virtio,werror=report";
           $startCommand .= " \$QEMU_OPTS";
 
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 1ff61129b0f..f9058ef89b6 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -22,8 +22,6 @@
 
 with stdenv.lib;
 let
-  version = "2.12.1";
-  sha256 = "1jp5y56682bgpfjapagxjfrjdvqkal34pj9qzn6kj8fqaad80l21";
   audio = optionalString (hasSuffix "linux" stdenv.system) "alsa,"
     + optionalString pulseSupport "pa,"
     + optionalString sdlSupport "sdl,";
@@ -36,6 +34,7 @@ let
 in
 
 stdenv.mkDerivation rec {
+  version = "3.0.0";
   name = "qemu-"
     + stdenv.lib.optionalString xenSupport "xen-"
     + stdenv.lib.optionalString hostCpuOnly "host-cpu-only-"
@@ -43,8 +42,8 @@ stdenv.mkDerivation rec {
     + version;
 
   src = fetchurl {
-    url = "http://wiki.qemu.org/download/qemu-${version}.tar.bz2";
-    inherit sha256;
+    url = "https://wiki.qemu.org/download/qemu-${version}.tar.bz2";
+    sha256 = "1s7bm2xhcxbc9is0rg8xzwijx7azv67skq7mjc58spsgc2nn4glk";
   };
 
   buildInputs =