diff --git a/pkgs/applications/emulators/wine/base.nix b/pkgs/applications/emulators/wine/base.nix index 28efcf5875bf..f01843e7c4e8 100644 --- a/pkgs/applications/emulators/wine/base.nix +++ b/pkgs/applications/emulators/wine/base.nix @@ -1,7 +1,7 @@ { stdenv, lib, pkgArches, callPackage, makeSetupHook, pname, version, src, mingwGccs, monos, geckos, platforms, bison, flex, fontforge, makeWrapper, pkg-config, - autoconf, hexdump, perl, nixosTests, + nixosTests, supportFlags, patches, moltenvk, @@ -54,11 +54,6 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) { fontforge makeWrapper pkg-config - - # Required by staging - autoconf - hexdump - perl ] ++ lib.optionals supportFlags.mingwSupport (mingwGccs ++ lib.optional stdenv.isDarwin setupHookDarwin); diff --git a/pkgs/applications/emulators/wine/sources.nix b/pkgs/applications/emulators/wine/sources.nix index 19c230dc8572..43863f73e521 100644 --- a/pkgs/applications/emulators/wine/sources.nix +++ b/pkgs/applications/emulators/wine/sources.nix @@ -73,9 +73,9 @@ in rec { unstable = fetchurl rec { # NOTE: Don't forget to change the hash for staging as well. - version = "8.1"; + version = "8.3"; url = "https://dl.winehq.org/wine/source/8.x/wine-${version}.tar.xz"; - hash = "sha256-QSDuaz8pTZeq8scwNM8cLL8ToZXJTFx0pkaoH5JBJZg="; + hash = "sha256-QQJpAAKSw7+t0lYf3eBtm8sryVi0mwPpY/FBd6J2MfA="; inherit (stable) gecko32 gecko64 patches; mono = fetchurl rec { @@ -105,7 +105,7 @@ in rec { staging = fetchFromGitHub rec { # https://github.com/wine-staging/wine-staging/releases inherit (unstable) version; - hash = "sha256-5AzXXaRGyvfYxd3yXtAlZREv1wp6UqWdDRdnwmKVaUg="; + hash = "sha256-b49WFyiEbkJFUp1n9rz+A1c6iseSfV+5DrpA6AwKa+4="; owner = "wine-staging"; repo = "wine-staging"; rev = "v${version}"; @@ -113,7 +113,7 @@ in rec { disabledPatchsets = [ ]; }; - wayland = fetchFromGitLab rec { + wayland = fetchFromGitLab { # https://gitlab.collabora.com/alf/wine/-/tree/wayland version = "8.0"; hash = "sha256-whRnm21UyKZ4AQufNmctzivISVobnCeidmpYz65vlyk="; diff --git a/pkgs/applications/emulators/wine/staging.nix b/pkgs/applications/emulators/wine/staging.nix index c6bdb4012457..b36d4862a7f0 100644 --- a/pkgs/applications/emulators/wine/staging.nix +++ b/pkgs/applications/emulators/wine/staging.nix @@ -1,4 +1,4 @@ -{ lib, callPackage, wineUnstable }: +{ lib, callPackage, autoconf, hexdump, perl, python3, wineUnstable }: with callPackage ./util.nix {}; @@ -9,17 +9,16 @@ in assert lib.getVersion wineUnstable == patch.version; (lib.overrideDerivation wineUnstable (self: { buildInputs = build-inputs [ "perl" "util-linux" "autoconf" "gitMinimal" ] self.buildInputs; + nativeBuildInputs = [ autoconf hexdump perl python3 ] ++ self.nativeBuildInputs; name = "${self.name}-staging"; prePatch = self.prePatch or "" + '' patchShebangs tools - cp -r ${patch}/patches . + cp -r ${patch}/patches ${patch}/staging . chmod +w patches - cd patches - patchShebangs gitapply.sh - ./patchinstall.sh DESTDIR="$PWD/.." --all ${lib.concatMapStringsSep " " (ps: "-W ${ps}") patch.disabledPatchsets} - cd .. + patchShebangs ./patches/gitapply.sh + python3 ./staging/patchinstall.py DESTDIR="$PWD" --all ${lib.concatMapStringsSep " " (ps: "-W ${ps}") patch.disabledPatchsets} ''; })) // { meta = wineUnstable.meta // {