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