tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
mpv: remove ? null from inputs, put meta last
Sandro Jäckel
4 years ago
86742121
b7d07166
+55
-86
1 changed file
expand all
collapse all
unified
split
pkgs
applications
video
mpv
default.nix
+55
-86
pkgs/applications/video/mpv/default.nix
···
19
19
, nv-codec-headers
20
20
, lua
21
21
, libuchardet
22
22
-
, libiconv ? null
22
22
+
, libiconv
23
23
, CoreFoundation, Cocoa, CoreAudio, MediaPlayer
24
24
25
25
, waylandSupport ? stdenv.isLinux
26
26
-
, wayland ? null
27
27
-
, wayland-protocols ? null
28
28
-
, libxkbcommon ? null
26
26
+
, wayland
27
27
+
, wayland-protocols
28
28
+
, libxkbcommon
29
29
30
30
, x11Support ? stdenv.isLinux
31
31
-
, libGLU, libGL ? null
32
32
-
, libX11 ? null
33
33
-
, libXext ? null
34
34
-
, libXxf86vm ? null
35
35
-
, libXrandr ? null
31
31
+
, libGLU, libGL
32
32
+
, libX11
33
33
+
, libXext
34
34
+
, libXxf86vm
35
35
+
, libXrandr
36
36
37
37
, cddaSupport ? false
38
38
-
, libcdio ? null
39
39
-
, libcdio-paranoia ? null
38
38
+
, libcdio
39
39
+
, libcdio-paranoia
40
40
41
41
, vulkanSupport ? stdenv.isLinux
42
42
-
, libplacebo ? null
43
43
-
, shaderc ? null
44
44
-
, vulkan-headers ? null
45
45
-
, vulkan-loader ? null
42
42
+
, libplacebo
43
43
+
, shaderc
44
44
+
, vulkan-headers
45
45
+
, vulkan-loader
46
46
47
47
, drmSupport ? stdenv.isLinux
48
48
-
, libdrm ? null
49
49
-
, mesa ? null
48
48
+
, libdrm
49
49
+
, mesa
50
50
51
51
-
, alsaSupport ? stdenv.isLinux, alsa-lib ? null
52
52
-
, archiveSupport ? true, libarchive ? null
53
53
-
, bluraySupport ? true, libbluray ? null
54
54
-
, bs2bSupport ? true, libbs2b ? null
55
55
-
, cacaSupport ? true, libcaca ? null
56
56
-
, cmsSupport ? true, lcms2 ? null
57
57
-
, dvdnavSupport ? stdenv.isLinux, libdvdnav ? null
58
58
-
, jackaudioSupport ? false, libjack2 ? null
59
59
-
, libpngSupport ? true, libpng ? null
60
60
-
, openalSupport ? true, openalSoft ? null
61
61
-
, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio ? null
62
62
-
, rubberbandSupport ? stdenv.isLinux, rubberband ? null
63
63
-
, screenSaverSupport ? true, libXScrnSaver ? null
64
64
-
, sdl2Support ? true, SDL2 ? null
65
65
-
, sixelSupport ? false, libsixel ? null
66
66
-
, speexSupport ? true, speex ? null
67
67
-
, swiftSupport ? false, swift ? null
68
68
-
, theoraSupport ? true, libtheora ? null
69
69
-
, vaapiSupport ? stdenv.isLinux, libva ? null
70
70
-
, vapoursynthSupport ? false, vapoursynth ? null
71
71
-
, vdpauSupport ? true, libvdpau ? null
72
72
-
, xineramaSupport ? stdenv.isLinux, libXinerama ? null
73
73
-
, xvSupport ? stdenv.isLinux, libXv ? null
74
74
-
, zimgSupport ? true, zimg ? null
51
51
+
, alsaSupport ? stdenv.isLinux, alsa-lib
52
52
+
, archiveSupport ? true, libarchive
53
53
+
, bluraySupport ? true, libbluray
54
54
+
, bs2bSupport ? true, libbs2b
55
55
+
, cacaSupport ? true, libcaca
56
56
+
, cmsSupport ? true, lcms2
57
57
+
, dvdnavSupport ? stdenv.isLinux, libdvdnav
58
58
+
, jackaudioSupport ? false, libjack2
59
59
+
, libpngSupport ? true, libpng
60
60
+
, openalSupport ? true, openalSoft
61
61
+
, pulseSupport ? config.pulseaudio or stdenv.isLinux, libpulseaudio
62
62
+
, rubberbandSupport ? stdenv.isLinux, rubberband
63
63
+
, screenSaverSupport ? true, libXScrnSaver
64
64
+
, sdl2Support ? true, SDL2
65
65
+
, sixelSupport ? false, libsixel
66
66
+
, speexSupport ? true, speex
67
67
+
, swiftSupport ? false, swift
68
68
+
, theoraSupport ? true, libtheora
69
69
+
, vaapiSupport ? stdenv.isLinux, libva
70
70
+
, vapoursynthSupport ? false, vapoursynth
71
71
+
, vdpauSupport ? true, libvdpau
72
72
+
, xineramaSupport ? stdenv.isLinux, libXinerama
73
73
+
, xvSupport ? stdenv.isLinux, libXv
74
74
+
, zimgSupport ? true, zimg
75
75
}:
76
76
77
77
with lib;
78
78
79
79
let
80
80
-
available = x: x != null;
81
81
-
in
82
82
-
assert alsaSupport -> available alsa-lib;
83
83
-
assert archiveSupport -> available libarchive;
84
84
-
assert bluraySupport -> available libbluray;
85
85
-
assert bs2bSupport -> available libbs2b;
86
86
-
assert cacaSupport -> available libcaca;
87
87
-
assert cddaSupport -> all available [ libcdio libcdio-paranoia ];
88
88
-
assert cmsSupport -> available lcms2;
89
89
-
assert drmSupport -> all available [ libdrm mesa ];
90
90
-
assert dvdnavSupport -> available libdvdnav;
91
91
-
assert jackaudioSupport -> available libjack2;
92
92
-
assert libpngSupport -> available libpng;
93
93
-
assert openalSupport -> available openalSoft;
94
94
-
assert pulseSupport -> available libpulseaudio;
95
95
-
assert rubberbandSupport -> available rubberband;
96
96
-
assert screenSaverSupport -> available libXScrnSaver;
97
97
-
assert sdl2Support -> available SDL2;
98
98
-
assert sixelSupport -> available libsixel;
99
99
-
assert speexSupport -> available speex;
100
100
-
assert theoraSupport -> available libtheora;
101
101
-
assert vaapiSupport -> available libva;
102
102
-
assert vapoursynthSupport -> available vapoursynth;
103
103
-
assert vdpauSupport -> available libvdpau;
104
104
-
assert vulkanSupport -> all available [ libplacebo shaderc vulkan-headers vulkan-loader ];
105
105
-
assert waylandSupport -> all available [ wayland wayland-protocols libxkbcommon ];
106
106
-
assert x11Support -> all available [ libGLU libGL libX11 libXext libXxf86vm libXrandr ];
107
107
-
assert xineramaSupport -> x11Support && available libXinerama;
108
108
-
assert xvSupport -> x11Support && available libXv;
109
109
-
assert zimgSupport -> available zimg;
110
110
-
111
111
-
let
112
80
luaEnv = lua.withPackages (ps: with ps; [ luasocket ]);
113
81
114
82
in stdenv.mkDerivation rec {
···
127
95
postPatch = ''
128
96
patchShebangs ./TOOLS/
129
97
'';
98
98
+
130
99
NIX_LDFLAGS = lib.optionalString x11Support "-lX11 -lXext "
131
131
-
+ lib.optionalString stdenv.isDarwin "-framework CoreFoundation";
100
100
+
+ lib.optionalString stdenv.isDarwin "-framework CoreFoundation";
132
101
133
102
wafConfigureFlags = [
134
103
"--enable-libmpv-shared"
···
227
196
addOpenGLRunpath $out/bin/mpv
228
197
'';
229
198
230
230
-
meta = with lib; {
231
231
-
homepage = "https://mpv.io";
232
232
-
description = "General-purpose media player, fork of MPlayer and mplayer2";
233
233
-
longDescription = ''
234
234
-
mpv is a free and open-source general-purpose video player, based on the
235
235
-
MPlayer and mplayer2 projects, with great improvements above both.
236
236
-
'';
237
237
-
license = licenses.gpl2Plus;
238
238
-
maintainers = with maintainers; [ AndersonTorres fpletz globin ma27 tadeokondrak ];
239
239
-
platforms = platforms.darwin ++ platforms.linux;
240
240
-
};
241
241
-
242
199
passthru = {
243
200
inherit
244
201
# The wrapper consults luaEnv and lua.version
···
251
208
vapoursynthSupport
252
209
vapoursynth
253
210
;
211
211
+
};
212
212
+
213
213
+
meta = with lib; {
214
214
+
homepage = "https://mpv.io";
215
215
+
description = "General-purpose media player, fork of MPlayer and mplayer2";
216
216
+
longDescription = ''
217
217
+
mpv is a free and open-source general-purpose video player, based on the
218
218
+
MPlayer and mplayer2 projects, with great improvements above both.
219
219
+
'';
220
220
+
license = licenses.gpl2Plus;
221
221
+
maintainers = with maintainers; [ AndersonTorres fpletz globin ma27 tadeokondrak ];
222
222
+
platforms = platforms.darwin ++ platforms.linux;
254
223
};
255
224
}