## Configuration: # Control you default wine config in nixpkgs-config: # wine = { # release = "stable"; # "stable", "unstable", "staging" # build = "wineWow"; # "wine32", "wine64", "wineWow" # }; # Make additional configurations on demand: # wine.override { wineBuild = "wine32"; wineRelease = "staging"; }; { lib, pkgs, system, callPackage, wineRelease ? "stable", wineBuild ? (if system == "x86_64-linux" then "wineWow" else "wine32"), libtxc_dxtn_Name ? "libtxc_dxtn_s2tc", pngSupport ? false, jpegSupport ? false, tiffSupport ? false, gettextSupport ? false, fontconfigSupport ? false, alsaSupport ? false, gtkSupport ? false, openglSupport ? false, tlsSupport ? false, gstreamerSupport ? false, cupsSupport ? false, colorManagementSupport ? false, dbusSupport ? false, mpg123Support ? false, openalSupport ? false, openclSupport ? false, cairoSupport ? false, odbcSupport ? false, netapiSupport ? false, cursesSupport ? false, vaSupport ? false, pcapSupport ? false, v4lSupport ? false, saneSupport ? false, gsmSupport ? false, gphoto2Support ? false, ldapSupport ? false, pulseaudioSupport ? false, udevSupport ? false, xineramaSupport ? false, xmlSupport ? false }: let wine-build = build: release: lib.getAttr build (callPackage ./packages.nix { wineRelease = release; supportFlags = { inherit pngSupport jpegSupport cupsSupport colorManagementSupport gettextSupport dbusSupport mpg123Support openalSupport cairoSupport tiffSupport odbcSupport netapiSupport cursesSupport vaSupport pcapSupport v4lSupport saneSupport gsmSupport gphoto2Support ldapSupport fontconfigSupport alsaSupport pulseaudioSupport xineramaSupport gtkSupport openclSupport xmlSupport tlsSupport openglSupport gstreamerSupport udevSupport; }; }); in if wineRelease == "staging" then let wineUnstable = wine-build wineBuild "unstable"; in # wine staging is not yet at 3.0, using unstable # FIXME update winestaging sources wineUnstable # callPackage ./staging.nix { # inherit libtxc_dxtn_Name wineUnstable; # } else wine-build wineBuild wineRelease