1{
2 stdenv,
3 lib,
4 fetchurl,
5 meson,
6 ninja,
7 pkg-config,
8 gobject-introspection,
9 vala,
10 gtk-doc,
11 docbook_xsl,
12 glib,
13 mesonEmulatorHook,
14 gnome,
15}:
16
17# TODO: Add installed tests once https://gitlab.gnome.org/World/libcloudproviders/issues/4 is fixed
18
19stdenv.mkDerivation rec {
20 pname = "libcloudproviders";
21 version = "0.3.6";
22
23 src = fetchurl {
24 url = "mirror://gnome/sources/libcloudproviders/${lib.versions.majorMinor version}/libcloudproviders-${version}.tar.xz";
25 hash = "sha256-O3URCzpP3vTFxaRA5IcB/gVNKuBh0VbIkTa7W6BedLc=";
26 };
27
28 outputs = [
29 "out"
30 "dev"
31 "devdoc"
32 ];
33
34 mesonFlags = [
35 "-Denable-gtk-doc=true"
36 ];
37
38 strictDeps = true;
39 nativeBuildInputs = [
40 meson
41 ninja
42 pkg-config
43 gobject-introspection
44 vala
45 gtk-doc
46 docbook_xsl
47 ]
48 ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
49 mesonEmulatorHook
50 ];
51
52 buildInputs = [ glib ];
53
54 passthru = {
55 updateScript = gnome.updateScript {
56 packageName = "libcloudproviders";
57 };
58 };
59
60 meta = with lib; {
61 description = "DBus API that allows cloud storage sync clients to expose their services";
62 homepage = "https://gitlab.gnome.org/World/libcloudproviders";
63 license = licenses.lgpl3Plus;
64 maintainers = with maintainers; [ jtojnar ];
65 platforms = platforms.unix;
66 };
67}