1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 nix-update-script,
6 meson,
7 ninja,
8 pkg-config,
9 vala,
10 wrapGAppsHook3,
11 clutter,
12 evolution-data-server,
13 folks,
14 geoclue2,
15 geocode-glib_2,
16 granite,
17 gtk3,
18 libchamplain_libsoup3,
19 libgee,
20 libhandy,
21 libical,
22 libportal-gtk3,
23}:
24
25stdenv.mkDerivation rec {
26 pname = "elementary-calendar";
27 version = "8.0.0";
28
29 src = fetchFromGitHub {
30 owner = "elementary";
31 repo = "calendar";
32 rev = version;
33 sha256 = "sha256-gBQfrRSaw3TKcsSAQh/hcTpBoEQstGdLbppoZ1/Z1q8=";
34 };
35
36 nativeBuildInputs = [
37 meson
38 ninja
39 pkg-config
40 vala
41 wrapGAppsHook3
42 ];
43
44 buildInputs = [
45 clutter
46 evolution-data-server
47 folks
48 geoclue2
49 geocode-glib_2
50 granite
51 gtk3
52 libchamplain_libsoup3
53 libgee
54 libhandy
55 libical
56 libportal-gtk3
57 ];
58
59 passthru = {
60 updateScript = nix-update-script { };
61 };
62
63 meta = with lib; {
64 description = "Desktop calendar app designed for elementary OS";
65 homepage = "https://github.com/elementary/calendar";
66 license = licenses.gpl3Plus;
67 platforms = platforms.linux;
68 teams = [ teams.pantheon ];
69 mainProgram = "io.elementary.calendar";
70 };
71}