From c67edd454c4d9846f2a7aab291b722f35f65d0fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 27 Feb 2012 23:25:54 +0000 Subject: [PATCH] QEMU-KVM 1.0 (tentative). svn path=/nixpkgs/trunk/; revision=32637 --- pkgs/os-specific/linux/qemu-kvm/1.0.nix | 51 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 52 insertions(+) create mode 100644 pkgs/os-specific/linux/qemu-kvm/1.0.nix diff --git a/pkgs/os-specific/linux/qemu-kvm/1.0.nix b/pkgs/os-specific/linux/qemu-kvm/1.0.nix new file mode 100644 index 00000000000..162fcaee55a --- /dev/null +++ b/pkgs/os-specific/linux/qemu-kvm/1.0.nix @@ -0,0 +1,51 @@ +{ stdenv, fetchurl, attr, zlib, SDL, alsaLib, pkgconfig, pciutils, libuuid, vde2 +, libjpeg, libpng, ncurses, python, glib }: + +assert stdenv.isLinux; + +let version = "1.0"; in +stdenv.mkDerivation rec { + name = "qemu-kvm-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/kvm/qemu-kvm/${version}/${name}.tar.gz"; + sha256 = "0vhigv9r9yrhph4wc4mhg99a683iwf121kjigqzg92x2l3ayl4dp"; + }; + + patches = [ ./smb-tmpdir.patch ./qemu-img-fix-corrupt-vdi.patch ]; + postPatch = + '' for i in $(find kvm -type f) + do + sed -i "$i" \ + -e 's|/bin/bash|/bin/sh|g ; + s|/usr/bin/python|${python}/bin/python|g ; + s|/bin/rm|rm|g' + done + ''; + + configureFlags = + [ "--audio-drv-list=alsa" + "--smbd=smbd" # use `smbd' from $PATH + ]; + + enableParallelBuilding = true; + + buildInputs = + [ attr zlib SDL alsaLib pkgconfig pciutils libuuid vde2 libjpeg libpng + ncurses python glib + ]; + + postInstall = + '' + # Libvirt expects us to be called `qemu-kvm'. Otherwise it will + # set the domain type to "qemu" rather than "kvm", which can + # cause architecture selection to misbehave. + ln -sv $(cd $out/bin && echo qemu-system-*) $out/bin/qemu-kvm + ''; + + meta = { + homepage = http://www.linux-kvm.org/; + description = "A full virtualization solution for Linux on x86 hardware containing virtualization extensions"; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index af83e765f74..8e5d09c55ed 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6043,6 +6043,7 @@ let pwdutils = callPackage ../os-specific/linux/pwdutils { }; qemu_kvm = callPackage ../os-specific/linux/qemu-kvm { }; + qemu_kvm_1_0 = callPackage ../os-specific/linux/qemu-kvm/1.0.nix { }; firmwareLinuxNonfree = callPackage ../os-specific/linux/firmware/firmware-linux-nonfree { };