Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 73 lines 2.1 kB view raw
1{ 2 lib, 3 stdenv, 4 config, 5 callPackage, 6 wineBuild, 7}: 8 9rec { 10 fonts = callPackage ../applications/emulators/wine/fonts.nix { }; 11 minimal = callPackage ../applications/emulators/wine { 12 wineRelease = config.wine.release or "stable"; 13 inherit wineBuild; 14 }; 15 16 base = minimal.override { 17 gettextSupport = true; 18 fontconfigSupport = stdenv.hostPlatform.isLinux; 19 alsaSupport = stdenv.hostPlatform.isLinux; 20 openglSupport = true; 21 vulkanSupport = true; 22 tlsSupport = true; 23 cupsSupport = true; 24 dbusSupport = stdenv.hostPlatform.isLinux; 25 cairoSupport = stdenv.hostPlatform.isLinux; 26 cursesSupport = true; 27 saneSupport = stdenv.hostPlatform.isLinux; 28 pulseaudioSupport = config.pulseaudio or stdenv.hostPlatform.isLinux; 29 udevSupport = stdenv.hostPlatform.isLinux; 30 xineramaSupport = stdenv.hostPlatform.isLinux; 31 sdlSupport = true; 32 mingwSupport = true; 33 usbSupport = true; 34 waylandSupport = stdenv.hostPlatform.isLinux; 35 x11Support = stdenv.hostPlatform.isLinux; 36 }; 37 38 full = base.override { 39 gtkSupport = stdenv.hostPlatform.isLinux; 40 gstreamerSupport = true; 41 openclSupport = true; 42 odbcSupport = true; 43 netapiSupport = stdenv.hostPlatform.isLinux; 44 vaSupport = stdenv.hostPlatform.isLinux; 45 pcapSupport = true; 46 v4lSupport = stdenv.hostPlatform.isLinux; 47 gphoto2Support = true; 48 krb5Support = true; 49 embedInstallers = true; 50 }; 51 52 stable = base.override { wineRelease = "stable"; }; 53 stableFull = full.override { wineRelease = "stable"; }; 54 55 unstable = base.override { wineRelease = "unstable"; }; 56 unstableFull = full.override { wineRelease = "unstable"; }; 57 58 staging = base.override { wineRelease = "staging"; }; 59 stagingFull = full.override { wineRelease = "staging"; }; 60 61 wayland = base.override { 62 x11Support = false; 63 }; 64 waylandFull = full.override { 65 x11Support = false; 66 }; 67 68 yabridge = 69 let 70 yabridge = base.override { wineRelease = "yabridge"; }; 71 in 72 if wineBuild == "wineWow" then yabridge else lib.dontDistribute yabridge; 73}