evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / by-name / gn / gnome-online-accounts / package.nix
blobbf622966ed99d778fd663db8be6712447a8c29cf
1 { stdenv
2 , lib
3 , fetchurl
4 , pkg-config
5 , vala
6 , glib
7 , meson
8 , ninja
9 , libxslt
10 , gtk4
11 , enableBackend ? stdenv.hostPlatform.isLinux
12 , json-glib
13 , keyutils
14 , libadwaita
15 , librest_1_0
16 , libxml2
17 , libsecret
18 , gobject-introspection
19 , gettext
20 , gi-docgen
21 , glib-networking
22 , libsoup_3
23 , docbook-xsl-nons
24 , gnome
25 , gcr_4
26 , libkrb5
27 , gvfs
28 , dbus
29 , wrapGAppsHook4
32 stdenv.mkDerivation (finalAttrs: {
33   pname = "gnome-online-accounts";
34   version = "3.52.1";
36   outputs = [ "out" "dev" ] ++ lib.optionals enableBackend [ "man" "devdoc" ];
38   src = fetchurl {
39     url = "mirror://gnome/sources/gnome-online-accounts/${lib.versions.majorMinor finalAttrs.version}/gnome-online-accounts-${finalAttrs.version}.tar.xz";
40     hash = "sha256-N8dSL/lFT4NxtahyW7p27XQwyVsfnvx/66YmjwUtHrc=";
41   };
43   mesonFlags = [
44     "-Dfedora=false" # not useful in NixOS or for NixOS users.
45     "-Dgoabackend=${lib.boolToString enableBackend}"
46     "-Ddocumentation=${lib.boolToString enableBackend}"
47     "-Dman=${lib.boolToString enableBackend}"
48     "-Dwebdav=true"
49   ];
51   nativeBuildInputs = [
52     dbus # used for checks and pkg-config to install dbus service/s
53     docbook-xsl-nons # for goa-daemon.xml
54     gettext
55     gi-docgen
56     gobject-introspection
57     libxslt
58     meson
59     ninja
60     pkg-config
61     vala
62     wrapGAppsHook4
63   ];
65   buildInputs = [
66     gcr_4
67     glib
68     glib-networking
69     gtk4
70     libadwaita
71     gvfs # OwnCloud, Google Drive
72     json-glib
73     libkrb5
74     librest_1_0
75     libxml2
76     libsecret
77     libsoup_3
78   ] ++ lib.optionals enableBackend [
79     keyutils
80   ];
82   postFixup = ''
83     # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
84     moveToOutput "share/doc" "$devdoc"
85   '';
87   separateDebugInfo = true;
89   passthru = {
90     updateScript = gnome.updateScript {
91       versionPolicy = "odd-unstable";
92       packageName = "gnome-online-accounts";
93     };
94   };
96   meta = with lib; {
97     homepage = "https://gitlab.gnome.org/GNOME/gnome-online-accounts";
98     description = "Single sign-on framework for GNOME";
99     platforms = platforms.unix;
100     license = licenses.lgpl2Plus;
101     maintainers = teams.gnome.members;
102   };