1 { stdenv_32bit, lib, pkgs, pkgsi686Linux, pkgsCross, callPackage, substituteAll, moltenvk,
2 wineRelease ? "stable",
7 src = lib.getAttr wineRelease (callPackage ./sources.nix {});
9 wine32 = pkgsi686Linux.callPackage ./base.nix {
11 inherit src version supportFlags patches moltenvk wineRelease;
12 pkgArches = [ pkgsi686Linux ];
14 mingwGccs = with pkgsCross; [ mingw32.buildPackages.gcc ];
16 platforms = [ "i686-linux" "x86_64-linux" ];
18 wine64 = callPackage ./base.nix {
20 inherit src version supportFlags patches moltenvk wineRelease;
22 mingwGccs = with pkgsCross; [ mingwW64.buildPackages.gcc ];
25 configureFlags = [ "--enable-win64" ];
26 platforms = [ "x86_64-linux" "x86_64-darwin" ];
27 mainProgram = "wine64";
29 wineWow = callPackage ./base.nix {
31 inherit src version supportFlags patches moltenvk wineRelease;
32 stdenv = stdenv_32bit;
33 pkgArches = [ pkgs pkgsi686Linux ];
34 geckos = [ gecko32 gecko64 ];
35 mingwGccs = with pkgsCross; [ mingw32.buildPackages.gcc mingwW64.buildPackages.gcc ];
37 buildScript = substituteAll {
38 src = ./builder-wow.sh;
39 # pkgconfig has trouble picking the right architecture
40 pkgconfig64remove = lib.makeSearchPathOutput "dev" "lib/pkgconfig" [ pkgs.glib pkgs.gst_all_1.gstreamer ];
42 platforms = [ "x86_64-linux" ];
43 mainProgram = "wine64";
45 wineWow64 = callPackage ./base.nix {
47 inherit src version patches moltenvk wineRelease;
48 supportFlags = supportFlags // { mingwSupport = true; }; # Required because we request "--enable-archs=x86_64"
50 mingwGccs = with pkgsCross; [ mingw32.buildPackages.gcc mingwW64.buildPackages.gcc ];
53 configureFlags = [ "--enable-archs=x86_64,i386" ];
54 platforms = [ "x86_64-linux" "x86_64-darwin" ];