|
|
|
@ -1,17 +1,30 @@ |
|
|
|
|
{ lib, stdenv, fetchurl, pkg-config, fetchFromGitLab |
|
|
|
|
{ stdenv |
|
|
|
|
, lib |
|
|
|
|
, fetchurl |
|
|
|
|
, fetchpatch |
|
|
|
|
, pkg-config |
|
|
|
|
, meson |
|
|
|
|
, ninja |
|
|
|
|
, fetchFromGitLab |
|
|
|
|
, python3 |
|
|
|
|
, perl |
|
|
|
|
, perlPackages |
|
|
|
|
, vala |
|
|
|
|
, glib |
|
|
|
|
, gtk3 |
|
|
|
|
, intltool |
|
|
|
|
, libpeas |
|
|
|
|
, libsoup |
|
|
|
|
, libxml2 |
|
|
|
|
, libsecret |
|
|
|
|
, libnotify |
|
|
|
|
, libdmapsharing |
|
|
|
|
, gnome |
|
|
|
|
, gobject-introspection |
|
|
|
|
, totem-pl-parser |
|
|
|
|
, libgudev |
|
|
|
|
, libgpod |
|
|
|
|
, libmtp |
|
|
|
|
, lirc |
|
|
|
|
, brasero |
|
|
|
|
, grilo |
|
|
|
|
, tdb |
|
|
|
|
, json-glib |
|
|
|
|
, itstool |
|
|
|
@ -19,38 +32,32 @@ |
|
|
|
|
, gst_all_1 |
|
|
|
|
, gst_plugins ? with gst_all_1; [ gst-plugins-good gst-plugins-ugly ] |
|
|
|
|
}: |
|
|
|
|
let |
|
|
|
|
|
|
|
|
|
# The API version of libdmapsharing required by rhythmbox 3.4.4 is 3.0. |
|
|
|
|
|
|
|
|
|
# This PR would solve the issue: |
|
|
|
|
# https://gitlab.gnome.org/GNOME/rhythmbox/-/merge_requests/12 |
|
|
|
|
# Unfortunately applying this patch produces a rhythmbox which |
|
|
|
|
# cannot fetch data from DAAP shares. |
|
|
|
|
|
|
|
|
|
libdmapsharing_3 = libdmapsharing.overrideAttrs (old: rec { |
|
|
|
|
version = "2.9.41"; |
|
|
|
|
src = fetchFromGitLab { |
|
|
|
|
domain = "gitlab.gnome.org"; |
|
|
|
|
owner = "GNOME"; |
|
|
|
|
repo = old.pname; |
|
|
|
|
rev = "${lib.toUpper old.pname}_${lib.replaceStrings ["."] ["_"] version}"; |
|
|
|
|
sha256 = "05kvrzf0cp3mskdy6iv7zqq24qdczl800q2dn1h4bk3d9wchgm4p"; |
|
|
|
|
}; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
in stdenv.mkDerivation rec { |
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
pname = "rhythmbox"; |
|
|
|
|
version = "3.4.4"; |
|
|
|
|
version = "3.4.5"; |
|
|
|
|
|
|
|
|
|
src = fetchurl { |
|
|
|
|
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; |
|
|
|
|
sha256 = "142xcvw4l19jyr5i72nbnrihs953pvrrzcbijjn9dxmxszbv03pf"; |
|
|
|
|
sha256 = "l+u8YPN4sibaRbtEbYmQL26hgx4j8Q76ujZVk7HnTyo="; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
patches = [ |
|
|
|
|
# Fix stuff linking against rhythmdb not finding libxml headers |
|
|
|
|
# included by rhythmdb.h header. |
|
|
|
|
# https://gitlab.gnome.org/GNOME/rhythmbox/-/merge_requests/147 |
|
|
|
|
(fetchpatch { |
|
|
|
|
url = "https://gitlab.gnome.org/GNOME/rhythmbox/-/commit/7e8c7b803a45b7badf350132f8e78e3d75b99a21.patch"; |
|
|
|
|
sha256 = "5CE/NVlmx7FItNJCVQxx+x0DCYhUkAi/UuksfAiyWBg="; |
|
|
|
|
}) |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ |
|
|
|
|
pkg-config |
|
|
|
|
intltool perl perlPackages.XMLParser |
|
|
|
|
meson |
|
|
|
|
ninja |
|
|
|
|
vala |
|
|
|
|
glib |
|
|
|
|
itstool |
|
|
|
|
wrapGAppsHook |
|
|
|
|
]; |
|
|
|
@ -58,13 +65,20 @@ in stdenv.mkDerivation rec { |
|
|
|
|
buildInputs = [ |
|
|
|
|
python3 |
|
|
|
|
libsoup |
|
|
|
|
libxml2 |
|
|
|
|
tdb |
|
|
|
|
json-glib |
|
|
|
|
|
|
|
|
|
glib |
|
|
|
|
gtk3 |
|
|
|
|
libpeas |
|
|
|
|
totem-pl-parser |
|
|
|
|
gnome.adwaita-icon-theme |
|
|
|
|
libgudev |
|
|
|
|
libgpod |
|
|
|
|
libmtp |
|
|
|
|
lirc |
|
|
|
|
brasero |
|
|
|
|
grilo |
|
|
|
|
|
|
|
|
|
gobject-introspection |
|
|
|
|
python3.pkgs.pygobject3 |
|
|
|
@ -76,16 +90,14 @@ in stdenv.mkDerivation rec { |
|
|
|
|
gst_all_1.gst-plugins-ugly |
|
|
|
|
gst_all_1.gst-libav |
|
|
|
|
|
|
|
|
|
libdmapsharing_3 # necessary for daap support |
|
|
|
|
libdmapsharing # for daap support |
|
|
|
|
libsecret |
|
|
|
|
libnotify |
|
|
|
|
] ++ gst_plugins; |
|
|
|
|
|
|
|
|
|
configureFlags = [ |
|
|
|
|
"--enable-daap" |
|
|
|
|
"--enable-libnotify" |
|
|
|
|
"--with-libsecret" |
|
|
|
|
]; |
|
|
|
|
postInstall = '' |
|
|
|
|
glib-compile-schemas "$out/share/glib-2.0/schemas" |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
preFixup = '' |
|
|
|
|
gappsWrapperArgs+=( |
|
|
|
@ -93,8 +105,6 @@ in stdenv.mkDerivation rec { |
|
|
|
|
) |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
enableParallelBuilding = true; |
|
|
|
|
|
|
|
|
|
passthru = { |
|
|
|
|
updateScript = gnome.updateScript { |
|
|
|
|
packageName = pname; |
|
|
|
|