about summary refs log tree commit diff
path: root/pkgs/aszlig/santander/default.nix
diff options
context:
space:
mode:
authoraszlig <aszlig@nix.build>2018-01-31 06:49:08 +0100
committeraszlig <aszlig@nix.build>2018-01-31 06:49:08 +0100
commit948dd76841dccde29e115ba92fd345fc23f0c635 (patch)
treefbf80a963598cdbdee6601e8e04f0498d3a6d480 /pkgs/aszlig/santander/default.nix
parent06c475ee37c82f88b00d97f0d7258c38c9b49824 (diff)
pkgs/santander: Update for Wine 3.0
The wine-no-unixfs.patch doesn't apply anymore, so we need to get a
newer version of the patch now from http://achurch.org/patch-pile/,
which is a bit different in that it adds --disable-unixfs as a flag to
configure. We don't have autoreconfHook in nativeBuildInputs, so that
flag will simply be ignored but unixfs will be disabled regardless
because the flag in config.h.in is ENABLE_UNIXFS and it's not defined by
default. The reason why I still added it to configureFlags is to prevent
enabling it by accident if autoreconfHook should be part of the wine
derivation in upstream <nixpkgs>.

In addition to that I've made disabling getuid a bit more clear and with
a comment about why we need to disable it.

Signed-off-by: aszlig <aszlig@nix.build>
Diffstat (limited to 'pkgs/aszlig/santander/default.nix')
-rw-r--r--pkgs/aszlig/santander/default.nix22
1 files changed, 16 insertions, 6 deletions
diff --git a/pkgs/aszlig/santander/default.nix b/pkgs/aszlig/santander/default.nix
index a62bd39c..e529cf27 100644
--- a/pkgs/aszlig/santander/default.nix
+++ b/pkgs/aszlig/santander/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl, fetchgit, runCommand, p7zip, jq, wineMinimal, pcsclite }:
+{ stdenv, fetchurl, fetchgit, fetchpatch, runCommand, p7zip, jq, wineMinimal
+, pcsclite
+}:
 
 let
   patchedWine = let
@@ -19,12 +21,20 @@ let
         dlls/winscard/winscard.c
     '';
 
-    patches = (drv.patches or []) ++ [ ./winscard.patch ];
+    patches = (drv.patches or []) ++ [
+      ./winscard.patch
+      (fetchpatch {
+        url = "http://achurch.org/patch-pile/wine/3.0/disable-unixfs.diff";
+        sha256 = "1yj3walwalya9g9aajcp4iygh348npp9dmks66r9dvwbd3fa8wcb";
+      })
+    ];
 
-    postPatch = (drv.postPatch or "") + ''
-      sed -i -e '/not owned by you/d' libs/wine/config.c
-      # Modified patch from https://bugs.winehq.org/show_bug.cgi?id=22450
-      patch -p1 < "${./wine-no-unixfs.patch}"
+    configureFlags = (drv.configureFlags or []) ++ [ "--disable-unixfs" ];
+
+    postConfigure = (drv.postConfigure or "") + ''
+      # The wineprefix is within the Nix store, so let's ensure wine doesn't
+      # check the owner of the files:
+      sed -i -e '/HAVE_GETUID/d' include/config.h
     '';
   });