summary refs log tree commit diff
path: root/pkgs/development/quickemu/default.nix
diff options
context:
space:
mode:
authorlinsui <linsui555@gmail.com>2022-09-22 17:16:24 +0800
committerlinsui <linsui555@gmail.com>2022-09-22 17:16:24 +0800
commit584a111fe1e81b44b56df6ab2cbc2fc46d39555c (patch)
tree77a39381ef0342d4c9728dcd1fc4ce33eeecea8f /pkgs/development/quickemu/default.nix
parent7c37d78bc4b21460b0150bdd3ce4e4e1b7839fbc (diff)
downloadnixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.tar
nixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.tar.gz
nixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.tar.bz2
nixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.tar.lz
nixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.tar.xz
nixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.tar.zst
nixpkgs-584a111fe1e81b44b56df6ab2cbc2fc46d39555c.zip
quickemu: 4.0 -> 4.3
Diffstat (limited to 'pkgs/development/quickemu/default.nix')
-rw-r--r--pkgs/development/quickemu/default.nix31
1 files changed, 20 insertions, 11 deletions
diff --git a/pkgs/development/quickemu/default.nix b/pkgs/development/quickemu/default.nix
index c2f360fc0cf..956ccabffb1 100644
--- a/pkgs/development/quickemu/default.nix
+++ b/pkgs/development/quickemu/default.nix
@@ -4,6 +4,7 @@
 , makeWrapper
 , qemu
 , gnugrep
+, gnused
 , lsb-release
 , jq
 , procps
@@ -11,13 +12,16 @@
 , cdrtools
 , usbutils
 , util-linux
+, socat
 , spice-gtk
 , swtpm
+, unzip
 , wget
 , xdg-user-dirs
 , xrandr
 , zsync
 , OVMF
+, OVMFFull
 , quickemu
 , testers
 }:
@@ -25,6 +29,7 @@ let
   runtimePaths = [
     qemu
     gnugrep
+    gnused
     jq
     lsb-release
     procps
@@ -32,6 +37,8 @@ let
     cdrtools
     usbutils
     util-linux
+    unzip
+    socat
     spice-gtk
     swtpm
     wget
@@ -43,31 +50,33 @@ in
 
 stdenv.mkDerivation rec {
   pname = "quickemu";
-  version = "4.0";
+  version = "4.3";
 
   src = fetchFromGitHub {
     owner = "quickemu-project";
     repo = "quickemu";
     rev = version;
-    sha256 = "sha256-CiCQg1UsSAwlEnZEmzU2ynn2RZ+wXPv9FV1b9GVkc00=";
+    hash = "sha256-+ksv1DBNby3bJx2ylnDkqlQfsFIDRS/hZvsJn2+bcz8=";
   };
 
-  patches = [
-    ./input_overrides.patch
-  ];
+  postPatch = ''
+    sed -i \
+      -e '/OVMF_CODE_4M.secboot.fd/s|ovmfs=(|ovmfs=("${OVMFFull.fd}/FV/OVMF_CODE.fd","${OVMFFull.fd}/FV/OVMF_VARS.fd" |' \
+      -e '/OVMF_CODE_4M.fd/s|ovmfs=(|ovmfs=("${OVMF.fd}/FV/OVMF_CODE.fd","${OVMF.fd}/FV/OVMF_VARS.fd" |' \
+      -e '/cp "''${VARS_IN}" "''${VARS_OUT}"/a chmod +w "''${VARS_OUT}"' \
+      -e 's/Icon=.*qemu.svg/Icon=qemu/' \
+      quickemu
+  '';
 
   nativeBuildInputs = [ makeWrapper ];
 
   installPhase = ''
     runHook preInstall
 
-    install -Dm755 -t "$out/bin" quickemu quickget macrecovery
+    install -Dm755 -t "$out/bin" macrecovery quickemu quickget windowskey
 
-    for f in quickget macrecovery quickemu; do
-      wrapProgram $out/bin/$f \
-        --prefix PATH : "${lib.makeBinPath runtimePaths}" \
-        --set ENV_EFI_CODE "${OVMF.fd}/FV/OVMF_CODE.fd" \
-        --set ENV_EFI_VARS "${OVMF.fd}/FV/OVMF_VARS.fd"
+    for f in macrecovery quickget quickemu windowskey; do
+      wrapProgram $out/bin/$f --prefix PATH : "${lib.makeBinPath runtimePaths}"
     done
 
     runHook postInstall