summary refs log tree commit diff
path: root/pkgs/misc/emulators/wine/staging.nix
blob: da4456c0ef9802c39d95b996b2d0d791031e5524 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{ stdenv, callPackage, lib, fetchFromGitHub, wineUnstable, libtxc_dxtn_Name }:

with callPackage ./util.nix {};

let v = (import ./versions.nix).staging;
    inherit (v) version;
    patch = fetchFromGitHub {
      inherit (v) sha256;
      owner = "wine-compholio";
      repo = "wine-staging";
      rev = "v${version}";
    };
    build-inputs = pkgNames: extra:
      (mkBuildInputs wineUnstable.pkgArches pkgNames) ++ extra;
in assert (builtins.parseDrvName wineUnstable.name).version == version;

stdenv.lib.overrideDerivation wineUnstable (self: {
  nativeBuildInputs = build-inputs [ libtxc_dxtn_Name ] self.nativeBuildInputs; 
  buildInputs = build-inputs [ "perl" "utillinux" "autoconf" ] self.buildInputs;

  name = "${self.name}-staging";

  postPatch = self.postPatch or "" + ''
    patchShebangs tools
    cp -r ${patch}/patches .
    chmod +w patches
    cd patches
    patchShebangs gitapply.sh
    ./patchinstall.sh DESTDIR="$TMP/$sourceRoot" --all
    cd ..
  '';
})