wine: add initial pulseaudio support

+13 -1
+4 -1
pkgs/misc/emulators/wine/base.nix
··· 1 1 { stdenv, lib, pkgArches, 2 2 name, version, src, monos, geckos, platforms, 3 + pulseaudioSupport, 3 4 buildScript ? null, configureFlags ? "" 4 5 }: 5 6 ··· 19 20 20 21 nativeBuildInputs = toBuildInputs pkgArches (pkgs: (with pkgs; [ 21 22 freetype fontconfig mesa mesa_noglu.osmesa libdrm libpng libjpeg openssl gnutls cups ncurses 22 - ]) ++ (with pkgs.xorg; [ 23 + ]) 24 + ++ lib.optional pulseaudioSupport pkgs.libpulseaudio 25 + ++ (with pkgs.xorg; [ 23 26 xlibsWrapper libXi libXcursor libXinerama libXrandr libXrender libXxf86vm libXcomposite 24 27 ])); 25 28
+2
pkgs/misc/emulators/wine/default.nix
··· 9 9 { lib, pkgs, system, callPackage, 10 10 wineRelease ? "stable", 11 11 wineBuild ? (if system == "x86_64-linux" then "wineWow" else "wine32"), 12 + pulseaudioSupport ? false, 12 13 libtxc_dxtn_Name ? "libtxc_dxtn_s2tc" }: 13 14 14 15 let wine-build = build: release: 15 16 lib.getAttr build (callPackage ./packages.nix { 16 17 wineRelease = release; 18 + inherit pulseaudioSupport; 17 19 }); 18 20 19 21 in if wineRelease == "staging" then
+4
pkgs/misc/emulators/wine/packages.nix
··· 1 1 { system, stdenv, stdenv_32bit, lib, pkgs, pkgsi686Linux, fetchurl, 2 + pulseaudioSupport, 2 3 wineRelease ? "stable" 3 4 }: 4 5 ··· 30 31 name = "wine-${version}"; 31 32 inherit (sources) version src; 32 33 inherit (pkgsi686Linux) lib stdenv; 34 + inherit pulseaudioSupport; 33 35 pkgArches = [ pkgsi686Linux ]; 34 36 geckos = with sources; [ wineGecko32 ]; 35 37 monos = with sources; [ wineMono ]; ··· 39 41 name = "wine64-${version}"; 40 42 inherit (sources) version src; 41 43 inherit lib stdenv; 44 + inherit pulseaudioSupport; 42 45 pkgArches = [ pkgs ]; 43 46 geckos = with sources; [ wineGecko64 ]; 44 47 monos = with sources; [ wineMono ]; ··· 50 53 inherit (sources) version src; 51 54 inherit lib; 52 55 stdenv = stdenv_32bit; 56 + inherit pulseaudioSupport; 53 57 pkgArches = [ pkgs pkgsi686Linux ]; 54 58 geckos = with sources; [ wineGecko32 wineGecko64 ]; 55 59 monos = with sources; [ wineMono ];
+3
pkgs/top-level/all-packages.nix
··· 15691 15691 wine = callPackage ../misc/emulators/wine { 15692 15692 wineRelease = config.wine.release or "stable"; 15693 15693 wineBuild = config.wine.build or "wine32"; 15694 + pulseaudioSupport = if (config ? pulseaudio) 15695 + then config.pulseaudio 15696 + else stdenv.isLinux; 15694 15697 }; 15695 15698 wineStable = wine.override { wineRelease = "stable"; }; 15696 15699 wineUnstable = lowPrio (wine.override { wineRelease = "unstable"; });