tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
quodlibet: 3.9.1 → 4.0.2
Jan Tojnar
8 years ago
d2ce3a9b
53fc399b
+30
-16
2 changed files
expand all
collapse all
unified
split
pkgs
applications
audio
quodlibet
default.nix
top-level
all-packages.nix
+28
-13
pkgs/applications/audio/quodlibet/default.nix
···
1
-
{ stdenv, fetchurl, python2Packages, wrapGAppsHook, gettext, intltool, libsoup, gnome3,
2
-
tag ? "",
3
gst_all_1, withGstPlugins ? true,
4
xineBackend ? false, xineLib,
5
withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false,
···
7
keybinder3 ? null, gtksourceview ? null, libmodplug ? null, kakasi ? null, libappindicator-gtk3 ? null }:
8
9
let optionals = stdenv.lib.optionals; in
10
-
python2Packages.buildPythonApplication rec {
11
name = "quodlibet${tag}-${version}";
12
-
version = "3.9.1";
13
14
# XXX, tests fail
0
15
doCheck = false;
16
17
src = fetchurl {
18
url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz";
19
-
sha256 = "d2b42df5d439213973dc97149fddc779a6c90cec389c24baf1c0bdcc39ffe591";
20
};
21
22
nativeBuildInputs = [ wrapGAppsHook gettext intltool ];
23
-
# ++ (with python2Packages; [ pytest pyflakes pycodestyle polib ]); # test deps
0
24
25
-
buildInputs = [ gnome3.defaultIconTheme libsoup webkitgtk keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi ]
26
++ (if xineBackend then [ xineLib ] else with gst_all_1;
27
[ gstreamer gst-plugins-base ] ++ optionals withGstPlugins [ gst-plugins-good gst-plugins-ugly gst-plugins-bad ]);
28
29
-
propagatedBuildInputs = with python2Packages;
30
-
[ pygobject3 pycairo mutagen pygtk gst-python feedparser faulthandler futures ]
31
++ optionals withDbusPython [ dbus-python ]
32
++ optionals withPyInotify [ pyinotify ]
33
++ optionals withMusicBrainzNgs [ musicbrainzngs ]
34
++ optionals stdenv.isDarwin [ pyobjc ]
35
++ optionals withPahoMqtt [ paho-mqtt ];
36
37
-
makeWrapperArgs = optionals (kakasi != null) [ "--prefix PATH : ${kakasi}/bin" ];
0
0
0
0
0
0
0
0
0
0
0
0
38
39
-
meta = {
0
0
40
description = "GTK+-based audio player written in Python, using the Mutagen tagging library";
41
-
license = stdenv.lib.licenses.gpl2;
42
43
longDescription = ''
44
Quod Libet is a GTK+-based audio player written in Python, using
···
54
& internet radio, and all major audio formats.
55
'';
56
57
-
maintainers = with stdenv.lib.maintainers; [ coroa sauyon ];
58
homepage = https://quodlibet.readthedocs.io/en/latest/;
59
};
60
}
···
1
+
{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, intltool, libsoup, gnome3, gtk3, gdk_pixbuf,
2
+
tag ? "", xvfb_run, dbus, glibcLocales, glib, gobjectIntrospection,
3
gst_all_1, withGstPlugins ? true,
4
xineBackend ? false, xineLib,
5
withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false,
···
7
keybinder3 ? null, gtksourceview ? null, libmodplug ? null, kakasi ? null, libappindicator-gtk3 ? null }:
8
9
let optionals = stdenv.lib.optionals; in
10
+
python3.pkgs.buildPythonApplication rec {
11
name = "quodlibet${tag}-${version}";
12
+
version = "4.0.2";
13
14
# XXX, tests fail
15
+
# https://github.com/quodlibet/quodlibet/issues/2820
16
doCheck = false;
17
18
src = fetchurl {
19
url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz";
20
+
sha256 = "072s983p3n84yl807pbdxsy5vrgs8jzzfl648gsri6kpwsp6w5fz";
21
};
22
23
nativeBuildInputs = [ wrapGAppsHook gettext intltool ];
24
+
25
+
checkInputs = with python3.pkgs; [ pytest pytest_xdist pyflakes pycodestyle polib xvfb_run dbus.daemon glibcLocales ];
26
27
+
buildInputs = [ gnome3.defaultIconTheme libsoup glib gtk3 webkitgtk gdk_pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobjectIntrospection ]
28
++ (if xineBackend then [ xineLib ] else with gst_all_1;
29
[ gstreamer gst-plugins-base ] ++ optionals withGstPlugins [ gst-plugins-good gst-plugins-ugly gst-plugins-bad ]);
30
31
+
propagatedBuildInputs = with python3.pkgs; [ pygobject3 pycairo mutagen gst-python feedparser ]
0
32
++ optionals withDbusPython [ dbus-python ]
33
++ optionals withPyInotify [ pyinotify ]
34
++ optionals withMusicBrainzNgs [ musicbrainzngs ]
35
++ optionals stdenv.isDarwin [ pyobjc ]
36
++ optionals withPahoMqtt [ paho-mqtt ];
37
38
+
LC_ALL = "en_US.UTF-8";
39
+
40
+
checkPhase = ''
41
+
runHook preCheck
42
+
checkHomeDir=$(mktemp -d)
43
+
mkdir -p $checkHomeDir/.cache/thumbnails/normal # Required by TThumb.test_recreate_broken_cache_file
44
+
env XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS" \
45
+
HOME=$checkHomeDir \
46
+
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
47
+
--config-file=${dbus.daemon}/share/dbus-1/session.conf \
48
+
py.test
49
+
runHook postCheck
50
+
'';
51
52
+
preFixup = stdenv.lib.optionalString (kakasi != null) "gappsWrapperArgs+=(--prefix PATH : ${kakasi}/bin)";
53
+
54
+
meta = with stdenv.lib; {
55
description = "GTK+-based audio player written in Python, using the Mutagen tagging library";
56
+
license = licenses.gpl2Plus;
57
58
longDescription = ''
59
Quod Libet is a GTK+-based audio player written in Python, using
···
69
& internet radio, and all major audio formats.
70
'';
71
72
+
maintainers = with maintainers; [ coroa sauyon ];
73
homepage = https://quodlibet.readthedocs.io/en/latest/;
74
};
75
}
+2
-3
pkgs/top-level/all-packages.nix
···
17453
17454
quodlibet-xine = quodlibet.override { xineBackend = true; tag = "-xine"; };
17455
17456
-
quodlibet-full = callPackage ../applications/audio/quodlibet {
17457
-
inherit (gnome2) gtksourceview;
17458
withDbusPython = true;
17459
withPyInotify = true;
17460
withMusicBrainzNgs = true;
···
17462
keybinder3 = keybinder3;
17463
libmodplug = libmodplug;
17464
kakasi = kakasi;
17465
-
webkitgtk = webkitgtk24x-gtk3;
17466
libappindicator-gtk3 = libappindicator-gtk3;
17467
tag = "-full";
17468
};
···
17453
17454
quodlibet-xine = quodlibet.override { xineBackend = true; tag = "-xine"; };
17455
17456
+
quodlibet-full = quodlibet.override {
17457
+
inherit (gnome3) gtksourceview webkitgtk;
17458
withDbusPython = true;
17459
withPyInotify = true;
17460
withMusicBrainzNgs = true;
···
17462
keybinder3 = keybinder3;
17463
libmodplug = libmodplug;
17464
kakasi = kakasi;
0
17465
libappindicator-gtk3 = libappindicator-gtk3;
17466
tag = "-full";
17467
};