1{ lib, fetchFromGitHub
2, pkg-config, meson ,ninja
3, python3Packages
4, gdk-pixbuf, glib, gobject-introspection, gtk3
5, libnotify
6, wrapGAppsHook3 }:
7
8python3Packages.buildPythonApplication rec {
9 pname = "mpdevil";
10 version = "1.11.0";
11
12 src = fetchFromGitHub {
13 owner = "SoongNoonien";
14 repo = pname;
15 rev = "refs/tags/v${version}";
16 sha256 = "sha256-ooNZSsVtIeueqgj9hR9OZp08qm8gGokiq8IU3U/ZV5w=";
17 };
18
19 format = "other";
20
21 nativeBuildInputs = [
22 glib.dev gobject-introspection gtk3 pkg-config meson ninja wrapGAppsHook3
23 ];
24
25 buildInputs = [
26 gdk-pixbuf glib libnotify
27 ];
28
29 propagatedBuildInputs = with python3Packages; [
30 beautifulsoup4 distutils-extra mpd2 notify-py pygobject3 requests
31 ];
32
33 postInstall = ''
34 glib-compile-schemas $out/share/glib-2.0/schemas
35 '';
36
37 preFixup = ''
38 makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
39 '';
40
41 # Prevent double wrapping.
42 dontWrapGApps = true;
43 # Otherwise wrapGAppsHook3 do not pick up the dependencies correctly.
44 strictDeps = false;
45 # There aren't any checks.
46 doCheck = false;
47
48 meta = with lib; {
49 description = "A simple music browser for MPD";
50 homepage = "https://github.com/SoongNoonien/mpdevil";
51 license = licenses.gpl3Plus;
52 platforms = platforms.linux;
53 maintainers = with maintainers; [ apfelkuchen6 ];
54 mainProgram = "mpdevil";
55 };
56}