summary refs log tree commit diff
path: root/pkgs/desktops/gnome-3/misc/california
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops/gnome-3/misc/california')
-rw-r--r--pkgs/desktops/gnome-3/misc/california/0002-Build-with-evolution-data-server-3.13.90.patch39
-rw-r--r--pkgs/desktops/gnome-3/misc/california/default.nix39
2 files changed, 78 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome-3/misc/california/0002-Build-with-evolution-data-server-3.13.90.patch b/pkgs/desktops/gnome-3/misc/california/0002-Build-with-evolution-data-server-3.13.90.patch
new file mode 100644
index 000000000000..c229cc96094f
--- /dev/null
+++ b/pkgs/desktops/gnome-3/misc/california/0002-Build-with-evolution-data-server-3.13.90.patch
@@ -0,0 +1,39 @@
+diff --git a/configure.ac b/configure.ac
+index 8a94642..1ca6426 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -27,7 +27,7 @@ AC_SUBST(LDFLAGS)
+ GLIB_REQUIRED=2.38.0
+ GTK_REQUIRED=3.12.2
+ GEE_REQUIRED=0.10.5
+-ECAL_REQUIRED=3.8.5
++ECAL_REQUIRED=3.13.90
+ LIBSOUP_REQUIRED=2.44
+ GDATA_REQUIRED=0.14.0
+ GOA_REQUIRED=3.8.3
+diff --git a/src/backing/eds/backing-eds-calendar-source.vala b/src/backing/eds/backing-eds-calendar-source.vala
+index ee6a572..5009b5d 100644
+--- a/src/backing/eds/backing-eds-calendar-source.vala
++++ b/src/backing/eds/backing-eds-calendar-source.vala
+@@ -256,7 +256,7 @@ internal class EdsCalendarSource : CalendarSource {
+
+     // Invoked by EdsStore prior to making it available outside of unit
+     internal async void open_async(Cancellable? cancellable) throws Error {
+-        client = (E.CalClient) yield E.CalClient.connect(eds_source, E.CalClientSourceType.EVENTS,
++        client = (E.CalClient) yield E.CalClient.connect(eds_source, E.CalClientSourceType.EVENTS, 1,
+             cancellable);
+
+         client.bind_property("readonly", this, PROP_READONLY, BindingFlags.SYNC_CREATE);
+diff --git a/vapi/libecal-1.2.vapi b/vapi/libecal-1.2.vapi
+index 6ead3ec..46fd711 100644
+--- a/vapi/libecal-1.2.vapi
++++ b/vapi/libecal-1.2.vapi
+@@ -23,7 +23,7 @@ namespace E {
+		public bool check_save_schedules ();
+		public static bool check_timezones (iCal.icalcomponent comp, GLib.List comps, GLib.Callback tzlookup, void* ecalclient, GLib.Cancellable cancellable) throws GLib.Error;
+		[CCode (finish_name = "e_cal_client_connect_finish")]
+-		public static async unowned E.Client connect (E.Source source, E.CalClientSourceType source_type, GLib.Cancellable cancellable) throws GLib.Error;
++		public static async unowned E.Client connect (E.Source source, E.CalClientSourceType source_type, uint32 wait_for_connected_seconds, GLib.Cancellable cancellable) throws GLib.Error;
+		public static unowned E.Client connect_sync (E.Source source, E.CalClientSourceType source_type, GLib.Cancellable cancellable) throws GLib.Error;
+		[CCode (finish_name = "e_cal_client_create_object_finish")]
+		public async void create_object (iCal.icalcomponent icalcomp, GLib.Cancellable? cancellable, out string out_uid) throws GLib.Error;
diff --git a/pkgs/desktops/gnome-3/misc/california/default.nix b/pkgs/desktops/gnome-3/misc/california/default.nix
new file mode 100644
index 000000000000..ca0450dc7f94
--- /dev/null
+++ b/pkgs/desktops/gnome-3/misc/california/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, intltool, pkgconfig, gtk3, vala_0_32, makeWrapper
+, gnome3, glib, libsoup, libgdata, sqlite, itstool, xdg_utils }:
+
+let
+  majorVersion = "0.4";
+in
+stdenv.mkDerivation rec {
+  name = "california-${majorVersion}.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/california/${majorVersion}/${name}.tar.xz";
+    sha256 = "1dky2kllv469k8966ilnf4xrr7z35pq8mdvs7kwziy59cdikapxj";
+  };
+
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+
+  buildInputs = [ makeWrapper intltool pkgconfig vala_0_32 glib gtk3 gnome3.libgee
+    libsoup libgdata gnome3.gnome_online_accounts gnome3.evolution_data_server
+    sqlite itstool xdg_utils gnome3.gsettings_desktop_schemas ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/california" \
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.defaultIconTheme}/share:${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH:${gnome3.gsettings_desktop_schemas}/share"
+  '';
+
+  enableParallelBuilding = true;
+
+  # Apply fedoras patch to build with evolution-data-server >3.13
+  patches = [ ./0002-Build-with-evolution-data-server-3.13.90.patch ];
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/Apps/California;
+    description = "Calendar application for GNOME 3";
+    maintainers = with maintainers; [ pSub ];
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
+  };
+}