Merge pull request #250955 from paveloom/quodlibet
quodlibet: 4.5.0 -> 4.6.0
This commit is contained in:
@@ -1,14 +1,13 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, tag ? ""
|
||||
|
||||
# build time
|
||||
# build time
|
||||
, gettext
|
||||
, gobject-introspection
|
||||
, wrapGAppsHook
|
||||
|
||||
# runtime
|
||||
# runtime
|
||||
, adwaita-icon-theme
|
||||
, gdk-pixbuf
|
||||
, glib
|
||||
@@ -23,20 +22,22 @@
|
||||
, libsoup
|
||||
, webkitgtk
|
||||
|
||||
# optional features
|
||||
# optional features
|
||||
, withDbusPython ? false
|
||||
, withPypresence ? false
|
||||
, withPyInotify ? false
|
||||
, withMusicBrainzNgs ? false
|
||||
, withPahoMqtt ? false
|
||||
, withPyInotify ? false
|
||||
, withPypresence ? false
|
||||
, withSoco ? false
|
||||
|
||||
# backends
|
||||
, withGstreamerBackend ? true, gst_all_1
|
||||
# backends
|
||||
, withGstPlugins ? withGstreamerBackend
|
||||
, withXineBackend ? true, xine-lib
|
||||
, withGstreamerBackend ? true
|
||||
, gst_all_1
|
||||
, withXineBackend ? true
|
||||
, xine-lib
|
||||
|
||||
# tests
|
||||
# tests
|
||||
, dbus
|
||||
, glibcLocales
|
||||
, hicolor-icon-theme
|
||||
@@ -46,36 +47,25 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "quodlibet${tag}";
|
||||
version = "4.5.0";
|
||||
version = "4.6.0";
|
||||
format = "pyproject";
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "quodlibet";
|
||||
repo = "quodlibet";
|
||||
rev = "refs/tags/release-${version}";
|
||||
hash = "sha256-G6zcdnHkevbVCrMoseWoSia5ajEor8nZhee6NeZIs8Q=";
|
||||
hash = "sha256-dkO/CFN7Dk72xhtmcSDcwUciOPMeEjQS2mch+jSfiII=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
# Fixes cover globbing under python 3.10.5+
|
||||
url = "https://github.com/quodlibet/quodlibet/commit/5eb7c30766e1dcb30663907664855ee94a3accc0.patch";
|
||||
hash = "sha256-bDyEOE7Vs4df4BeN4QMvt6niisVEpvc1onmX5rtoAWc=";
|
||||
})
|
||||
];
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"doc"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
gettext
|
||||
gobject-introspection
|
||||
wrapGAppsHook
|
||||
] ++ (with python3.pkgs; [
|
||||
sphinxHook
|
||||
sphinx-rtd-theme
|
||||
sphinxHook
|
||||
]);
|
||||
|
||||
buildInputs = [
|
||||
@@ -111,14 +101,12 @@ python3.pkgs.buildPythonApplication rec {
|
||||
pygobject3
|
||||
]
|
||||
++ lib.optionals withDbusPython [ dbus-python ]
|
||||
++ lib.optionals withPypresence [ pypresence ]
|
||||
++ lib.optionals withPyInotify [ pyinotify ]
|
||||
++ lib.optionals withMusicBrainzNgs [ musicbrainzngs ]
|
||||
++ lib.optionals withPahoMqtt [ paho-mqtt ]
|
||||
++ lib.optionals withPyInotify [ pyinotify ]
|
||||
++ lib.optionals withPypresence [ pypresence ]
|
||||
++ lib.optionals withSoco [ soco ];
|
||||
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
|
||||
nativeCheckInputs = [
|
||||
dbus
|
||||
gdk-pixbuf
|
||||
@@ -132,23 +120,23 @@ python3.pkgs.buildPythonApplication rec {
|
||||
]);
|
||||
|
||||
pytestFlags = [
|
||||
# requires networking
|
||||
"--deselect=tests/test_browsers_iradio.py::TIRFile::test_download_tags"
|
||||
# missing translation strings in potfiles
|
||||
"--deselect=tests/test_po.py::TPOTFILESIN::test_missing"
|
||||
# require networking
|
||||
"--deselect=tests/plugin/test_covers.py::test_live_cover_download"
|
||||
"--deselect=tests/test_browsers_iradio.py::TInternetRadio::test_click_add_station"
|
||||
# upstream does actually not enforce source code linting
|
||||
"--ignore=tests/quality"
|
||||
# build failure on Arch Linux
|
||||
# https://github.com/NixOS/nixpkgs/pull/77796#issuecomment-575841355
|
||||
"--ignore=tests/test_operon.py"
|
||||
] ++ lib.optionals (withXineBackend || !withGstPlugins) [
|
||||
"--ignore=tests/plugin/test_replaygain.py"
|
||||
];
|
||||
|
||||
env.LC_ALL = "en_US.UTF-8";
|
||||
|
||||
preCheck = ''
|
||||
export XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_ICON_DIRS:$XDG_DATA_DIRS"
|
||||
export GDK_PIXBUF_MODULE_FILE=${librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
|
||||
export HOME=$(mktemp -d)
|
||||
export XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_ICON_DIRS:$XDG_DATA_DIRS"
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
@@ -167,8 +155,6 @@ python3.pkgs.buildPythonApplication rec {
|
||||
|
||||
meta = with lib; {
|
||||
description = "GTK-based audio player written in Python, using the Mutagen tagging library";
|
||||
license = licenses.gpl2Plus;
|
||||
|
||||
longDescription = ''
|
||||
Quod Libet is a GTK-based audio player written in Python, using
|
||||
the Mutagen tagging library. It's designed around the idea that
|
||||
@@ -182,8 +168,8 @@ python3.pkgs.buildPythonApplication rec {
|
||||
player, like Unicode support, tag editing, Replay Gain, podcasts
|
||||
& internet radio, and all major audio formats.
|
||||
'';
|
||||
|
||||
maintainers = with maintainers; [ coroa pbogdan ];
|
||||
homepage = "https://quodlibet.readthedocs.io/en/latest/";
|
||||
homepage = "https://quodlibet.readthedocs.io/en/latest";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ coroa paveloom pbogdan ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -35141,14 +35141,17 @@ with pkgs;
|
||||
keybinder3 = null;
|
||||
libappindicator-gtk3 = null;
|
||||
libmodplug = null;
|
||||
libsoup = libsoup_3;
|
||||
};
|
||||
|
||||
quodlibet-without-gst-plugins = quodlibet.override {
|
||||
libsoup = libsoup_3;
|
||||
tag = "-without-gst-plugins";
|
||||
withGstPlugins = false;
|
||||
};
|
||||
|
||||
quodlibet-xine = quodlibet.override {
|
||||
libsoup = libsoup_3;
|
||||
tag = "-xine";
|
||||
withGstreamerBackend = false;
|
||||
withXineBackend = true;
|
||||
@@ -35160,6 +35163,7 @@ with pkgs;
|
||||
keybinder3 = keybinder3;
|
||||
libappindicator-gtk3 = libappindicator-gtk3;
|
||||
libmodplug = libmodplug;
|
||||
libsoup = libsoup_3;
|
||||
tag = "-full";
|
||||
withDbusPython = true;
|
||||
withMusicBrainzNgs = true;
|
||||
@@ -35170,6 +35174,7 @@ with pkgs;
|
||||
};
|
||||
|
||||
quodlibet-xine-full = quodlibet-full.override {
|
||||
libsoup = libsoup_3;
|
||||
tag = "-xine-full";
|
||||
withGstreamerBackend = false;
|
||||
withXineBackend = true;
|
||||
|
||||
Reference in New Issue
Block a user