nixpkgs/pkgs/misc/emulators/wine/default.nix

67 lines
2.1 KiB
Nix
Raw Normal View History

## 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"),
2016-05-29 09:43:47 +01:00
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,
2015-12-24 01:58:57 +00:00
pulseaudioSupport ? false,
2017-05-24 00:07:23 +01:00
udevSupport ? false,
2016-05-29 09:43:47 +01:00
xineramaSupport ? false,
2018-04-23 15:02:12 +01:00
xmlSupport ? false,
vulkanSupport ? false,
}:
let wine-build = build: release:
lib.getAttr build (callPackage ./packages.nix {
wineRelease = release;
2016-05-29 09:43:47 +01:00
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
2018-04-23 15:02:12 +01:00
openglSupport gstreamerSupport udevSupport vulkanSupport;
2016-05-29 09:43:47 +01:00
};
});
in if wineRelease == "staging" then
callPackage ./staging.nix {
inherit libtxc_dxtn_Name;
wineUnstable = wine-build wineBuild "unstable";
}
else
wine-build wineBuild wineRelease