1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
{ stdenv
, lib
, fetchurl
, substituteAll
, pkg-config
, gnome
, python3
, gobject-introspection
, gettext
, libsoup
, libxml2
, libsecret
, icu
, sqlite
, tzdata
, libcanberra-gtk3
, gcr
, p11-kit
, db
, nspr
, nss
, libical
, gperf
, wrapGAppsHook
, glib-networking
, pcre
, vala
, cmake
, ninja
, libkrb5
, openldap
, webkitgtk
, libaccounts-glib
, json-glib
, glib
, gtk3
, libphonenumber
, gnome-online-accounts
, libgweather
, libgdata
, gsettings-desktop-schemas
, boost
, protobuf
}:
stdenv.mkDerivation rec {
pname = "evolution-data-server";
version = "3.44.2";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "Ltcq/k1rsXD4co+uoJB/7hAhLf3nqfq4L7zIPQ8i8Cg=";
};
patches = [
(substituteAll {
src = ./fix-paths.patch;
inherit tzdata;
})
];
prePatch = ''
substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch \
--subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \
--subst-var-by GDS_GSETTINGS_PATH ${glib.getSchemaPath gsettings-desktop-schemas}
patches="$patches $PWD/hardcode-gsettings.patch"
'';
nativeBuildInputs = [
cmake
ninja
pkg-config
gettext
python3
gperf
wrapGAppsHook
gobject-introspection
vala
];
buildInputs = [
glib
libsoup
libxml2
gtk3
gnome-online-accounts
gcr
p11-kit
libgweather
libgdata
libaccounts-glib
json-glib
icu
sqlite
libkrb5
openldap
webkitgtk
glib-networking
libcanberra-gtk3
pcre
libphonenumber
boost
protobuf
];
propagatedBuildInputs = [
db
libsecret
nss
nspr
libical
libgdata # needed for GObject inspection, https://gitlab.gnome.org/GNOME/evolution-data-server/-/merge_requests/57/diffs
libsoup
];
cmakeFlags = [
"-DENABLE_UOA=OFF"
"-DENABLE_VALA_BINDINGS=ON"
"-DENABLE_INTROSPECTION=ON"
"-DCMAKE_SKIP_BUILD_RPATH=OFF"
"-DINCLUDE_INSTALL_DIR=${placeholder "dev"}/include"
"-DWITH_PHONENUMBER=ON"
"-DWITH_GWEATHER4=ON"
];
passthru = {
updateScript = gnome.updateScript {
packageName = "evolution-data-server";
versionPolicy = "odd-unstable";
};
};
meta = with lib; {
description = "Unified backend for programs that work with contacts, tasks, and calendar information";
homepage = "https://wiki.gnome.org/Apps/Evolution";
license = licenses.lgpl2Plus;
maintainers = teams.gnome.members;
platforms = platforms.linux;
};
}
|