about summary refs log tree commit diff
path: root/pkgs/applications/virtualization/qemu/canokey-qemu.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/virtualization/qemu/canokey-qemu.nix')
-rw-r--r--pkgs/applications/virtualization/qemu/canokey-qemu.nix24
1 files changed, 21 insertions, 3 deletions
diff --git a/pkgs/applications/virtualization/qemu/canokey-qemu.nix b/pkgs/applications/virtualization/qemu/canokey-qemu.nix
index 9536b91ba5403..b94ba0c1adbe4 100644
--- a/pkgs/applications/virtualization/qemu/canokey-qemu.nix
+++ b/pkgs/applications/virtualization/qemu/canokey-qemu.nix
@@ -3,29 +3,47 @@
   stdenv,
   fetchFromGitHub,
   cmake,
+  unstableGitUpdater,
 }:
 stdenv.mkDerivation rec {
   pname = "canokey-qemu";
-  version = "unstable-2022-06-23";
-  rev = "b70af31229f1858089c3366f71b8d771de4a1e84";
+  version = "0-unstable-2023-06-06";
+  rev = "151568c34f5e92b086b7a3a62a11c43dd39f628b";
 
   src = fetchFromGitHub {
     owner = "canokeys";
     repo = "canokey-qemu";
     inherit rev;
     fetchSubmodules = true;
-    hash = "sha256-VJb59K/skx+DhoJs5qGUu070hAjQZC2Z6hAMXuX0bMw=";
+    hash = "sha256-4V/2UOgGWgL+tFJO/k90bCDjWSVyIpxw3nYi9NU/OxA=";
   };
 
+  patches = [
+    ./canokey-qemu-memcpy.patch
+  ];
+
   postPatch = ''
     substituteInPlace canokey-core/CMakeLists.txt \
       --replace "COMMAND git describe --always --tags --long --abbrev=8 --dirty >>" "COMMAND echo '$rev' >>"
   '';
 
+  preConfigure = ''
+    cmakeFlagsArray+=(
+      -DCMAKE_C_FLAGS=${lib.escapeShellArg ([
+        "-Wno-error=unused-but-set-parameter"
+        "-Wno-error=unused-but-set-variable"
+      ] ++ lib.optionals stdenv.cc.isClang [
+        "-Wno-error=documentation"
+      ])}
+    )
+  '';
+
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [ cmake ];
 
+  passthru.updateScript = unstableGitUpdater { };
+
   meta = with lib; {
     homepage = "https://github.com/canokeys/canokey-qemu";
     description = "CanoKey QEMU Virt Card";