biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / applications / audio / vocal / default.nix
blob00f4ac9172ac3db9f902a7690b638b377f58930a
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , fetchpatch
5 , nix-update-script
6 , cmake
7 , ninja
8 , vala
9 , pkg-config
10 , pantheon
11 , gtk3
12 , glib
13 , glib-networking
14 , libxml2
15 , webkitgtk
16 , clutter-gtk
17 , clutter-gst
18 , libunity
19 , libnotify
20 , sqlite
21 , gst_all_1
22 , json-glib
23 , libgee
24 , wrapGAppsHook
27 stdenv.mkDerivation rec {
28   pname = "vocal";
29   version = "2.4.2";
31   src = fetchFromGitHub {
32     owner = "needle-and-thread";
33     repo = pname;
34     rev = version;
35     sha256 = "1c4n89rdl9r13kmmh2qymmy9sa6shjwai7df48k2kfn0pnzq5mad";
36   };
38   nativeBuildInputs = [
39     cmake
40     libxml2
41     ninja
42     vala
43     pkg-config
44     wrapGAppsHook
45   ];
47   buildInputs = with gst_all_1; [
48     clutter-gst
49     clutter-gtk
50     glib
51     gst-plugins-base
52     gst-plugins-good
53     gstreamer
54     gtk3
55     json-glib
56     libgee
57     libnotify
58     libunity
59     pantheon.granite
60     sqlite
61     webkitgtk
62     glib-networking
63   ];
65   patches = [
66     # granite 6.0.0 removed about dialogs
67     # see: https://github.com/needle-and-thread/vocal/issues/483
68     (fetchpatch {
69       name = "remove-about.patch";
70       url = "https://raw.githubusercontent.com/archlinux/svntogit-community/03543ffdb6cd52ce1a8293f3303225b3afac2431/trunk/remove-about.patch";
71       sha256 = "sha256-yGD7BYOTmqs4h+Odh/mB3fI1HM7GDO6F+QaHpRUD5p4=";
72     })
73   ];
75   postPatch = ''
76     # Fix build with vala 0.56
77     # https://github.com/needle-and-thread/vocal/pull/503
78     substituteInPlace src/Vocal.vala \
79       --replace "public const OptionEntry[] app_options" "private const OptionEntry[] app_options"
80   '';
82   passthru = {
83     updateScript = nix-update-script { };
84   };
86   meta = with lib; {
87     description = "The podcast client for the modern free desktop";
88     longDescription = ''
89       Vocal is a powerful, fast, and intuitive application that helps users find new podcasts, manage their libraries, and enjoy the best that independent audio and video publishing has to offer. Vocal features full support for both episode downloading and streaming, native system integration, iTunes store search and top 100 charts (with international results support), iTunes link parsing, OPML importing and exporting, and so much more. Plus, it has great smart features like automatically keeping your library clean from old files, and the ability to set custom skip intervals.
90     '';
91     homepage = "https://github.com/needle-and-thread/vocal";
92     license = licenses.gpl3Plus;
93     maintainers = with maintainers; [ ] ++ teams.pantheon.members;
94     platforms = platforms.linux;
95     mainProgram = "com.github.needleandthread.vocal";
96   };