1{ lib, stdenv
2, fetchurl
3, pkg-config
4, meson
5, ninja
6, nixosTests
7, vala
8, gettext
9, libxml2
10, glib
11, json-glib
12, gcr
13, gnome-online-accounts
14, gobject-introspection
15, gnome
16, p11-kit
17, openssl
18, uhttpmock
19, libsoup
20}:
21
22stdenv.mkDerivation rec {
23 pname = "libgdata";
24 version = "0.18.1";
25
26 outputs = [ "out" "dev" "installedTests" ];
27
28 src = fetchurl {
29 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
30 sha256 = "3YWS7rZRKtCoz1yL6McudvdL/msj5N2T8HVu4HFoBMc=";
31 };
32
33 patches = [
34 ./installed-tests-path.patch
35 ];
36
37 nativeBuildInputs = [
38 gettext
39 gobject-introspection
40 meson
41 ninja
42 pkg-config
43 vala
44 ];
45
46 buildInputs = [
47 gcr
48 openssl
49 p11-kit
50 uhttpmock
51 ];
52
53 propagatedBuildInputs = [
54 glib
55 libsoup
56 libxml2
57 gnome-online-accounts
58 json-glib
59 ];
60
61 mesonFlags = [
62 "-Dgtk_doc=false"
63 "-Dinstalled_test_bindir=${placeholder "installedTests"}/libexec"
64 "-Dinstalled_test_datadir=${placeholder "installedTests"}/share"
65 "-Dinstalled_tests=true"
66 ];
67
68 passthru = {
69 updateScript = gnome.updateScript {
70 packageName = pname;
71 versionPolicy = "none"; # Stable version has not been updated for a long time.
72 };
73
74 tests = {
75 installedTests = nixosTests.installed-tests.libgdata;
76 };
77 };
78
79 meta = with lib; {
80 description = "GData API library";
81 homepage = "https://wiki.gnome.org/Projects/libgdata";
82 maintainers = with maintainers; [ raskin ] ++ teams.gnome.members;
83 platforms = platforms.linux;
84 license = licenses.lgpl21Plus;
85 };
86}