summaryrefslogtreecommitdiffstats
path: root/pkgs/applications
diff options
context:
space:
mode:
authorOrivej Desh (NixOS) <40807862+orivej-nixos@users.noreply.github.com>2020-12-07 14:20:01 +0000
committerGitHub <noreply@github.com>2020-12-07 14:20:01 +0000
commite750a79e49bb24fcc5e3005936ca788a2bd48e87 (patch)
treeae614c51fe2363570d16c4e46fd239c466c2250f /pkgs/applications
parent8ca5f781e2ab8827ac7bf8dcb24fd5591fbcf036 (diff)
parent7dfe92ab942256a7cba9d51a781704a494358edd (diff)
Merge pull request #101266 from pbogdan/quodlibet
quodlibet: 4.2.1 -> 4.3.0, fix tests
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/audio/quodlibet/default.nix24
-rw-r--r--pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch12
2 files changed, 30 insertions, 6 deletions
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index 704e20cc8c56..386a5110a817 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk-pixbuf,
- tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection,
+{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk-pixbuf, librsvg,
+ tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection, hicolor-icon-theme,
gst_all_1, withGstPlugins ? true,
xineBackend ? false, xineLib,
withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false,
@@ -9,16 +9,18 @@
let optionals = stdenv.lib.optionals; in
python3.pkgs.buildPythonApplication rec {
pname = "quodlibet${tag}";
- version = "4.2.1";
+ version = "4.3.0";
src = fetchurl {
url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz";
- sha256 = "0b1rvr4hqs2bjmhayms7vxxkn3d92k9v7p1269rjhf11hpk122l7";
+ sha256 = "1q17ckblfa4fcs7wsjwsq1dj7360ymrdyjkyqmj864wzlqkw1rd2";
};
+ patches = [ ./quodlibet-feedparser6.patch ];
+
nativeBuildInputs = [ wrapGAppsHook gettext ];
- checkInputs = [ gdk-pixbuf ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb_run dbus.daemon glibcLocales ]);
+ checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb_run dbus.daemon glibcLocales ]);
buildInputs = [ gnome3.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk-pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ]
++ (if xineBackend then [ xineLib ] else with gst_all_1;
@@ -36,6 +38,10 @@ python3.pkgs.buildPythonApplication rec {
pytestFlags = stdenv.lib.optionals (xineBackend || !withGstPlugins) [
"--ignore=tests/plugin/test_replaygain.py"
] ++ [
+ # requires networking
+ "--ignore=tests/test_browsers_iradio.py"
+ # the default theme doesn't have the required icons
+ "--ignore=tests/plugin/test_trayicon.py"
# upstream does actually not enforce source code linting
"--ignore=tests/quality"
# build failure on Arch Linux
@@ -45,7 +51,13 @@ python3.pkgs.buildPythonApplication rec {
checkPhase = ''
runHook preCheck
+ # newer gettext spews some warnings which fail the tests
+ substituteInPlace tests/test_po.py --replace "strict=True" "strict=False"
+ # otherwise tests can't find the app icons; instead of creating index.theme from scratch
+ # I re-used the one from hicolor-icon-theme which seems to work
+ cp "${hicolor-icon-theme}/share/icons/hicolor/index.theme" quodlibet/images/hicolor
env XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_ICON_DIRS:$XDG_DATA_DIRS" \
+ GDK_PIXBUF_MODULE_FILE=${librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \
HOME=$(mktemp -d) \
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
--config-file=${dbus.daemon}/share/dbus-1/session.conf \
@@ -73,7 +85,7 @@ python3.pkgs.buildPythonApplication rec {
& internet radio, and all major audio formats.
'';
- maintainers = with maintainers; [ coroa sauyon ];
+ maintainers = with maintainers; [ coroa pbogdan ];
homepage = "https://quodlibet.readthedocs.io/en/latest/";
};
}
diff --git a/pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch b/pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch
new file mode 100644
index 000000000000..41c6c75cea25
--- /dev/null
+++ b/pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch
@@ -0,0 +1,12 @@
+Support feedparser 6, based on https://github.com/quodlibet/quodlibet/pull/3464
+
+--- a/quodlibet/browsers/audiofeeds.py
++++ b/quodlibet/browsers/audiofeeds.py
+@@ -137,7 +137,4 @@ class Feed(list):
+ def parse(self):
+ try:
+- if not self._check_feed():
+- return False
+-
+ doc = feedparser.parse(self.uri)
+ except Exception as e: