From 7ff721258a9591954cd3170f6ff659a390c73678 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 12 Nov 2018 11:16:36 +0100 Subject: [PATCH 01/36] Rebuilt for evolution-data-server soname bump --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index fc5ed82..9b6135a 100644 --- a/almanah.spec +++ b/almanah.spec @@ -3,7 +3,7 @@ Name: almanah Version: 0.11.1 -Release: 21%{?dist} +Release: 22%{?dist} Summary: Application for keeping an encrypted diary Group: Applications/Productivity License: GPLv3+ @@ -76,6 +76,9 @@ fi %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Nov 12 2018 Milan Crha - 0.11.1-22 +- Rebuilt for evolution-data-server soname bump + * Thu Jul 12 2018 Fedora Release Engineering - 0.11.1-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From f53f7e3d08205d29236363596223d488c8f9ed70 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:17:38 +0100 Subject: [PATCH 02/36] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- almanah.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 9b6135a..a74a9c7 100644 --- a/almanah.spec +++ b/almanah.spec @@ -5,7 +5,6 @@ Name: almanah Version: 0.11.1 Release: 22%{?dist} Summary: Application for keeping an encrypted diary -Group: Applications/Productivity License: GPLv3+ URL: http://tecnocode.co.uk/projects/almanah/ Source0: http://ftp.gnome.org/pub/GNOME/sources/almanah/%{majorVersion}/%{name}-%{version}.tar.xz From c61384ec136fd0f86bf00308ed430e0e2e328589 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 13:12:10 +0000 Subject: [PATCH 03/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index a74a9c7..4ab7379 100644 --- a/almanah.spec +++ b/almanah.spec @@ -3,7 +3,7 @@ Name: almanah Version: 0.11.1 -Release: 22%{?dist} +Release: 23%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ URL: http://tecnocode.co.uk/projects/almanah/ @@ -75,6 +75,9 @@ fi %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 0.11.1-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Mon Nov 12 2018 Milan Crha - 0.11.1-22 - Rebuilt for evolution-data-server soname bump From 7b8252027df5a06dcbaa06c15be9f95fde85dbc9 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Fri, 3 May 2019 09:31:33 +0200 Subject: [PATCH 04/36] Resolves: #1705678 (Remove Evolution runtime dependency) Also added upstream patch for a possible build break and fixed two bogus dates in the changelog part. --- almanah-build-break.patch | 240 +++++++++++++++++++++++++++ almanah-remove-evo-runtime-dep.patch | 185 +++++++++++++++++++++ almanah.spec | 25 ++- 3 files changed, 445 insertions(+), 5 deletions(-) create mode 100644 almanah-build-break.patch create mode 100644 almanah-remove-evo-runtime-dep.patch diff --git a/almanah-build-break.patch b/almanah-build-break.patch new file mode 100644 index 0000000..d22107c --- /dev/null +++ b/almanah-build-break.patch @@ -0,0 +1,240 @@ +From 06dc5b67203730e1dc8a9362dc74c5d72de577b0 Mon Sep 17 00:00:00 2001 +From: Philip Withnall +Date: Mon, 12 Dec 2016 14:54:49 +0000 +Subject: [PATCH] build: Update glib-mkenums build rules +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Update the build rules to: + • Atomically replace the target files to avoid race conditions while + building. + • Not distribute the generated files, as they are generated. + • Use template files instead of putting C and escaped newlines in + Makefile.am in some grotesque display of nesting. + • Rename from event-factory-builtins.[ch] to enums.[ch] to more + accurately reflect what they contain. + +This might fix https://bugzilla.redhat.com/show_bug.cgi?id=1403508. + +diff -up almanah-0.11.1/src/enums.c.template.build-break almanah-0.11.1/src/enums.c.template +--- almanah-0.11.1/src/enums.c.template.build-break 2019-05-03 08:57:58.860406374 +0200 ++++ almanah-0.11.1/src/enums.c.template 2019-05-03 08:57:58.860406374 +0200 +@@ -0,0 +1,56 @@ ++/*** BEGIN file-header ***/ ++/* vim:set et sw=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e2s: */ ++/* ++ * Almanah ++ * Copyright © Philip Withnall 2016 ++ * ++ * Almanah is free software: you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation, either version 3 of the License, or ++ * (at your option) any later version. ++ * ++ * Almanah is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with Almanah. If not, see . ++ */ ++ ++#include "event-factory.h" ++#include "enums.h" ++ ++/*** END file-header ***/ ++ ++/*** BEGIN file-production ***/ ++/* enumerations from "@filename@" */ ++/*** END file-production ***/ ++ ++/*** BEGIN value-header ***/ ++GType ++@enum_name@_get_type (void) ++{ ++ static volatile gsize g_define_type_id__volatile = 0; ++ ++ if (g_once_init_enter (&g_define_type_id__volatile)) ++ { ++ static const G@Type@Value values[] = { ++/*** END value-header ***/ ++ ++/*** BEGIN value-production ***/ ++ { @VALUENAME@, "@VALUENAME@", "@valuenick@" }, ++/*** END value-production ***/ ++ ++/*** BEGIN value-tail ***/ ++ { 0, NULL, NULL } ++ }; ++ GType g_define_type_id = ++ g_@type@_register_static (g_intern_static_string ("@EnumName@"), values); ++ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); ++ } ++ ++ return g_define_type_id__volatile; ++} ++ ++/*** END value-tail ***/ +diff -up almanah-0.11.1/src/enums.h.template.build-break almanah-0.11.1/src/enums.h.template +--- almanah-0.11.1/src/enums.h.template.build-break 2019-05-03 08:57:58.860406374 +0200 ++++ almanah-0.11.1/src/enums.h.template 2019-05-03 08:57:58.860406374 +0200 +@@ -0,0 +1,43 @@ ++/*** BEGIN file-header ***/ ++/* vim:set et sw=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e2s: */ ++/* ++ * Almanah ++ * Copyright © Philip Withnall 2016 ++ * ++ * Almanah is free software: you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation, either version 3 of the License, or ++ * (at your option) any later version. ++ * ++ * Almanah is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with Almanah. If not, see . ++ */ ++ ++#ifndef ALMANAH_ENUMS_H ++#define ALMANAH_ENUMS_H ++ ++#include ++ ++G_BEGIN_DECLS ++/*** END file-header ***/ ++ ++/*** BEGIN file-production ***/ ++ ++/* enumerations from "@filename@" */ ++/*** END file-production ***/ ++ ++/*** BEGIN value-header ***/ ++GType @enum_name@_get_type (void) G_GNUC_CONST; ++#define @ENUMPREFIX@_TYPE_@ENUMSHORT@ (@enum_name@_get_type ()) ++/*** END value-header ***/ ++ ++/*** BEGIN file-tail ***/ ++G_END_DECLS ++ ++#endif ++/*** END file-tail ***/ +diff -up almanah-0.11.1/src/event-factory.c.build-break almanah-0.11.1/src/event-factory.c +--- almanah-0.11.1/src/event-factory.c.build-break 2014-09-24 19:24:12.000000000 +0200 ++++ almanah-0.11.1/src/event-factory.c 2019-05-03 08:57:58.860406374 +0200 +@@ -20,7 +20,7 @@ + #include + + #include "event-factory.h" +-#include "event-factory-builtins.h" ++#include "enums.h" + + static void almanah_event_factory_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec); + +diff -up almanah-0.11.1/src/event-manager.c.build-break almanah-0.11.1/src/event-manager.c +--- almanah-0.11.1/src/event-manager.c.build-break 2014-09-24 19:24:12.000000000 +0200 ++++ almanah-0.11.1/src/event-manager.c 2019-05-03 08:57:58.861406374 +0200 +@@ -21,7 +21,7 @@ + + #include "event-manager.h" + #include "event-factory.h" +-#include "event-factory-builtins.h" ++#include "enums.h" + + typedef struct { + AlmanahEventFactoryType type_id; +diff -up almanah-0.11.1/src/Makefile.am.build-break almanah-0.11.1/src/Makefile.am +--- almanah-0.11.1/src/Makefile.am.build-break 2014-09-24 19:33:27.000000000 +0200 ++++ almanah-0.11.1/src/Makefile.am 2019-05-03 08:58:25.483406005 +0200 +@@ -1,8 +1,11 @@ + bin_PROGRAMS = almanah + ++BUILT_SOURCES = ++EXTRA_DIST = ++CLEANFILES = ++ + almanah_SOURCES = \ + $(ALMANAH_MARSHAL_FILES) \ +- $(ALMANAH_ENUM_FILES) \ + main.c \ + application.c \ + application.h \ +@@ -80,6 +83,11 @@ almanah_SOURCES += \ + preferences-dialog.h + endif + ++nodist_almanah_SOURCES = \ ++ $(almanah_enum_header_file) \ ++ $(almanah_enum_source_file) \ ++ $(NULL) ++ + almanah_CPPFLAGS = \ + -DPACKAGE_LOCALE_DIR=\""$(datadir)/locale"\" \ + -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ +@@ -114,31 +122,36 @@ almanah-marshal.c: almanah-marshal.list + $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=almanah_marshal --header --body $< > $@ + + # Enums +-ALMANAH_ENUM_FILES = \ +- event-factory-builtins.h \ +- event-factory-builtins.c +- +-event-factory-builtins.h: event-factory.h Makefile +- $(AM_V_GEN)(cd $(srcdir) && $(GLIB_MKENUMS) \ +- --fhead "#ifndef __ALMANAH_EVENT_FACTORY_BUILTINS_H__\n#define __ALMANAH_EVENT_FACTORY_BUILTINS_H__\n\n#include \n\nG_BEGIN_DECLS\n" \ +- --fprod "/* enumerations from \"@filename@\" */\n" \ +- --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define ALMANAH_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ +- --ftail "G_END_DECLS\n\n#endif /* __ALMANAH_EVENT_FACTORY_BUILTINS_H__ */" \ +- event-factory.h) > $(@F) +- +-event-factory-builtins.c: event-factory.h Makefile event-factory-builtins.h +- $(AM_V_GEN)(cd $(srcdir) && $(GLIB_MKENUMS) \ +- --fhead "#include \"event-factory.h\"\n#include \"event-factory-builtins.h\"" \ +- --fprod "\n/* enumerations from \"@filename@\" */" \ +- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \ +- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ +- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \ +- event-factory.h) > $(@F) +- +-CLEANFILES = \ +- $(ALMANAH_MARSHAL_FILES) \ +- $(ALMANAH_ENUM_FILES) ++almanah_enum_header_file = enums.h ++almanah_enum_source_file = enums.c ++almanah_enum_prerequisites = event-factory.h ++ ++$(almanah_enum_header_file): $(almanah_enum_header_file:%=%.template) $(almanah_enum_prerequisites) ++ $(AM_V_GEN)$(GLIB_MKENUMS) --template $< \ ++ $(patsubst %,$(srcdir)/%,$(almanah_enum_prerequisites)) \ ++ > $@.tmp && mv $@.tmp $@ ++ ++$(almanah_enum_source_file): $(almanah_enum_source_file:%=%.template) $(almanah_enum_prerequisites) ++ $(AM_V_GEN)$(GLIB_MKENUMS) --template $< \ ++ $(patsubst %,$(srcdir)/%,$(almanah_enum_prerequisites)) \ ++ > $@.tmp && mv $@.tmp $@ ++ ++EXTRA_DIST += \ ++ $(almanah_enum_header_file:%=%.template) \ ++ $(almanah_enum_source_file:%=%.template) \ ++ $(NULL) ++BUILT_SOURCES += \ ++ $(almanah_enum_header_file) \ ++ $(almanah_enum_source_file) \ ++ $(NULL) ++CLEANFILES += \ ++ $(almanah_enum_header_file) \ ++ $(almanah_enum_source_file) \ ++ $(NULL) ++ ++CLEANFILES += \ ++ $(ALMANAH_MARSHAL_FILES) + +-EXTRA_DIST = almanah-marshal.list ++EXTRA_DIST += almanah-marshal.list + + -include $(top_srcdir)/git.mk diff --git a/almanah-remove-evo-runtime-dep.patch b/almanah-remove-evo-runtime-dep.patch new file mode 100644 index 0000000..8ebedc7 --- /dev/null +++ b/almanah-remove-evo-runtime-dep.patch @@ -0,0 +1,185 @@ +From 54ccb8255eaf136a853acef4666b561a561654f2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=81lvaro=20Pe=C3=B1a?= +Date: Mon, 9 Nov 2015 11:27:26 +0100 +Subject: [PATCH] events: Removed Evolution runtime dependency + +We have a runtime dependecy in Almanah because we check for the +org.gnome.evolution.calendar settings to read the timezone, so just use +the EDS e_cal_util_get_system_timezone_location and watch for changes +in /etc/timezone + +https://bugzilla.gnome.org/show_bug.cgi?id=745497 +--- + configure.ac | 3 +- + src/event-factories/calendar-client.c | 71 ++++++++++----------------- + 2 files changed, 29 insertions(+), 45 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 243dfb9..88df7f3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -124,7 +124,8 @@ AC_SUBST(STANDARD_CFLAGS) + AC_SUBST(STANDARD_LIBS) + + dnl Evolution +-PKG_CHECK_MODULES(EVO, libecal-1.2 >= 3.5.91 libedataserver-1.2, have_evo=yes, have_evo=no) ++EDS_MIN_VERSION=2.28 ++PKG_CHECK_MODULES(EVO, libecal-1.2 >= 3.5.91 libedataserver-1.2 >= $EDS_MIN_VERSION, have_evo=yes, have_evo=no) + if test "x$have_evo" = "xyes"; then + AC_DEFINE(HAVE_EVO, 1, [Defined if libecal-1.2 is installed]) + fi +diff --git a/src/event-factories/calendar-client.c b/src/event-factories/calendar-client.c +index 7cd6187..c529dbe 100644 +--- a/src/event-factories/calendar-client.c ++++ b/src/event-factories/calendar-client.c +@@ -1,5 +1,7 @@ ++/* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 2; tab-width: 2-*- */ + /* + * Copyright (C) 2004 Free Software Foundation, Inc. ++ * Copyright (C) 2015 Álvaro Peña + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as +@@ -19,6 +21,9 @@ + * William Jon McCann + * Martin Grimme + * Christian Kellner ++ * ++ * Modified by: ++ * Álvaro Peña + */ + + #include +@@ -77,8 +82,7 @@ struct _CalendarClientPrivate + + icaltimezone *zone; + +- guint zone_listener; +- GSettings *settings; ++ GFileMonitor *tz_monitor; + + guint day; + guint month; +@@ -225,45 +229,29 @@ calendar_client_class_init (CalendarClientClass *klass) + 0); + } + +-/* Timezone code adapted from evolution/calendar/gui/calendar-config.c */ +-/* The current timezone, e.g. "Europe/London". It may be NULL, in which case +- you should assume UTC. */ +-static gchar * +-calendar_client_config_get_timezone (GSettings *settings) +-{ +- char *location; +- +- if (g_settings_get_boolean (settings, "use-system-timezone")) +- location = e_cal_util_get_system_timezone_location (); +- else +- location = g_settings_get_string (settings, "timezone"); +- +- return location; +-} +- + static icaltimezone * +-calendar_client_config_get_icaltimezone (GSettings *settings) ++calendar_client_config_get_icaltimezone (void) + { + char *location; + icaltimezone *zone = NULL; +- +- location = calendar_client_config_get_timezone (settings); ++ ++ location = e_cal_util_get_system_timezone_location (); + if (!location) + return icaltimezone_get_utc_timezone (); + + zone = icaltimezone_get_builtin_timezone (location); + g_free (location); +- ++ + return zone; + } + + static void +-calendar_client_set_timezone (CalendarClient *client) ++calendar_client_set_timezone (CalendarClient *client) + { + GSList *l; + GSList *esources; + +- client->priv->zone = calendar_client_config_get_icaltimezone (client->priv->settings); ++ client->priv->zone = calendar_client_config_get_icaltimezone (); + + esources = calendar_sources_get_appointment_sources (client->priv->calendar_sources); + for (l = esources; l; l = l->next) { +@@ -274,13 +262,13 @@ calendar_client_set_timezone (CalendarClient *client) + } + + static void +-calendar_client_timezone_changed_cb (GSettings *settings, +- const gchar *key, +- CalendarClient *client) ++calendar_client_timezone_changed_cb (G_GNUC_UNUSED GFileMonitor *monitor, ++ G_GNUC_UNUSED GFile *file, ++ G_GNUC_UNUSED GFile *other_file, ++ G_GNUC_UNUSED GFileMonitorEvent *event, ++ gpointer user_data) + { +- if (g_strcmp0 (key, "timezone") == 0 || +- g_strcmp0 (key, "use-system-timezone") == 0) +- calendar_client_set_timezone (client); ++ calendar_client_set_timezone (CALENDAR_CLIENT (user_data)); + } + + static void +@@ -365,11 +353,11 @@ static void + calendar_client_init (CalendarClient *client) + { + GSList *esources; ++ GFile *tz; + + client->priv = CALENDAR_CLIENT_GET_PRIVATE (client); + + client->priv->calendar_sources = calendar_sources_get (); +- client->priv->settings = g_settings_new ("org.gnome.evolution.calendar"); + + esources = calendar_sources_get_appointment_sources (client->priv->calendar_sources); + client->priv->appointment_sources = +@@ -393,9 +381,13 @@ calendar_client_init (CalendarClient *client) + G_CALLBACK (calendar_client_task_sources_changed), + client); + +- client->priv->zone_listener = g_signal_connect (client->priv->settings, "changed", +- G_CALLBACK (calendar_client_timezone_changed_cb), +- client); ++ tz = g_file_new_for_path ("/etc/localtime"); ++ client->priv->tz_monitor = g_file_monitor_file (tz, G_FILE_MONITOR_NONE, NULL, NULL); ++ g_object_unref (tz); ++ if (client->priv->tz_monitor == NULL) ++ g_warning ("Can't monitor /etc/localtime for changes"); ++ else ++ g_signal_connect (client->priv->tz_monitor, "changed", G_CALLBACK (calendar_client_timezone_changed_cb), client); + + client->priv->day = G_MAXUINT; + client->priv->month = G_MAXUINT; +@@ -408,16 +400,7 @@ calendar_client_finalize (GObject *object) + CalendarClient *client = CALENDAR_CLIENT (object); + GSList *l; + +- if (client->priv->zone_listener) +- { +- g_signal_handler_disconnect (client->priv->settings, +- client->priv->zone_listener); +- client->priv->zone_listener = 0; +- } +- +- if (client->priv->settings) +- g_object_unref (client->priv->settings); +- client->priv->settings = NULL; ++ g_clear_object (&client->priv->tz_monitor); + + for (l = client->priv->appointment_sources; l; l = l->next) + { +-- +2.18.1 + diff --git a/almanah.spec b/almanah.spec index 4ab7379..59e24e8 100644 --- a/almanah.spec +++ b/almanah.spec @@ -3,11 +3,15 @@ Name: almanah Version: 0.11.1 -Release: 23%{?dist} +Release: 24%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ URL: http://tecnocode.co.uk/projects/almanah/ Source0: http://ftp.gnome.org/pub/GNOME/sources/almanah/%{majorVersion}/%{name}-%{version}.tar.xz +Patch01: almanah-build-break.patch +Patch02: almanah-remove-evo-runtime-dep.patch +BuildRequires: autoconf +BuildRequires: automake BuildRequires: gcc BuildRequires: gettext BuildRequires: gpgme-devel @@ -18,7 +22,9 @@ BuildRequires: gtk3-devel BuildRequires: gtkspell-devel %endif BuildRequires: intltool +BuildRequires: libtool BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib-devel BuildRequires: pkgconfig(libecal-1.2) BuildRequires: pkgconfig(libedataserver-1.2) %if 0%{fedora} <= 15 @@ -37,12 +43,18 @@ diary entries using multiple events. %prep %setup -q +%patch01 -p1 -b .build-break +%patch02 -p1 -b .remove-evo-runtime-dep + sed -e 's/_//' \ -e 's/=Diary/=Almanah/' \ -i data/%{name}.desktop.in %build -CFLAGS="${RPM_OPT_FLAGS} -D_FILE_OFFSET_BITS=64" %configure --enable-encryption \ +autoreconf -fi +libtoolize +intltoolize --force +CFLAGS="${RPM_OPT_FLAGS} -D_FILE_OFFSET_BITS=64 -Wno-deprecated-declarations" %configure --enable-encryption \ %if 0%{?spellchecking} --enable-spell-checking %else @@ -70,11 +82,14 @@ fi %{_datadir}/icons/hicolor/*/apps/%{name}.png %{_datadir}/icons/hicolor/*/actions/%{name}*.svg %{_datadir}/applications/%{name}.desktop -%{_datadir}/appdata/%{name}.appdata.xml +%{_datadir}/metainfo/%{name}.appdata.xml %{_datadir}/GConf/gsettings/%{name}.convert %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Fri May 03 2019 Milan Crha - 0.11.1-24 +- Add patch for RH bug #1705678 (Remove Evolution runtime dependency) + * Thu Jan 31 2019 Fedora Release Engineering - 0.11.1-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild @@ -222,13 +237,13 @@ fi * Mon Oct 4 2010 Bill Nottingham - 0.7.3-4 - Release bump and build to fix libedataserver broken dep -* Mon Jun 26 2010 Caolán McNamara - 0.7.3-3 +* Sat Jun 26 2010 Caolán McNamara - 0.7.3-3 - Release bump and build to fix libedataserver broken dep * Fri Jun 11 2010 Mike McGrath - 0.7.3-2 - Release bump and build to fix libedataserver broken dep -* Sun May 22 2010 Andreas Osowski - 0.7.3-1 +* Sat May 22 2010 Andreas Osowski - 0.7.3-1 - Update to 0.7.3 - Improved the UI appearance a little by adding some padding - Updated translations From b2d9b7a9411beb3bbab9f6d10f05027eb0536c9f Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Tue, 21 May 2019 12:17:38 +0200 Subject: [PATCH 05/36] Add patch to build against newer evolution-data-server (libecal-2.0) --- almanah-eds-libecal-2.0.patch | 826 ++++++++++++++++++++++++++++++++++ almanah.spec | 9 +- 2 files changed, 833 insertions(+), 2 deletions(-) create mode 100644 almanah-eds-libecal-2.0.patch diff --git a/almanah-eds-libecal-2.0.patch b/almanah-eds-libecal-2.0.patch new file mode 100644 index 0000000..8b7caad --- /dev/null +++ b/almanah-eds-libecal-2.0.patch @@ -0,0 +1,826 @@ +diff -up almanah-0.11.1/configure.ac.eds-libecal-2.0 almanah-0.11.1/configure.ac +--- almanah-0.11.1/configure.ac.eds-libecal-2.0 2019-05-20 18:55:45.843868981 +0200 ++++ almanah-0.11.1/configure.ac 2019-05-20 18:57:55.032867194 +0200 +@@ -85,10 +85,10 @@ AC_SUBST(STANDARD_CFLAGS) + AC_SUBST(STANDARD_LIBS) + + dnl Evolution +-EDS_MIN_VERSION=2.28 +-PKG_CHECK_MODULES(EVO, libecal-1.2 >= 3.5.91 libedataserver-1.2 >= $EDS_MIN_VERSION, have_evo=yes, have_evo=no) ++EDS_MIN_VERSION=3.33.2 ++PKG_CHECK_MODULES(EVO, libecal-2.0 >= 3.33.2 libedataserver-1.2 >= $EDS_MIN_VERSION, have_evo=yes, have_evo=no) + if test "x$have_evo" = "xyes"; then +- AC_DEFINE(HAVE_EVO, 1, [Defined if libecal-1.2 is installed]) ++ AC_DEFINE(HAVE_EVO, 1, [Defined if libecal-2.0 is installed]) + fi + AM_CONDITIONAL([HAVE_EVO], [test x$have_evo = xyes]) + +diff -up almanah-0.11.1/src/event-factories/calendar-client.c.eds-libecal-2.0 almanah-0.11.1/src/event-factories/calendar-client.c +--- almanah-0.11.1/src/event-factories/calendar-client.c.eds-libecal-2.0 2019-05-20 18:54:53.984869698 +0200 ++++ almanah-0.11.1/src/event-factories/calendar-client.c 2019-05-21 12:14:34.522938631 +0200 +@@ -80,7 +80,7 @@ struct _CalendarClientPrivate + GSList *appointment_sources; + GSList *task_sources; + +- icaltimezone *zone; ++ ICalTimezone *zone; + + GFileMonitor *tz_monitor; + +@@ -229,17 +229,17 @@ calendar_client_class_init (CalendarClie + 0); + } + +-static icaltimezone * ++static ICalTimezone * + calendar_client_config_get_icaltimezone (void) + { + char *location; +- icaltimezone *zone = NULL; ++ ICalTimezone *zone = NULL; + + location = e_cal_util_get_system_timezone_location (); + if (!location) +- return icaltimezone_get_utc_timezone (); ++ return i_cal_timezone_get_utc_timezone (); + +- zone = icaltimezone_get_builtin_timezone (location); ++ zone = i_cal_timezone_get_builtin_timezone (location); + g_free (location); + + return zone; +@@ -272,51 +272,6 @@ calendar_client_timezone_changed_cb (G_G + } + + static void +-cal_opened_cb (GObject *source_object, +- GAsyncResult *result, +- gpointer user_data) +-{ +- EClient *ecal = E_CLIENT (source_object); +- CalendarClientSource *cl_source = user_data; +- ECalClientSourceType s_type; +- CalendarClient *client = cl_source->client; +- GError *error = NULL; +- +- e_client_open_finish (ecal, result, &error); +- +- s_type = e_cal_client_get_source_type (E_CAL_CLIENT (ecal)); +- +- if (g_error_matches (error, E_CLIENT_ERROR, E_CLIENT_ERROR_BUSY) && +- !e_client_is_opened (ecal)) +- { +- g_clear_error (&error); +- e_client_open (ecal, TRUE, NULL, cal_opened_cb, cl_source); +- return; +- } +- +- if (error) +- { +- if (s_type == E_CAL_CLIENT_SOURCE_TYPE_EVENTS) +- client->priv->appointment_sources = g_slist_remove (client->priv->appointment_sources, +- cl_source); +- else +- client->priv->task_sources = g_slist_remove (client->priv->task_sources, +- cl_source); +- +- calendar_client_source_finalize (cl_source); +- g_free (cl_source); +- +- g_clear_error (&error); +- return; +- } +- +- if (s_type == E_CAL_CLIENT_SOURCE_TYPE_EVENTS) +- calendar_client_update_appointments (client); +- else +- calendar_client_update_tasks (client); +-} +- +-static void + load_calendars (CalendarClient *client, + CalendarEventType type) + { +@@ -337,15 +292,12 @@ load_calendars (CalendarClient *clien + + for (l = clients; l != NULL; l = l->next) + { +- EClient *ecal; + CalendarClientSource *cl_source = l->data; + +- ecal = E_CLIENT (cl_source->cal_client); +- +- if (e_client_is_opened (ecal)) +- continue; +- +- e_client_open (ecal, TRUE, NULL, cal_opened_cb, cl_source); ++ if (type == CALENDAR_EVENT_APPOINTMENT) ++ calendar_client_update_appointments (cl_source->client); ++ else ++ calendar_client_update_tasks (cl_source->client); + } + } + +@@ -523,113 +475,129 @@ make_isodate_for_day_begin (int day, + } + + static time_t +-get_time_from_property (icalcomponent *ical, +- icalproperty_kind prop_kind, +- struct icaltimetype (* get_prop_func) (const icalproperty *prop), +- icaltimezone *default_zone) +-{ +- icalproperty *prop; +- struct icaltimetype ical_time; +- icalparameter *param; +- icaltimezone *time_zone = NULL; +- +- prop = icalcomponent_get_first_property (ical, prop_kind); ++get_time_from_property (ICalComponent *ical, ++ ICalPropertyKind prop_kind, ++ ICalTime * (* get_prop_func) (ICalProperty *prop), ++ ICalTimezone *default_zone) ++{ ++ ICalProperty *prop; ++ ICalTime *ical_time; ++ ICalParameter *param; ++ ICalTimezone *time_zone = NULL; ++ time_t retval; ++ ++ prop = i_cal_component_get_first_property (ical, prop_kind); + if (!prop) + return 0; + + ical_time = get_prop_func (prop); + +- param = icalproperty_get_first_parameter (prop, ICAL_TZID_PARAMETER); ++ param = i_cal_property_get_first_parameter (prop, I_CAL_TZID_PARAMETER); + if (param) +- time_zone = icaltimezone_get_builtin_timezone_from_tzid (icalparameter_get_tzid (param)); +- else if (icaltime_is_utc (ical_time)) +- time_zone = icaltimezone_get_utc_timezone (); ++ time_zone = i_cal_timezone_get_builtin_timezone_from_tzid (i_cal_parameter_get_tzid (param)); ++ else if (i_cal_time_is_utc (ical_time)) ++ time_zone = i_cal_timezone_get_utc_timezone (); + else + time_zone = default_zone; + +- return icaltime_as_timet_with_zone (ical_time, time_zone); ++ retval = i_cal_time_as_timet_with_zone (ical_time, time_zone); ++ ++ g_clear_object (&ical_time); ++ g_clear_object (¶m); ++ g_clear_object (&prop); ++ ++ return retval; + } + + static char * +-get_ical_uid (icalcomponent *ical) ++get_ical_uid (ICalComponent *ical) + { +- return g_strdup (icalcomponent_get_uid (ical)); ++ return g_strdup (i_cal_component_get_uid (ical)); + } + + static char * +-get_ical_rid (icalcomponent *ical) ++get_ical_rid (ICalComponent *ical) + { +- icalproperty *prop; +- struct icaltimetype ical_time; +- +- prop = icalcomponent_get_first_property (ical, ICAL_RECURRENCEID_PROPERTY); +- if (!prop) +- return NULL; +- +- ical_time = icalproperty_get_recurrenceid (prop); +- +- return icaltime_is_valid_time (ical_time) && !icaltime_is_null_time (ical_time) ? +- g_strdup (icaltime_as_ical_string (ical_time)) : NULL; ++ return e_cal_util_component_get_recurid_as_string (ical); + } + + static char * +-get_ical_summary (icalcomponent *ical) ++get_ical_summary (ICalComponent *ical) + { +- icalproperty *prop; ++ ICalProperty *prop; ++ char *retval; + +- prop = icalcomponent_get_first_property (ical, ICAL_SUMMARY_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, I_CAL_SUMMARY_PROPERTY); + if (!prop) + return NULL; + +- return g_strdup (icalproperty_get_summary (prop)); ++ retval = g_strdup (i_cal_property_get_summary (prop)); ++ ++ g_object_unref (prop); ++ ++ return retval; + } + + static char * +-get_ical_description (icalcomponent *ical) ++get_ical_description (ICalComponent *ical) + { +- icalproperty *prop; ++ ICalProperty *prop; ++ char *retval; + +- prop = icalcomponent_get_first_property (ical, ICAL_DESCRIPTION_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, I_CAL_DESCRIPTION_PROPERTY); + if (!prop) + return NULL; + +- return g_strdup (icalproperty_get_description (prop)); ++ retval = g_strdup (i_cal_property_get_description (prop)); ++ ++ g_object_unref (prop); ++ ++ return retval; + } + + static inline time_t +-get_ical_start_time (icalcomponent *ical, +- icaltimezone *default_zone) ++get_ical_start_time (ICalComponent *ical, ++ ICalTimezone *default_zone) + { + return get_time_from_property (ical, +- ICAL_DTSTART_PROPERTY, +- icalproperty_get_dtstart, ++ I_CAL_DTSTART_PROPERTY, ++ i_cal_property_get_dtstart, + default_zone); + } + + static inline time_t +-get_ical_end_time (icalcomponent *ical, +- icaltimezone *default_zone) ++get_ical_end_time (ICalComponent *ical, ++ ICalTimezone *default_zone) + { + return get_time_from_property (ical, +- ICAL_DTEND_PROPERTY, +- icalproperty_get_dtend, ++ I_CAL_DTEND_PROPERTY, ++ i_cal_property_get_dtend, + default_zone); + } + + static gboolean +-get_ical_is_all_day (icalcomponent *ical, ++get_ical_is_all_day (ICalComponent *ical, + time_t start_time, +- icaltimezone *default_zone) ++ ICalTimezone *default_zone) + { +- icalproperty *prop; +- struct tm *start_tm; +- time_t end_time; +- struct icaldurationtype duration; +- struct icaltimetype start_icaltime; ++ ICalProperty *prop; ++ struct tm *start_tm; ++ time_t end_time; ++ ICalDuration *duration; ++ ICalTime *start_icaltime; ++ gboolean retval; + +- start_icaltime = icalcomponent_get_dtstart (ical); +- if (start_icaltime.is_date) +- return TRUE; ++ start_icaltime = i_cal_component_get_dtstart (ical); ++ if (!start_icaltime) ++ return FALSE; ++ ++ if (i_cal_time_is_date (start_icaltime)) ++ { ++ g_object_unref (start_icaltime); ++ return TRUE; ++ } ++ ++ g_clear_object (&start_icaltime); + + start_tm = gmtime (&start_time); + if (start_tm->tm_sec != 0 || +@@ -640,69 +608,80 @@ get_ical_is_all_day (icalcomponent *ical + if ((end_time = get_ical_end_time (ical, default_zone))) + return (end_time - start_time) % 86400 == 0; + +- prop = icalcomponent_get_first_property (ical, ICAL_DURATION_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, I_CAL_DURATION_PROPERTY); + if (!prop) + return FALSE; + +- duration = icalproperty_get_duration (prop); ++ duration = i_cal_property_get_duration (prop); ++ ++ retval = i_cal_duration_as_int (duration) % 86400 == 0; + +- return icaldurationtype_as_int (duration) % 86400 == 0; ++ g_object_unref (duration); ++ g_object_unref (prop); ++ ++ return retval; + } + + static inline time_t +-get_ical_due_time (icalcomponent *ical, +- icaltimezone *default_zone) ++get_ical_due_time (ICalComponent *ical, ++ ICalTimezone *default_zone) + { + return get_time_from_property (ical, +- ICAL_DUE_PROPERTY, +- icalproperty_get_due, ++ I_CAL_DUE_PROPERTY, ++ i_cal_property_get_due, + default_zone); + } + + static guint +-get_ical_percent_complete (icalcomponent *ical) ++get_ical_percent_complete (ICalComponent *ical) + { +- icalproperty *prop; +- icalproperty_status status; ++ ICalProperty *prop; ++ ICalPropertyStatus status; + int percent_complete; + +- status = icalcomponent_get_status (ical); +- if (status == ICAL_STATUS_COMPLETED) ++ status = i_cal_component_get_status (ical); ++ if (status == I_CAL_STATUS_COMPLETED) + return 100; + +- prop = icalcomponent_get_first_property (ical, ICAL_COMPLETED_PROPERTY); +- if (prop) ++ if (e_cal_util_component_has_property (ical, I_CAL_COMPLETED_PROPERTY)) + return 100; + +- prop = icalcomponent_get_first_property (ical, ICAL_PERCENTCOMPLETE_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, I_CAL_PERCENTCOMPLETE_PROPERTY); + if (!prop) + return 0; + +- percent_complete = icalproperty_get_percentcomplete (prop); ++ percent_complete = i_cal_property_get_percentcomplete (prop); ++ ++ g_object_unref (prop); + + return CLAMP (percent_complete, 0, 100); + } + + static inline time_t +-get_ical_completed_time (icalcomponent *ical, +- icaltimezone *default_zone) ++get_ical_completed_time (ICalComponent *ical, ++ ICalTimezone *default_zone) + { + return get_time_from_property (ical, +- ICAL_COMPLETED_PROPERTY, +- icalproperty_get_completed, ++ I_CAL_COMPLETED_PROPERTY, ++ i_cal_property_get_completed, + default_zone); + } + + static int +-get_ical_priority (icalcomponent *ical) ++get_ical_priority (ICalComponent *ical) + { +- icalproperty *prop; ++ ICalProperty *prop; ++ int retval; + +- prop = icalcomponent_get_first_property (ical, ICAL_PRIORITY_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, I_CAL_PRIORITY_PROPERTY); + if (!prop) + return -1; + +- return icalproperty_get_priority (prop); ++ retval = i_cal_property_get_priority (prop); ++ ++ g_object_unref (prop); ++ ++ return retval; + } + + static char * +@@ -827,9 +806,9 @@ calendar_appointment_finalize (CalendarA + + static void + calendar_appointment_init (CalendarAppointment *appointment, +- icalcomponent *ical, ++ ICalComponent *ical, + CalendarClientSource *source, +- icaltimezone *default_zone) ++ ICalTimezone *default_zone) + { + appointment->uid = get_ical_uid (ical); + appointment->rid = get_ical_rid (ical); +@@ -844,34 +823,38 @@ calendar_appointment_init (CalendarAppoi + default_zone); + } + +-static icaltimezone * ++static ICalTimezone * + resolve_timezone_id (const char *tzid, +- gpointer user_data) ++ gpointer user_data, ++ GCancellable *cancellable, ++ GError **error) + { +- icaltimezone *retval; ++ ICalTimezone *retval; + ECalClient *source = user_data; + +- retval = icaltimezone_get_builtin_timezone_from_tzid (tzid); ++ retval = i_cal_timezone_get_builtin_timezone_from_tzid (tzid); + if (!retval) + { +- e_cal_client_get_timezone_sync (source, tzid, &retval, NULL, NULL); ++ retval = e_cal_client_tzlookup_cb (tzid, source, cancellable, error); + } + + return retval; + } + + static gboolean +-calendar_appointment_collect_occurrence (ECalComponent *component, +- time_t occurrence_start, +- time_t occurrence_end, +- gpointer data) ++calendar_appointment_collect_occurrence (ICalComponent *component, ++ ICalTime *occurrence_start, ++ ICalTime *occurrence_end, ++ gpointer data, ++ GCancellable *cancellable, ++ GError **error) + { + CalendarOccurrence *occurrence; + GSList **collect_loc = data; + + occurrence = g_new0 (CalendarOccurrence, 1); +- occurrence->start_time = occurrence_start; +- occurrence->end_time = occurrence_end; ++ occurrence->start_time = i_cal_time_as_timet (occurrence_start); ++ occurrence->end_time = i_cal_time_as_timet (occurrence_end); + + *collect_loc = g_slist_prepend (*collect_loc, occurrence); + +@@ -880,30 +863,32 @@ calendar_appointment_collect_occurrence + + static void + calendar_appointment_generate_ocurrences (CalendarAppointment *appointment, +- icalcomponent *ical, ++ ICalComponent *ical, + ECalClient *source, + time_t start, + time_t end, +- icaltimezone *default_zone) ++ ICalTimezone *default_zone) + { +- ECalComponent *ecal; ++ ICalTime *interval_start, *interval_end; + + g_assert (appointment->occurrences == NULL); + +- ecal = e_cal_component_new (); +- e_cal_component_set_icalcomponent (ecal, +- icalcomponent_new_clone (ical)); +- +- e_cal_recur_generate_instances (ecal, +- start, +- end, +- calendar_appointment_collect_occurrence, +- &appointment->occurrences, +- resolve_timezone_id, +- source, +- default_zone); ++ interval_start = i_cal_time_new_from_timet_with_zone (start, FALSE, NULL); ++ interval_end = i_cal_time_new_from_timet_with_zone (end, FALSE, NULL); + +- g_object_unref (ecal); ++ e_cal_recur_generate_instances_sync (ical, ++ interval_start, ++ interval_end, ++ calendar_appointment_collect_occurrence, ++ &appointment->occurrences, ++ resolve_timezone_id, ++ source, ++ default_zone, ++ NULL, ++ NULL); ++ ++ g_clear_object (&interval_start); ++ g_clear_object (&interval_end); + + appointment->occurrences = g_slist_reverse (appointment->occurrences); + } +@@ -962,9 +947,9 @@ calendar_task_finalize (CalendarTask *ta + + static void + calendar_task_init (CalendarTask *task, +- icalcomponent *ical, ++ ICalComponent *ical, + CalendarClientSource *source, +- icaltimezone *default_zone) ++ ICalTimezone *default_zone) + { + task->uid = get_ical_uid (ical); + task->summary = get_ical_summary (ical); +@@ -998,57 +983,57 @@ calendar_event_free (CalendarEvent *even + } + + static CalendarEvent * +-calendar_event_new (icalcomponent *ical, ++calendar_event_new (ICalComponent *ical, + CalendarClientSource *source, +- icaltimezone *default_zone) ++ ICalTimezone *default_zone) + { + CalendarEvent *event; + + event = g_new0 (CalendarEvent, 1); + +- switch (icalcomponent_isa (ical)) ++ switch (i_cal_component_isa (ical)) + { +- case ICAL_VEVENT_COMPONENT: ++ case I_CAL_VEVENT_COMPONENT: + event->type = CALENDAR_EVENT_APPOINTMENT; + calendar_appointment_init (CALENDAR_APPOINTMENT (event), + ical, + source, + default_zone); + break; +- case ICAL_VTODO_COMPONENT: ++ case I_CAL_VTODO_COMPONENT: + event->type = CALENDAR_EVENT_TASK; + calendar_task_init (CALENDAR_TASK (event), + ical, + source, + default_zone); + break; +- case ICAL_NO_COMPONENT: +- case ICAL_ANY_COMPONENT: +- case ICAL_XROOT_COMPONENT: +- case ICAL_XATTACH_COMPONENT: +- case ICAL_VJOURNAL_COMPONENT: +- case ICAL_VCALENDAR_COMPONENT: +- case ICAL_VAGENDA_COMPONENT: +- case ICAL_VFREEBUSY_COMPONENT: +- case ICAL_VALARM_COMPONENT: +- case ICAL_XAUDIOALARM_COMPONENT: +- case ICAL_XDISPLAYALARM_COMPONENT: +- case ICAL_XEMAILALARM_COMPONENT: +- case ICAL_XPROCEDUREALARM_COMPONENT: +- case ICAL_VTIMEZONE_COMPONENT: +- case ICAL_XSTANDARD_COMPONENT: +- case ICAL_XDAYLIGHT_COMPONENT: +- case ICAL_X_COMPONENT: +- case ICAL_VSCHEDULE_COMPONENT: +- case ICAL_VQUERY_COMPONENT: +- case ICAL_VREPLY_COMPONENT: +- case ICAL_VCAR_COMPONENT: +- case ICAL_VCOMMAND_COMPONENT: +- case ICAL_XLICINVALID_COMPONENT: +- case ICAL_XLICMIMEPART_COMPONENT: ++ case I_CAL_NO_COMPONENT: ++ case I_CAL_ANY_COMPONENT: ++ case I_CAL_XROOT_COMPONENT: ++ case I_CAL_XATTACH_COMPONENT: ++ case I_CAL_VJOURNAL_COMPONENT: ++ case I_CAL_VCALENDAR_COMPONENT: ++ case I_CAL_VAGENDA_COMPONENT: ++ case I_CAL_VFREEBUSY_COMPONENT: ++ case I_CAL_VALARM_COMPONENT: ++ case I_CAL_XAUDIOALARM_COMPONENT: ++ case I_CAL_XDISPLAYALARM_COMPONENT: ++ case I_CAL_XEMAILALARM_COMPONENT: ++ case I_CAL_XPROCEDUREALARM_COMPONENT: ++ case I_CAL_VTIMEZONE_COMPONENT: ++ case I_CAL_XSTANDARD_COMPONENT: ++ case I_CAL_XDAYLIGHT_COMPONENT: ++ case I_CAL_X_COMPONENT: ++ case I_CAL_VSCHEDULE_COMPONENT: ++ case I_CAL_VQUERY_COMPONENT: ++ case I_CAL_VREPLY_COMPONENT: ++ case I_CAL_VCAR_COMPONENT: ++ case I_CAL_VCOMMAND_COMPONENT: ++ case I_CAL_XLICINVALID_COMPONENT: ++ case I_CAL_XLICMIMEPART_COMPONENT: + default: + g_warning ("Unknown calendar component type: %d\n", +- icalcomponent_isa (ical)); ++ i_cal_component_isa (ical)); + g_free (event); + return NULL; + } +@@ -1140,11 +1125,11 @@ calendar_event_equal (CalendarEvent *a, + + static void + calendar_event_generate_ocurrences (CalendarEvent *event, +- icalcomponent *ical, ++ ICalComponent *ical, + ECalClient *source, + time_t start, + time_t end, +- icaltimezone *default_zone) ++ ICalTimezone *default_zone) + { + if (event->type != CALENDAR_EVENT_APPOINTMENT) + return; +@@ -1337,7 +1322,7 @@ calendar_client_handle_query_result (Cal + { + CalendarEvent *event; + CalendarEvent *old_event; +- icalcomponent *ical = l->data; ++ ICalComponent *ical = l->data; + char *uid; + + event = calendar_event_new (ical, source, client->priv->zone); +@@ -1416,13 +1401,14 @@ calendar_client_handle_objects_removed ( + { + CalendarEvent *event; + ECalComponentId *id = l->data; +- char *uid = g_strdup_printf ("%s%s", id->uid, id->rid ? id->rid : ""); ++ char *uid = g_strdup_printf ("%s%s", e_cal_component_id_get_uid (id), ++ e_cal_component_id_get_rid (id) ? e_cal_component_id_get_rid (id) : ""); + +- if (!id->rid || !(*id->rid)) ++ if (!e_cal_component_id_get_rid (id) || !(e_cal_component_id_get_rid (id)[0])) + { + unsigned int size = g_hash_table_size (query->events); + +- g_hash_table_foreach_remove (query->events, check_object_remove, id->uid); ++ g_hash_table_foreach_remove (query->events, check_object_remove, (gpointer) e_cal_component_id_get_uid (id)); + + if (size != g_hash_table_size (query->events)) + events_changed = TRUE; +@@ -1560,9 +1546,6 @@ calendar_client_update_appointments (Cal + { + CalendarClientSource *cs = l->data; + +- if (!e_client_is_opened (E_CLIENT (cs->cal_client))) +- continue; +- + calendar_client_start_query (client, cs, query); + } + +@@ -1627,9 +1610,6 @@ calendar_client_update_tasks (CalendarCl + { + CalendarClientSource *cs = l->data; + +- if (!e_client_is_opened (E_CLIENT (cs->cal_client))) +- continue; +- + calendar_client_start_query (client, cs, query); + } + +@@ -2066,11 +2046,11 @@ calendar_client_set_task_completed (Cale + gboolean task_completed, + guint percent_complete) + { +- GSList *l; +- ECalClient *esource; +- icalcomponent *ical; +- icalproperty *prop; +- icalproperty_status status; ++ GSList *l; ++ ECalClient *esource; ++ ICalComponent *ical; ++ ICalProperty *prop; ++ ICalPropertyStatus status; + + g_return_if_fail (CALENDAR_IS_CLIENT (client)); + g_return_if_fail (task_uid != NULL); +@@ -2097,53 +2077,59 @@ calendar_client_set_task_completed (Cale + g_assert (esource != NULL); + + /* Completed time */ +- prop = icalcomponent_get_first_property (ical, +- ICAL_COMPLETED_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, ++ I_CAL_COMPLETED_PROPERTY); + if (task_completed) + { +- struct icaltimetype completed_time; ++ ICalTime *completed_time; + +- completed_time = icaltime_current_time_with_zone (client->priv->zone); ++ completed_time = i_cal_time_new_current_with_zone (client->priv->zone); + if (!prop) + { +- icalcomponent_add_property (ical, +- icalproperty_new_completed (completed_time)); ++ i_cal_component_take_property (ical, ++ i_cal_property_new_completed (completed_time)); + } + else + { +- icalproperty_set_completed (prop, completed_time); ++ i_cal_property_set_completed (prop, completed_time); + } ++ ++ g_clear_object (&completed_time); + } + else if (prop) + { +- icalcomponent_remove_property (ical, prop); ++ i_cal_component_remove_property (ical, prop); + } + ++ g_clear_object (&prop); ++ + /* Percent complete */ +- prop = icalcomponent_get_first_property (ical, +- ICAL_PERCENTCOMPLETE_PROPERTY); ++ prop = i_cal_component_get_first_property (ical, ++ I_CAL_PERCENTCOMPLETE_PROPERTY); + if (!prop) + { +- icalcomponent_add_property (ical, +- icalproperty_new_percentcomplete (percent_complete)); ++ i_cal_component_take_property (ical, ++ i_cal_property_new_percentcomplete (percent_complete)); + } + else + { +- icalproperty_set_percentcomplete (prop, percent_complete); ++ i_cal_property_set_percentcomplete (prop, percent_complete); ++ g_object_unref (prop); + } + + /* Status */ +- status = task_completed ? ICAL_STATUS_COMPLETED : ICAL_STATUS_NEEDSACTION; +- prop = icalcomponent_get_first_property (ical, ICAL_STATUS_PROPERTY); ++ status = task_completed ? I_CAL_STATUS_COMPLETED : I_CAL_STATUS_NEEDSACTION; ++ prop = i_cal_component_get_first_property (ical, I_CAL_STATUS_PROPERTY); + if (prop) + { +- icalproperty_set_status (prop, status); ++ i_cal_property_set_status (prop, status); ++ g_object_unref (prop); + } + else + { +- icalcomponent_add_property (ical, +- icalproperty_new_status (status)); ++ i_cal_component_take_property (ical, ++ i_cal_property_new_status (status)); + } + +- e_cal_client_modify_object_sync (esource, ical, CALOBJ_MOD_ALL, NULL, NULL); ++ e_cal_client_modify_object_sync (esource, ical, E_CAL_OBJ_MOD_ALL, E_CAL_OPERATION_FLAG_NONE, NULL, NULL); + } +diff -up almanah-0.11.1/src/event-factories/calendar-sources.c.eds-libecal-2.0 almanah-0.11.1/src/event-factories/calendar-sources.c +--- almanah-0.11.1/src/event-factories/calendar-sources.c.eds-libecal-2.0 2014-09-24 19:24:12.000000000 +0200 ++++ almanah-0.11.1/src/event-factories/calendar-sources.c 2019-05-20 18:54:53.986869698 +0200 +@@ -54,7 +54,7 @@ struct _CalendarSourceData + CalendarSources *sources; + guint changed_signal; + +- GSList *clients; ++ GSList *clients; /* ECalClient * */ + ESourceSelector *esource_selector; + + guint timeout_id; +@@ -251,7 +251,7 @@ get_ecal_from_source (ESource + ECalClientSourceType client_type, + GSList *existing_clients) + { +- ECalClient *retval; ++ EClient *retval; + GError *error = NULL; + + if (existing_clients) +@@ -271,17 +271,20 @@ get_ecal_from_source (ESource + } + } + +- retval = e_cal_client_new (esource, client_type, &error); ++ /* Basically do not wait for the connected state */ ++ retval = e_cal_client_connect_sync (esource, client_type, -1, NULL, &error); + if (!retval) + { + g_warning ("Could not load source '%s' from '%s': %s", + e_source_get_display_name (esource), + e_source_get_uid (esource), + error ? error->message : "Unknown error"); ++ g_clear_error (&error); ++ + return NULL; + } + +- return retval; ++ return E_CAL_CLIENT (retval); + } + + /* - Order doesn't matter diff --git a/almanah.spec b/almanah.spec index 59e24e8..c92ba4d 100644 --- a/almanah.spec +++ b/almanah.spec @@ -3,13 +3,14 @@ Name: almanah Version: 0.11.1 -Release: 24%{?dist} +Release: 25%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ URL: http://tecnocode.co.uk/projects/almanah/ Source0: http://ftp.gnome.org/pub/GNOME/sources/almanah/%{majorVersion}/%{name}-%{version}.tar.xz Patch01: almanah-build-break.patch Patch02: almanah-remove-evo-runtime-dep.patch +Patch03: almanah-eds-libecal-2.0.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc @@ -25,7 +26,7 @@ BuildRequires: intltool BuildRequires: libtool BuildRequires: desktop-file-utils BuildRequires: libappstream-glib-devel -BuildRequires: pkgconfig(libecal-1.2) +BuildRequires: pkgconfig(libecal-2.0) >= 3.33.2 BuildRequires: pkgconfig(libedataserver-1.2) %if 0%{fedora} <= 15 BuildRequires: seahorse-devel @@ -45,6 +46,7 @@ diary entries using multiple events. %setup -q %patch01 -p1 -b .build-break %patch02 -p1 -b .remove-evo-runtime-dep +%patch03 -p1 -b .eds-libecal-2.0 sed -e 's/_//' \ -e 's/=Diary/=Almanah/' \ @@ -87,6 +89,9 @@ fi %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Tue May 21 2019 Milan Crha - 0.11.1-25 +- Add patch to build against newer evolution-data-server (libecal-2.0) + * Fri May 03 2019 Milan Crha - 0.11.1-24 - Add patch for RH bug #1705678 (Remove Evolution runtime dependency) From 9d8b6d0cb239fc52ca5afe80d90be8b741f89d17 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 17:46:52 +0000 Subject: [PATCH 06/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index c92ba4d..3981002 100644 --- a/almanah.spec +++ b/almanah.spec @@ -3,7 +3,7 @@ Name: almanah Version: 0.11.1 -Release: 25%{?dist} +Release: 26%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ URL: http://tecnocode.co.uk/projects/almanah/ @@ -89,6 +89,9 @@ fi %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 0.11.1-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue May 21 2019 Milan Crha - 0.11.1-25 - Add patch to build against newer evolution-data-server (libecal-2.0) From 42d6643a9b24ba3f1f8367aace123f63ef9e384a Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 7 Oct 2019 15:54:20 +0200 Subject: [PATCH 07/36] Update to 0.12.0 - Switch to the meson build system --- .gitignore | 1 + almanah-build-break.patch | 240 -------- almanah-eds-libecal-2.0.patch | 826 --------------------------- almanah-remove-evo-runtime-dep.patch | 185 ------ almanah.spec | 52 +- sources | 2 +- 6 files changed, 18 insertions(+), 1288 deletions(-) delete mode 100644 almanah-build-break.patch delete mode 100644 almanah-eds-libecal-2.0.patch delete mode 100644 almanah-remove-evo-runtime-dep.patch diff --git a/.gitignore b/.gitignore index 44abaec..dc7c33a 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ almanah-0.7.3.tar.gz /almanah-0.10.0.tar.xz /almanah-0.10.1.tar.xz /almanah-0.11.1.tar.xz +/almanah-0.12.0.tar.xz diff --git a/almanah-build-break.patch b/almanah-build-break.patch deleted file mode 100644 index d22107c..0000000 --- a/almanah-build-break.patch +++ /dev/null @@ -1,240 +0,0 @@ -From 06dc5b67203730e1dc8a9362dc74c5d72de577b0 Mon Sep 17 00:00:00 2001 -From: Philip Withnall -Date: Mon, 12 Dec 2016 14:54:49 +0000 -Subject: [PATCH] build: Update glib-mkenums build rules -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Update the build rules to: - • Atomically replace the target files to avoid race conditions while - building. - • Not distribute the generated files, as they are generated. - • Use template files instead of putting C and escaped newlines in - Makefile.am in some grotesque display of nesting. - • Rename from event-factory-builtins.[ch] to enums.[ch] to more - accurately reflect what they contain. - -This might fix https://bugzilla.redhat.com/show_bug.cgi?id=1403508. - -diff -up almanah-0.11.1/src/enums.c.template.build-break almanah-0.11.1/src/enums.c.template ---- almanah-0.11.1/src/enums.c.template.build-break 2019-05-03 08:57:58.860406374 +0200 -+++ almanah-0.11.1/src/enums.c.template 2019-05-03 08:57:58.860406374 +0200 -@@ -0,0 +1,56 @@ -+/*** BEGIN file-header ***/ -+/* vim:set et sw=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e2s: */ -+/* -+ * Almanah -+ * Copyright © Philip Withnall 2016 -+ * -+ * Almanah is free software: you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation, either version 3 of the License, or -+ * (at your option) any later version. -+ * -+ * Almanah is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with Almanah. If not, see . -+ */ -+ -+#include "event-factory.h" -+#include "enums.h" -+ -+/*** END file-header ***/ -+ -+/*** BEGIN file-production ***/ -+/* enumerations from "@filename@" */ -+/*** END file-production ***/ -+ -+/*** BEGIN value-header ***/ -+GType -+@enum_name@_get_type (void) -+{ -+ static volatile gsize g_define_type_id__volatile = 0; -+ -+ if (g_once_init_enter (&g_define_type_id__volatile)) -+ { -+ static const G@Type@Value values[] = { -+/*** END value-header ***/ -+ -+/*** BEGIN value-production ***/ -+ { @VALUENAME@, "@VALUENAME@", "@valuenick@" }, -+/*** END value-production ***/ -+ -+/*** BEGIN value-tail ***/ -+ { 0, NULL, NULL } -+ }; -+ GType g_define_type_id = -+ g_@type@_register_static (g_intern_static_string ("@EnumName@"), values); -+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); -+ } -+ -+ return g_define_type_id__volatile; -+} -+ -+/*** END value-tail ***/ -diff -up almanah-0.11.1/src/enums.h.template.build-break almanah-0.11.1/src/enums.h.template ---- almanah-0.11.1/src/enums.h.template.build-break 2019-05-03 08:57:58.860406374 +0200 -+++ almanah-0.11.1/src/enums.h.template 2019-05-03 08:57:58.860406374 +0200 -@@ -0,0 +1,43 @@ -+/*** BEGIN file-header ***/ -+/* vim:set et sw=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e2s: */ -+/* -+ * Almanah -+ * Copyright © Philip Withnall 2016 -+ * -+ * Almanah is free software: you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation, either version 3 of the License, or -+ * (at your option) any later version. -+ * -+ * Almanah is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with Almanah. If not, see . -+ */ -+ -+#ifndef ALMANAH_ENUMS_H -+#define ALMANAH_ENUMS_H -+ -+#include -+ -+G_BEGIN_DECLS -+/*** END file-header ***/ -+ -+/*** BEGIN file-production ***/ -+ -+/* enumerations from "@filename@" */ -+/*** END file-production ***/ -+ -+/*** BEGIN value-header ***/ -+GType @enum_name@_get_type (void) G_GNUC_CONST; -+#define @ENUMPREFIX@_TYPE_@ENUMSHORT@ (@enum_name@_get_type ()) -+/*** END value-header ***/ -+ -+/*** BEGIN file-tail ***/ -+G_END_DECLS -+ -+#endif -+/*** END file-tail ***/ -diff -up almanah-0.11.1/src/event-factory.c.build-break almanah-0.11.1/src/event-factory.c ---- almanah-0.11.1/src/event-factory.c.build-break 2014-09-24 19:24:12.000000000 +0200 -+++ almanah-0.11.1/src/event-factory.c 2019-05-03 08:57:58.860406374 +0200 -@@ -20,7 +20,7 @@ - #include - - #include "event-factory.h" --#include "event-factory-builtins.h" -+#include "enums.h" - - static void almanah_event_factory_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec); - -diff -up almanah-0.11.1/src/event-manager.c.build-break almanah-0.11.1/src/event-manager.c ---- almanah-0.11.1/src/event-manager.c.build-break 2014-09-24 19:24:12.000000000 +0200 -+++ almanah-0.11.1/src/event-manager.c 2019-05-03 08:57:58.861406374 +0200 -@@ -21,7 +21,7 @@ - - #include "event-manager.h" - #include "event-factory.h" --#include "event-factory-builtins.h" -+#include "enums.h" - - typedef struct { - AlmanahEventFactoryType type_id; -diff -up almanah-0.11.1/src/Makefile.am.build-break almanah-0.11.1/src/Makefile.am ---- almanah-0.11.1/src/Makefile.am.build-break 2014-09-24 19:33:27.000000000 +0200 -+++ almanah-0.11.1/src/Makefile.am 2019-05-03 08:58:25.483406005 +0200 -@@ -1,8 +1,11 @@ - bin_PROGRAMS = almanah - -+BUILT_SOURCES = -+EXTRA_DIST = -+CLEANFILES = -+ - almanah_SOURCES = \ - $(ALMANAH_MARSHAL_FILES) \ -- $(ALMANAH_ENUM_FILES) \ - main.c \ - application.c \ - application.h \ -@@ -80,6 +83,11 @@ almanah_SOURCES += \ - preferences-dialog.h - endif - -+nodist_almanah_SOURCES = \ -+ $(almanah_enum_header_file) \ -+ $(almanah_enum_source_file) \ -+ $(NULL) -+ - almanah_CPPFLAGS = \ - -DPACKAGE_LOCALE_DIR=\""$(datadir)/locale"\" \ - -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -@@ -114,31 +122,36 @@ almanah-marshal.c: almanah-marshal.list - $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=almanah_marshal --header --body $< > $@ - - # Enums --ALMANAH_ENUM_FILES = \ -- event-factory-builtins.h \ -- event-factory-builtins.c -- --event-factory-builtins.h: event-factory.h Makefile -- $(AM_V_GEN)(cd $(srcdir) && $(GLIB_MKENUMS) \ -- --fhead "#ifndef __ALMANAH_EVENT_FACTORY_BUILTINS_H__\n#define __ALMANAH_EVENT_FACTORY_BUILTINS_H__\n\n#include \n\nG_BEGIN_DECLS\n" \ -- --fprod "/* enumerations from \"@filename@\" */\n" \ -- --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define ALMANAH_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ -- --ftail "G_END_DECLS\n\n#endif /* __ALMANAH_EVENT_FACTORY_BUILTINS_H__ */" \ -- event-factory.h) > $(@F) -- --event-factory-builtins.c: event-factory.h Makefile event-factory-builtins.h -- $(AM_V_GEN)(cd $(srcdir) && $(GLIB_MKENUMS) \ -- --fhead "#include \"event-factory.h\"\n#include \"event-factory-builtins.h\"" \ -- --fprod "\n/* enumerations from \"@filename@\" */" \ -- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \ -- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ -- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \ -- event-factory.h) > $(@F) -- --CLEANFILES = \ -- $(ALMANAH_MARSHAL_FILES) \ -- $(ALMANAH_ENUM_FILES) -+almanah_enum_header_file = enums.h -+almanah_enum_source_file = enums.c -+almanah_enum_prerequisites = event-factory.h -+ -+$(almanah_enum_header_file): $(almanah_enum_header_file:%=%.template) $(almanah_enum_prerequisites) -+ $(AM_V_GEN)$(GLIB_MKENUMS) --template $< \ -+ $(patsubst %,$(srcdir)/%,$(almanah_enum_prerequisites)) \ -+ > $@.tmp && mv $@.tmp $@ -+ -+$(almanah_enum_source_file): $(almanah_enum_source_file:%=%.template) $(almanah_enum_prerequisites) -+ $(AM_V_GEN)$(GLIB_MKENUMS) --template $< \ -+ $(patsubst %,$(srcdir)/%,$(almanah_enum_prerequisites)) \ -+ > $@.tmp && mv $@.tmp $@ -+ -+EXTRA_DIST += \ -+ $(almanah_enum_header_file:%=%.template) \ -+ $(almanah_enum_source_file:%=%.template) \ -+ $(NULL) -+BUILT_SOURCES += \ -+ $(almanah_enum_header_file) \ -+ $(almanah_enum_source_file) \ -+ $(NULL) -+CLEANFILES += \ -+ $(almanah_enum_header_file) \ -+ $(almanah_enum_source_file) \ -+ $(NULL) -+ -+CLEANFILES += \ -+ $(ALMANAH_MARSHAL_FILES) - --EXTRA_DIST = almanah-marshal.list -+EXTRA_DIST += almanah-marshal.list - - -include $(top_srcdir)/git.mk diff --git a/almanah-eds-libecal-2.0.patch b/almanah-eds-libecal-2.0.patch deleted file mode 100644 index 8b7caad..0000000 --- a/almanah-eds-libecal-2.0.patch +++ /dev/null @@ -1,826 +0,0 @@ -diff -up almanah-0.11.1/configure.ac.eds-libecal-2.0 almanah-0.11.1/configure.ac ---- almanah-0.11.1/configure.ac.eds-libecal-2.0 2019-05-20 18:55:45.843868981 +0200 -+++ almanah-0.11.1/configure.ac 2019-05-20 18:57:55.032867194 +0200 -@@ -85,10 +85,10 @@ AC_SUBST(STANDARD_CFLAGS) - AC_SUBST(STANDARD_LIBS) - - dnl Evolution --EDS_MIN_VERSION=2.28 --PKG_CHECK_MODULES(EVO, libecal-1.2 >= 3.5.91 libedataserver-1.2 >= $EDS_MIN_VERSION, have_evo=yes, have_evo=no) -+EDS_MIN_VERSION=3.33.2 -+PKG_CHECK_MODULES(EVO, libecal-2.0 >= 3.33.2 libedataserver-1.2 >= $EDS_MIN_VERSION, have_evo=yes, have_evo=no) - if test "x$have_evo" = "xyes"; then -- AC_DEFINE(HAVE_EVO, 1, [Defined if libecal-1.2 is installed]) -+ AC_DEFINE(HAVE_EVO, 1, [Defined if libecal-2.0 is installed]) - fi - AM_CONDITIONAL([HAVE_EVO], [test x$have_evo = xyes]) - -diff -up almanah-0.11.1/src/event-factories/calendar-client.c.eds-libecal-2.0 almanah-0.11.1/src/event-factories/calendar-client.c ---- almanah-0.11.1/src/event-factories/calendar-client.c.eds-libecal-2.0 2019-05-20 18:54:53.984869698 +0200 -+++ almanah-0.11.1/src/event-factories/calendar-client.c 2019-05-21 12:14:34.522938631 +0200 -@@ -80,7 +80,7 @@ struct _CalendarClientPrivate - GSList *appointment_sources; - GSList *task_sources; - -- icaltimezone *zone; -+ ICalTimezone *zone; - - GFileMonitor *tz_monitor; - -@@ -229,17 +229,17 @@ calendar_client_class_init (CalendarClie - 0); - } - --static icaltimezone * -+static ICalTimezone * - calendar_client_config_get_icaltimezone (void) - { - char *location; -- icaltimezone *zone = NULL; -+ ICalTimezone *zone = NULL; - - location = e_cal_util_get_system_timezone_location (); - if (!location) -- return icaltimezone_get_utc_timezone (); -+ return i_cal_timezone_get_utc_timezone (); - -- zone = icaltimezone_get_builtin_timezone (location); -+ zone = i_cal_timezone_get_builtin_timezone (location); - g_free (location); - - return zone; -@@ -272,51 +272,6 @@ calendar_client_timezone_changed_cb (G_G - } - - static void --cal_opened_cb (GObject *source_object, -- GAsyncResult *result, -- gpointer user_data) --{ -- EClient *ecal = E_CLIENT (source_object); -- CalendarClientSource *cl_source = user_data; -- ECalClientSourceType s_type; -- CalendarClient *client = cl_source->client; -- GError *error = NULL; -- -- e_client_open_finish (ecal, result, &error); -- -- s_type = e_cal_client_get_source_type (E_CAL_CLIENT (ecal)); -- -- if (g_error_matches (error, E_CLIENT_ERROR, E_CLIENT_ERROR_BUSY) && -- !e_client_is_opened (ecal)) -- { -- g_clear_error (&error); -- e_client_open (ecal, TRUE, NULL, cal_opened_cb, cl_source); -- return; -- } -- -- if (error) -- { -- if (s_type == E_CAL_CLIENT_SOURCE_TYPE_EVENTS) -- client->priv->appointment_sources = g_slist_remove (client->priv->appointment_sources, -- cl_source); -- else -- client->priv->task_sources = g_slist_remove (client->priv->task_sources, -- cl_source); -- -- calendar_client_source_finalize (cl_source); -- g_free (cl_source); -- -- g_clear_error (&error); -- return; -- } -- -- if (s_type == E_CAL_CLIENT_SOURCE_TYPE_EVENTS) -- calendar_client_update_appointments (client); -- else -- calendar_client_update_tasks (client); --} -- --static void - load_calendars (CalendarClient *client, - CalendarEventType type) - { -@@ -337,15 +292,12 @@ load_calendars (CalendarClient *clien - - for (l = clients; l != NULL; l = l->next) - { -- EClient *ecal; - CalendarClientSource *cl_source = l->data; - -- ecal = E_CLIENT (cl_source->cal_client); -- -- if (e_client_is_opened (ecal)) -- continue; -- -- e_client_open (ecal, TRUE, NULL, cal_opened_cb, cl_source); -+ if (type == CALENDAR_EVENT_APPOINTMENT) -+ calendar_client_update_appointments (cl_source->client); -+ else -+ calendar_client_update_tasks (cl_source->client); - } - } - -@@ -523,113 +475,129 @@ make_isodate_for_day_begin (int day, - } - - static time_t --get_time_from_property (icalcomponent *ical, -- icalproperty_kind prop_kind, -- struct icaltimetype (* get_prop_func) (const icalproperty *prop), -- icaltimezone *default_zone) --{ -- icalproperty *prop; -- struct icaltimetype ical_time; -- icalparameter *param; -- icaltimezone *time_zone = NULL; -- -- prop = icalcomponent_get_first_property (ical, prop_kind); -+get_time_from_property (ICalComponent *ical, -+ ICalPropertyKind prop_kind, -+ ICalTime * (* get_prop_func) (ICalProperty *prop), -+ ICalTimezone *default_zone) -+{ -+ ICalProperty *prop; -+ ICalTime *ical_time; -+ ICalParameter *param; -+ ICalTimezone *time_zone = NULL; -+ time_t retval; -+ -+ prop = i_cal_component_get_first_property (ical, prop_kind); - if (!prop) - return 0; - - ical_time = get_prop_func (prop); - -- param = icalproperty_get_first_parameter (prop, ICAL_TZID_PARAMETER); -+ param = i_cal_property_get_first_parameter (prop, I_CAL_TZID_PARAMETER); - if (param) -- time_zone = icaltimezone_get_builtin_timezone_from_tzid (icalparameter_get_tzid (param)); -- else if (icaltime_is_utc (ical_time)) -- time_zone = icaltimezone_get_utc_timezone (); -+ time_zone = i_cal_timezone_get_builtin_timezone_from_tzid (i_cal_parameter_get_tzid (param)); -+ else if (i_cal_time_is_utc (ical_time)) -+ time_zone = i_cal_timezone_get_utc_timezone (); - else - time_zone = default_zone; - -- return icaltime_as_timet_with_zone (ical_time, time_zone); -+ retval = i_cal_time_as_timet_with_zone (ical_time, time_zone); -+ -+ g_clear_object (&ical_time); -+ g_clear_object (¶m); -+ g_clear_object (&prop); -+ -+ return retval; - } - - static char * --get_ical_uid (icalcomponent *ical) -+get_ical_uid (ICalComponent *ical) - { -- return g_strdup (icalcomponent_get_uid (ical)); -+ return g_strdup (i_cal_component_get_uid (ical)); - } - - static char * --get_ical_rid (icalcomponent *ical) -+get_ical_rid (ICalComponent *ical) - { -- icalproperty *prop; -- struct icaltimetype ical_time; -- -- prop = icalcomponent_get_first_property (ical, ICAL_RECURRENCEID_PROPERTY); -- if (!prop) -- return NULL; -- -- ical_time = icalproperty_get_recurrenceid (prop); -- -- return icaltime_is_valid_time (ical_time) && !icaltime_is_null_time (ical_time) ? -- g_strdup (icaltime_as_ical_string (ical_time)) : NULL; -+ return e_cal_util_component_get_recurid_as_string (ical); - } - - static char * --get_ical_summary (icalcomponent *ical) -+get_ical_summary (ICalComponent *ical) - { -- icalproperty *prop; -+ ICalProperty *prop; -+ char *retval; - -- prop = icalcomponent_get_first_property (ical, ICAL_SUMMARY_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, I_CAL_SUMMARY_PROPERTY); - if (!prop) - return NULL; - -- return g_strdup (icalproperty_get_summary (prop)); -+ retval = g_strdup (i_cal_property_get_summary (prop)); -+ -+ g_object_unref (prop); -+ -+ return retval; - } - - static char * --get_ical_description (icalcomponent *ical) -+get_ical_description (ICalComponent *ical) - { -- icalproperty *prop; -+ ICalProperty *prop; -+ char *retval; - -- prop = icalcomponent_get_first_property (ical, ICAL_DESCRIPTION_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, I_CAL_DESCRIPTION_PROPERTY); - if (!prop) - return NULL; - -- return g_strdup (icalproperty_get_description (prop)); -+ retval = g_strdup (i_cal_property_get_description (prop)); -+ -+ g_object_unref (prop); -+ -+ return retval; - } - - static inline time_t --get_ical_start_time (icalcomponent *ical, -- icaltimezone *default_zone) -+get_ical_start_time (ICalComponent *ical, -+ ICalTimezone *default_zone) - { - return get_time_from_property (ical, -- ICAL_DTSTART_PROPERTY, -- icalproperty_get_dtstart, -+ I_CAL_DTSTART_PROPERTY, -+ i_cal_property_get_dtstart, - default_zone); - } - - static inline time_t --get_ical_end_time (icalcomponent *ical, -- icaltimezone *default_zone) -+get_ical_end_time (ICalComponent *ical, -+ ICalTimezone *default_zone) - { - return get_time_from_property (ical, -- ICAL_DTEND_PROPERTY, -- icalproperty_get_dtend, -+ I_CAL_DTEND_PROPERTY, -+ i_cal_property_get_dtend, - default_zone); - } - - static gboolean --get_ical_is_all_day (icalcomponent *ical, -+get_ical_is_all_day (ICalComponent *ical, - time_t start_time, -- icaltimezone *default_zone) -+ ICalTimezone *default_zone) - { -- icalproperty *prop; -- struct tm *start_tm; -- time_t end_time; -- struct icaldurationtype duration; -- struct icaltimetype start_icaltime; -+ ICalProperty *prop; -+ struct tm *start_tm; -+ time_t end_time; -+ ICalDuration *duration; -+ ICalTime *start_icaltime; -+ gboolean retval; - -- start_icaltime = icalcomponent_get_dtstart (ical); -- if (start_icaltime.is_date) -- return TRUE; -+ start_icaltime = i_cal_component_get_dtstart (ical); -+ if (!start_icaltime) -+ return FALSE; -+ -+ if (i_cal_time_is_date (start_icaltime)) -+ { -+ g_object_unref (start_icaltime); -+ return TRUE; -+ } -+ -+ g_clear_object (&start_icaltime); - - start_tm = gmtime (&start_time); - if (start_tm->tm_sec != 0 || -@@ -640,69 +608,80 @@ get_ical_is_all_day (icalcomponent *ical - if ((end_time = get_ical_end_time (ical, default_zone))) - return (end_time - start_time) % 86400 == 0; - -- prop = icalcomponent_get_first_property (ical, ICAL_DURATION_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, I_CAL_DURATION_PROPERTY); - if (!prop) - return FALSE; - -- duration = icalproperty_get_duration (prop); -+ duration = i_cal_property_get_duration (prop); -+ -+ retval = i_cal_duration_as_int (duration) % 86400 == 0; - -- return icaldurationtype_as_int (duration) % 86400 == 0; -+ g_object_unref (duration); -+ g_object_unref (prop); -+ -+ return retval; - } - - static inline time_t --get_ical_due_time (icalcomponent *ical, -- icaltimezone *default_zone) -+get_ical_due_time (ICalComponent *ical, -+ ICalTimezone *default_zone) - { - return get_time_from_property (ical, -- ICAL_DUE_PROPERTY, -- icalproperty_get_due, -+ I_CAL_DUE_PROPERTY, -+ i_cal_property_get_due, - default_zone); - } - - static guint --get_ical_percent_complete (icalcomponent *ical) -+get_ical_percent_complete (ICalComponent *ical) - { -- icalproperty *prop; -- icalproperty_status status; -+ ICalProperty *prop; -+ ICalPropertyStatus status; - int percent_complete; - -- status = icalcomponent_get_status (ical); -- if (status == ICAL_STATUS_COMPLETED) -+ status = i_cal_component_get_status (ical); -+ if (status == I_CAL_STATUS_COMPLETED) - return 100; - -- prop = icalcomponent_get_first_property (ical, ICAL_COMPLETED_PROPERTY); -- if (prop) -+ if (e_cal_util_component_has_property (ical, I_CAL_COMPLETED_PROPERTY)) - return 100; - -- prop = icalcomponent_get_first_property (ical, ICAL_PERCENTCOMPLETE_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, I_CAL_PERCENTCOMPLETE_PROPERTY); - if (!prop) - return 0; - -- percent_complete = icalproperty_get_percentcomplete (prop); -+ percent_complete = i_cal_property_get_percentcomplete (prop); -+ -+ g_object_unref (prop); - - return CLAMP (percent_complete, 0, 100); - } - - static inline time_t --get_ical_completed_time (icalcomponent *ical, -- icaltimezone *default_zone) -+get_ical_completed_time (ICalComponent *ical, -+ ICalTimezone *default_zone) - { - return get_time_from_property (ical, -- ICAL_COMPLETED_PROPERTY, -- icalproperty_get_completed, -+ I_CAL_COMPLETED_PROPERTY, -+ i_cal_property_get_completed, - default_zone); - } - - static int --get_ical_priority (icalcomponent *ical) -+get_ical_priority (ICalComponent *ical) - { -- icalproperty *prop; -+ ICalProperty *prop; -+ int retval; - -- prop = icalcomponent_get_first_property (ical, ICAL_PRIORITY_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, I_CAL_PRIORITY_PROPERTY); - if (!prop) - return -1; - -- return icalproperty_get_priority (prop); -+ retval = i_cal_property_get_priority (prop); -+ -+ g_object_unref (prop); -+ -+ return retval; - } - - static char * -@@ -827,9 +806,9 @@ calendar_appointment_finalize (CalendarA - - static void - calendar_appointment_init (CalendarAppointment *appointment, -- icalcomponent *ical, -+ ICalComponent *ical, - CalendarClientSource *source, -- icaltimezone *default_zone) -+ ICalTimezone *default_zone) - { - appointment->uid = get_ical_uid (ical); - appointment->rid = get_ical_rid (ical); -@@ -844,34 +823,38 @@ calendar_appointment_init (CalendarAppoi - default_zone); - } - --static icaltimezone * -+static ICalTimezone * - resolve_timezone_id (const char *tzid, -- gpointer user_data) -+ gpointer user_data, -+ GCancellable *cancellable, -+ GError **error) - { -- icaltimezone *retval; -+ ICalTimezone *retval; - ECalClient *source = user_data; - -- retval = icaltimezone_get_builtin_timezone_from_tzid (tzid); -+ retval = i_cal_timezone_get_builtin_timezone_from_tzid (tzid); - if (!retval) - { -- e_cal_client_get_timezone_sync (source, tzid, &retval, NULL, NULL); -+ retval = e_cal_client_tzlookup_cb (tzid, source, cancellable, error); - } - - return retval; - } - - static gboolean --calendar_appointment_collect_occurrence (ECalComponent *component, -- time_t occurrence_start, -- time_t occurrence_end, -- gpointer data) -+calendar_appointment_collect_occurrence (ICalComponent *component, -+ ICalTime *occurrence_start, -+ ICalTime *occurrence_end, -+ gpointer data, -+ GCancellable *cancellable, -+ GError **error) - { - CalendarOccurrence *occurrence; - GSList **collect_loc = data; - - occurrence = g_new0 (CalendarOccurrence, 1); -- occurrence->start_time = occurrence_start; -- occurrence->end_time = occurrence_end; -+ occurrence->start_time = i_cal_time_as_timet (occurrence_start); -+ occurrence->end_time = i_cal_time_as_timet (occurrence_end); - - *collect_loc = g_slist_prepend (*collect_loc, occurrence); - -@@ -880,30 +863,32 @@ calendar_appointment_collect_occurrence - - static void - calendar_appointment_generate_ocurrences (CalendarAppointment *appointment, -- icalcomponent *ical, -+ ICalComponent *ical, - ECalClient *source, - time_t start, - time_t end, -- icaltimezone *default_zone) -+ ICalTimezone *default_zone) - { -- ECalComponent *ecal; -+ ICalTime *interval_start, *interval_end; - - g_assert (appointment->occurrences == NULL); - -- ecal = e_cal_component_new (); -- e_cal_component_set_icalcomponent (ecal, -- icalcomponent_new_clone (ical)); -- -- e_cal_recur_generate_instances (ecal, -- start, -- end, -- calendar_appointment_collect_occurrence, -- &appointment->occurrences, -- resolve_timezone_id, -- source, -- default_zone); -+ interval_start = i_cal_time_new_from_timet_with_zone (start, FALSE, NULL); -+ interval_end = i_cal_time_new_from_timet_with_zone (end, FALSE, NULL); - -- g_object_unref (ecal); -+ e_cal_recur_generate_instances_sync (ical, -+ interval_start, -+ interval_end, -+ calendar_appointment_collect_occurrence, -+ &appointment->occurrences, -+ resolve_timezone_id, -+ source, -+ default_zone, -+ NULL, -+ NULL); -+ -+ g_clear_object (&interval_start); -+ g_clear_object (&interval_end); - - appointment->occurrences = g_slist_reverse (appointment->occurrences); - } -@@ -962,9 +947,9 @@ calendar_task_finalize (CalendarTask *ta - - static void - calendar_task_init (CalendarTask *task, -- icalcomponent *ical, -+ ICalComponent *ical, - CalendarClientSource *source, -- icaltimezone *default_zone) -+ ICalTimezone *default_zone) - { - task->uid = get_ical_uid (ical); - task->summary = get_ical_summary (ical); -@@ -998,57 +983,57 @@ calendar_event_free (CalendarEvent *even - } - - static CalendarEvent * --calendar_event_new (icalcomponent *ical, -+calendar_event_new (ICalComponent *ical, - CalendarClientSource *source, -- icaltimezone *default_zone) -+ ICalTimezone *default_zone) - { - CalendarEvent *event; - - event = g_new0 (CalendarEvent, 1); - -- switch (icalcomponent_isa (ical)) -+ switch (i_cal_component_isa (ical)) - { -- case ICAL_VEVENT_COMPONENT: -+ case I_CAL_VEVENT_COMPONENT: - event->type = CALENDAR_EVENT_APPOINTMENT; - calendar_appointment_init (CALENDAR_APPOINTMENT (event), - ical, - source, - default_zone); - break; -- case ICAL_VTODO_COMPONENT: -+ case I_CAL_VTODO_COMPONENT: - event->type = CALENDAR_EVENT_TASK; - calendar_task_init (CALENDAR_TASK (event), - ical, - source, - default_zone); - break; -- case ICAL_NO_COMPONENT: -- case ICAL_ANY_COMPONENT: -- case ICAL_XROOT_COMPONENT: -- case ICAL_XATTACH_COMPONENT: -- case ICAL_VJOURNAL_COMPONENT: -- case ICAL_VCALENDAR_COMPONENT: -- case ICAL_VAGENDA_COMPONENT: -- case ICAL_VFREEBUSY_COMPONENT: -- case ICAL_VALARM_COMPONENT: -- case ICAL_XAUDIOALARM_COMPONENT: -- case ICAL_XDISPLAYALARM_COMPONENT: -- case ICAL_XEMAILALARM_COMPONENT: -- case ICAL_XPROCEDUREALARM_COMPONENT: -- case ICAL_VTIMEZONE_COMPONENT: -- case ICAL_XSTANDARD_COMPONENT: -- case ICAL_XDAYLIGHT_COMPONENT: -- case ICAL_X_COMPONENT: -- case ICAL_VSCHEDULE_COMPONENT: -- case ICAL_VQUERY_COMPONENT: -- case ICAL_VREPLY_COMPONENT: -- case ICAL_VCAR_COMPONENT: -- case ICAL_VCOMMAND_COMPONENT: -- case ICAL_XLICINVALID_COMPONENT: -- case ICAL_XLICMIMEPART_COMPONENT: -+ case I_CAL_NO_COMPONENT: -+ case I_CAL_ANY_COMPONENT: -+ case I_CAL_XROOT_COMPONENT: -+ case I_CAL_XATTACH_COMPONENT: -+ case I_CAL_VJOURNAL_COMPONENT: -+ case I_CAL_VCALENDAR_COMPONENT: -+ case I_CAL_VAGENDA_COMPONENT: -+ case I_CAL_VFREEBUSY_COMPONENT: -+ case I_CAL_VALARM_COMPONENT: -+ case I_CAL_XAUDIOALARM_COMPONENT: -+ case I_CAL_XDISPLAYALARM_COMPONENT: -+ case I_CAL_XEMAILALARM_COMPONENT: -+ case I_CAL_XPROCEDUREALARM_COMPONENT: -+ case I_CAL_VTIMEZONE_COMPONENT: -+ case I_CAL_XSTANDARD_COMPONENT: -+ case I_CAL_XDAYLIGHT_COMPONENT: -+ case I_CAL_X_COMPONENT: -+ case I_CAL_VSCHEDULE_COMPONENT: -+ case I_CAL_VQUERY_COMPONENT: -+ case I_CAL_VREPLY_COMPONENT: -+ case I_CAL_VCAR_COMPONENT: -+ case I_CAL_VCOMMAND_COMPONENT: -+ case I_CAL_XLICINVALID_COMPONENT: -+ case I_CAL_XLICMIMEPART_COMPONENT: - default: - g_warning ("Unknown calendar component type: %d\n", -- icalcomponent_isa (ical)); -+ i_cal_component_isa (ical)); - g_free (event); - return NULL; - } -@@ -1140,11 +1125,11 @@ calendar_event_equal (CalendarEvent *a, - - static void - calendar_event_generate_ocurrences (CalendarEvent *event, -- icalcomponent *ical, -+ ICalComponent *ical, - ECalClient *source, - time_t start, - time_t end, -- icaltimezone *default_zone) -+ ICalTimezone *default_zone) - { - if (event->type != CALENDAR_EVENT_APPOINTMENT) - return; -@@ -1337,7 +1322,7 @@ calendar_client_handle_query_result (Cal - { - CalendarEvent *event; - CalendarEvent *old_event; -- icalcomponent *ical = l->data; -+ ICalComponent *ical = l->data; - char *uid; - - event = calendar_event_new (ical, source, client->priv->zone); -@@ -1416,13 +1401,14 @@ calendar_client_handle_objects_removed ( - { - CalendarEvent *event; - ECalComponentId *id = l->data; -- char *uid = g_strdup_printf ("%s%s", id->uid, id->rid ? id->rid : ""); -+ char *uid = g_strdup_printf ("%s%s", e_cal_component_id_get_uid (id), -+ e_cal_component_id_get_rid (id) ? e_cal_component_id_get_rid (id) : ""); - -- if (!id->rid || !(*id->rid)) -+ if (!e_cal_component_id_get_rid (id) || !(e_cal_component_id_get_rid (id)[0])) - { - unsigned int size = g_hash_table_size (query->events); - -- g_hash_table_foreach_remove (query->events, check_object_remove, id->uid); -+ g_hash_table_foreach_remove (query->events, check_object_remove, (gpointer) e_cal_component_id_get_uid (id)); - - if (size != g_hash_table_size (query->events)) - events_changed = TRUE; -@@ -1560,9 +1546,6 @@ calendar_client_update_appointments (Cal - { - CalendarClientSource *cs = l->data; - -- if (!e_client_is_opened (E_CLIENT (cs->cal_client))) -- continue; -- - calendar_client_start_query (client, cs, query); - } - -@@ -1627,9 +1610,6 @@ calendar_client_update_tasks (CalendarCl - { - CalendarClientSource *cs = l->data; - -- if (!e_client_is_opened (E_CLIENT (cs->cal_client))) -- continue; -- - calendar_client_start_query (client, cs, query); - } - -@@ -2066,11 +2046,11 @@ calendar_client_set_task_completed (Cale - gboolean task_completed, - guint percent_complete) - { -- GSList *l; -- ECalClient *esource; -- icalcomponent *ical; -- icalproperty *prop; -- icalproperty_status status; -+ GSList *l; -+ ECalClient *esource; -+ ICalComponent *ical; -+ ICalProperty *prop; -+ ICalPropertyStatus status; - - g_return_if_fail (CALENDAR_IS_CLIENT (client)); - g_return_if_fail (task_uid != NULL); -@@ -2097,53 +2077,59 @@ calendar_client_set_task_completed (Cale - g_assert (esource != NULL); - - /* Completed time */ -- prop = icalcomponent_get_first_property (ical, -- ICAL_COMPLETED_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, -+ I_CAL_COMPLETED_PROPERTY); - if (task_completed) - { -- struct icaltimetype completed_time; -+ ICalTime *completed_time; - -- completed_time = icaltime_current_time_with_zone (client->priv->zone); -+ completed_time = i_cal_time_new_current_with_zone (client->priv->zone); - if (!prop) - { -- icalcomponent_add_property (ical, -- icalproperty_new_completed (completed_time)); -+ i_cal_component_take_property (ical, -+ i_cal_property_new_completed (completed_time)); - } - else - { -- icalproperty_set_completed (prop, completed_time); -+ i_cal_property_set_completed (prop, completed_time); - } -+ -+ g_clear_object (&completed_time); - } - else if (prop) - { -- icalcomponent_remove_property (ical, prop); -+ i_cal_component_remove_property (ical, prop); - } - -+ g_clear_object (&prop); -+ - /* Percent complete */ -- prop = icalcomponent_get_first_property (ical, -- ICAL_PERCENTCOMPLETE_PROPERTY); -+ prop = i_cal_component_get_first_property (ical, -+ I_CAL_PERCENTCOMPLETE_PROPERTY); - if (!prop) - { -- icalcomponent_add_property (ical, -- icalproperty_new_percentcomplete (percent_complete)); -+ i_cal_component_take_property (ical, -+ i_cal_property_new_percentcomplete (percent_complete)); - } - else - { -- icalproperty_set_percentcomplete (prop, percent_complete); -+ i_cal_property_set_percentcomplete (prop, percent_complete); -+ g_object_unref (prop); - } - - /* Status */ -- status = task_completed ? ICAL_STATUS_COMPLETED : ICAL_STATUS_NEEDSACTION; -- prop = icalcomponent_get_first_property (ical, ICAL_STATUS_PROPERTY); -+ status = task_completed ? I_CAL_STATUS_COMPLETED : I_CAL_STATUS_NEEDSACTION; -+ prop = i_cal_component_get_first_property (ical, I_CAL_STATUS_PROPERTY); - if (prop) - { -- icalproperty_set_status (prop, status); -+ i_cal_property_set_status (prop, status); -+ g_object_unref (prop); - } - else - { -- icalcomponent_add_property (ical, -- icalproperty_new_status (status)); -+ i_cal_component_take_property (ical, -+ i_cal_property_new_status (status)); - } - -- e_cal_client_modify_object_sync (esource, ical, CALOBJ_MOD_ALL, NULL, NULL); -+ e_cal_client_modify_object_sync (esource, ical, E_CAL_OBJ_MOD_ALL, E_CAL_OPERATION_FLAG_NONE, NULL, NULL); - } -diff -up almanah-0.11.1/src/event-factories/calendar-sources.c.eds-libecal-2.0 almanah-0.11.1/src/event-factories/calendar-sources.c ---- almanah-0.11.1/src/event-factories/calendar-sources.c.eds-libecal-2.0 2014-09-24 19:24:12.000000000 +0200 -+++ almanah-0.11.1/src/event-factories/calendar-sources.c 2019-05-20 18:54:53.986869698 +0200 -@@ -54,7 +54,7 @@ struct _CalendarSourceData - CalendarSources *sources; - guint changed_signal; - -- GSList *clients; -+ GSList *clients; /* ECalClient * */ - ESourceSelector *esource_selector; - - guint timeout_id; -@@ -251,7 +251,7 @@ get_ecal_from_source (ESource - ECalClientSourceType client_type, - GSList *existing_clients) - { -- ECalClient *retval; -+ EClient *retval; - GError *error = NULL; - - if (existing_clients) -@@ -271,17 +271,20 @@ get_ecal_from_source (ESource - } - } - -- retval = e_cal_client_new (esource, client_type, &error); -+ /* Basically do not wait for the connected state */ -+ retval = e_cal_client_connect_sync (esource, client_type, -1, NULL, &error); - if (!retval) - { - g_warning ("Could not load source '%s' from '%s': %s", - e_source_get_display_name (esource), - e_source_get_uid (esource), - error ? error->message : "Unknown error"); -+ g_clear_error (&error); -+ - return NULL; - } - -- return retval; -+ return E_CAL_CLIENT (retval); - } - - /* - Order doesn't matter diff --git a/almanah-remove-evo-runtime-dep.patch b/almanah-remove-evo-runtime-dep.patch deleted file mode 100644 index 8ebedc7..0000000 --- a/almanah-remove-evo-runtime-dep.patch +++ /dev/null @@ -1,185 +0,0 @@ -From 54ccb8255eaf136a853acef4666b561a561654f2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=C3=81lvaro=20Pe=C3=B1a?= -Date: Mon, 9 Nov 2015 11:27:26 +0100 -Subject: [PATCH] events: Removed Evolution runtime dependency - -We have a runtime dependecy in Almanah because we check for the -org.gnome.evolution.calendar settings to read the timezone, so just use -the EDS e_cal_util_get_system_timezone_location and watch for changes -in /etc/timezone - -https://bugzilla.gnome.org/show_bug.cgi?id=745497 ---- - configure.ac | 3 +- - src/event-factories/calendar-client.c | 71 ++++++++++----------------- - 2 files changed, 29 insertions(+), 45 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 243dfb9..88df7f3 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -124,7 +124,8 @@ AC_SUBST(STANDARD_CFLAGS) - AC_SUBST(STANDARD_LIBS) - - dnl Evolution --PKG_CHECK_MODULES(EVO, libecal-1.2 >= 3.5.91 libedataserver-1.2, have_evo=yes, have_evo=no) -+EDS_MIN_VERSION=2.28 -+PKG_CHECK_MODULES(EVO, libecal-1.2 >= 3.5.91 libedataserver-1.2 >= $EDS_MIN_VERSION, have_evo=yes, have_evo=no) - if test "x$have_evo" = "xyes"; then - AC_DEFINE(HAVE_EVO, 1, [Defined if libecal-1.2 is installed]) - fi -diff --git a/src/event-factories/calendar-client.c b/src/event-factories/calendar-client.c -index 7cd6187..c529dbe 100644 ---- a/src/event-factories/calendar-client.c -+++ b/src/event-factories/calendar-client.c -@@ -1,5 +1,7 @@ -+/* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 2; tab-width: 2-*- */ - /* - * Copyright (C) 2004 Free Software Foundation, Inc. -+ * Copyright (C) 2015 Álvaro Peña - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as -@@ -19,6 +21,9 @@ - * William Jon McCann - * Martin Grimme - * Christian Kellner -+ * -+ * Modified by: -+ * Álvaro Peña - */ - - #include -@@ -77,8 +82,7 @@ struct _CalendarClientPrivate - - icaltimezone *zone; - -- guint zone_listener; -- GSettings *settings; -+ GFileMonitor *tz_monitor; - - guint day; - guint month; -@@ -225,45 +229,29 @@ calendar_client_class_init (CalendarClientClass *klass) - 0); - } - --/* Timezone code adapted from evolution/calendar/gui/calendar-config.c */ --/* The current timezone, e.g. "Europe/London". It may be NULL, in which case -- you should assume UTC. */ --static gchar * --calendar_client_config_get_timezone (GSettings *settings) --{ -- char *location; -- -- if (g_settings_get_boolean (settings, "use-system-timezone")) -- location = e_cal_util_get_system_timezone_location (); -- else -- location = g_settings_get_string (settings, "timezone"); -- -- return location; --} -- - static icaltimezone * --calendar_client_config_get_icaltimezone (GSettings *settings) -+calendar_client_config_get_icaltimezone (void) - { - char *location; - icaltimezone *zone = NULL; -- -- location = calendar_client_config_get_timezone (settings); -+ -+ location = e_cal_util_get_system_timezone_location (); - if (!location) - return icaltimezone_get_utc_timezone (); - - zone = icaltimezone_get_builtin_timezone (location); - g_free (location); -- -+ - return zone; - } - - static void --calendar_client_set_timezone (CalendarClient *client) -+calendar_client_set_timezone (CalendarClient *client) - { - GSList *l; - GSList *esources; - -- client->priv->zone = calendar_client_config_get_icaltimezone (client->priv->settings); -+ client->priv->zone = calendar_client_config_get_icaltimezone (); - - esources = calendar_sources_get_appointment_sources (client->priv->calendar_sources); - for (l = esources; l; l = l->next) { -@@ -274,13 +262,13 @@ calendar_client_set_timezone (CalendarClient *client) - } - - static void --calendar_client_timezone_changed_cb (GSettings *settings, -- const gchar *key, -- CalendarClient *client) -+calendar_client_timezone_changed_cb (G_GNUC_UNUSED GFileMonitor *monitor, -+ G_GNUC_UNUSED GFile *file, -+ G_GNUC_UNUSED GFile *other_file, -+ G_GNUC_UNUSED GFileMonitorEvent *event, -+ gpointer user_data) - { -- if (g_strcmp0 (key, "timezone") == 0 || -- g_strcmp0 (key, "use-system-timezone") == 0) -- calendar_client_set_timezone (client); -+ calendar_client_set_timezone (CALENDAR_CLIENT (user_data)); - } - - static void -@@ -365,11 +353,11 @@ static void - calendar_client_init (CalendarClient *client) - { - GSList *esources; -+ GFile *tz; - - client->priv = CALENDAR_CLIENT_GET_PRIVATE (client); - - client->priv->calendar_sources = calendar_sources_get (); -- client->priv->settings = g_settings_new ("org.gnome.evolution.calendar"); - - esources = calendar_sources_get_appointment_sources (client->priv->calendar_sources); - client->priv->appointment_sources = -@@ -393,9 +381,13 @@ calendar_client_init (CalendarClient *client) - G_CALLBACK (calendar_client_task_sources_changed), - client); - -- client->priv->zone_listener = g_signal_connect (client->priv->settings, "changed", -- G_CALLBACK (calendar_client_timezone_changed_cb), -- client); -+ tz = g_file_new_for_path ("/etc/localtime"); -+ client->priv->tz_monitor = g_file_monitor_file (tz, G_FILE_MONITOR_NONE, NULL, NULL); -+ g_object_unref (tz); -+ if (client->priv->tz_monitor == NULL) -+ g_warning ("Can't monitor /etc/localtime for changes"); -+ else -+ g_signal_connect (client->priv->tz_monitor, "changed", G_CALLBACK (calendar_client_timezone_changed_cb), client); - - client->priv->day = G_MAXUINT; - client->priv->month = G_MAXUINT; -@@ -408,16 +400,7 @@ calendar_client_finalize (GObject *object) - CalendarClient *client = CALENDAR_CLIENT (object); - GSList *l; - -- if (client->priv->zone_listener) -- { -- g_signal_handler_disconnect (client->priv->settings, -- client->priv->zone_listener); -- client->priv->zone_listener = 0; -- } -- -- if (client->priv->settings) -- g_object_unref (client->priv->settings); -- client->priv->settings = NULL; -+ g_clear_object (&client->priv->tz_monitor); - - for (l = client->priv->appointment_sources; l; l = l->next) - { --- -2.18.1 - diff --git a/almanah.spec b/almanah.spec index 3981002..92149f7 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,31 +1,23 @@ -%global majorVersion 0.11 -%global spellcheck 0 +%global majorVersion 0.12 Name: almanah -Version: 0.11.1 -Release: 26%{?dist} +Version: 0.12.0 +Release: 1%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ URL: http://tecnocode.co.uk/projects/almanah/ Source0: http://ftp.gnome.org/pub/GNOME/sources/almanah/%{majorVersion}/%{name}-%{version}.tar.xz -Patch01: almanah-build-break.patch -Patch02: almanah-remove-evo-runtime-dep.patch -Patch03: almanah-eds-libecal-2.0.patch -BuildRequires: autoconf -BuildRequires: automake BuildRequires: gcc BuildRequires: gettext BuildRequires: gpgme-devel BuildRequires: sqlite-devel BuildRequires: gtk3-devel -# gtkspell still pulls in gtk2 -%if 0%{?spellcheck} -BuildRequires: gtkspell-devel -%endif -BuildRequires: intltool -BuildRequires: libtool BuildRequires: desktop-file-utils BuildRequires: libappstream-glib-devel +BuildRequires: meson +BuildRequires: pkgconfig(gcr-base-3) +BuildRequires: pkgconfig(gtkspell3-3.0) +BuildRequires: pkgconfig(gtksourceview-3.0) BuildRequires: pkgconfig(libecal-2.0) >= 3.33.2 BuildRequires: pkgconfig(libedataserver-1.2) %if 0%{fedora} <= 15 @@ -44,32 +36,16 @@ diary entries using multiple events. %prep %setup -q -%patch01 -p1 -b .build-break -%patch02 -p1 -b .remove-evo-runtime-dep -%patch03 -p1 -b .eds-libecal-2.0 - -sed -e 's/_//' \ - -e 's/=Diary/=Almanah/' \ - -i data/%{name}.desktop.in %build -autoreconf -fi -libtoolize -intltoolize --force -CFLAGS="${RPM_OPT_FLAGS} -D_FILE_OFFSET_BITS=64 -Wno-deprecated-declarations" %configure --enable-encryption \ -%if 0%{?spellchecking} ---enable-spell-checking -%else ---disable-spell-checking -%endif -make %{?_smp_mflags} +%meson +%meson_build %install -make install DESTDIR=%{buildroot} +%meson_install %find_lang %{name} - %preun if [ "$1" -eq 0 ]; then export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` @@ -78,17 +54,21 @@ if [ "$1" -eq 0 ]; then fi %files -f %{name}.lang -%doc AUTHORS COPYING NEWS README ChangeLog +%doc AUTHORS COPYING NEWS README.md %{_bindir}/%{name} -%{_datadir}/%{name}/ %{_datadir}/icons/hicolor/*/apps/%{name}.png %{_datadir}/icons/hicolor/*/actions/%{name}*.svg +%{_datadir}/icons/hicolor/scalable/apps/%{name}-symbolic.svg %{_datadir}/applications/%{name}.desktop %{_datadir}/metainfo/%{name}.appdata.xml %{_datadir}/GConf/gsettings/%{name}.convert %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Oct 07 2019 Kalev Lember - 0.12.0-1 +- Update to 0.12.0 +- Switch to the meson build system + * Wed Jul 24 2019 Fedora Release Engineering - 0.11.1-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index e0e478f..e352180 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6107d7becf94548170365f45f8d9dc69 almanah-0.11.1.tar.xz +SHA512 (almanah-0.12.0.tar.xz) = ddb50b098c67673b76bfb35a0a3d7cd1ecaf7fd40ddf5ef4ad2d84672967ef0c29ef2c692216f2d6e2ab78170ae4d051a68e2ec898a09c75a2839e66599339dc From ec383f097356fb8a3448e6a6294f4f1a88872b42 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 7 Oct 2019 16:14:27 +0200 Subject: [PATCH 08/36] Remove obsolete GConf schemas scriptlet --- almanah.spec | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/almanah.spec b/almanah.spec index 92149f7..cc88f1f 100644 --- a/almanah.spec +++ b/almanah.spec @@ -46,13 +46,6 @@ diary entries using multiple events. %find_lang %{name} -%preun -if [ "$1" -eq 0 ]; then - export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` - gconftool-2 --makefile-uninstall-rule \ - %{_sysconfdir}/gconf/schemas/%{name}.schemas > /dev/null || : -fi - %files -f %{name}.lang %doc AUTHORS COPYING NEWS README.md %{_bindir}/%{name} @@ -68,6 +61,7 @@ fi * Mon Oct 07 2019 Kalev Lember - 0.12.0-1 - Update to 0.12.0 - Switch to the meson build system +- Remove obsolete GConf schemas scriptlet * Wed Jul 24 2019 Fedora Release Engineering - 0.11.1-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From c0478f585b27a0ff863e57f533403a26073f2b96 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 7 Oct 2019 16:18:37 +0200 Subject: [PATCH 09/36] Update source URLs --- almanah.spec | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/almanah.spec b/almanah.spec index cc88f1f..bd08f44 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,12 +1,10 @@ -%global majorVersion 0.12 - Name: almanah Version: 0.12.0 Release: 1%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ -URL: http://tecnocode.co.uk/projects/almanah/ -Source0: http://ftp.gnome.org/pub/GNOME/sources/almanah/%{majorVersion}/%{name}-%{version}.tar.xz +URL: https://wiki.gnome.org/Apps/Almanah_Diary +Source0: https://download.gnome.org/sources/almanah/0.12/almanah-%{version}.tar.xz BuildRequires: gcc BuildRequires: gettext BuildRequires: gpgme-devel @@ -62,6 +60,7 @@ diary entries using multiple events. - Update to 0.12.0 - Switch to the meson build system - Remove obsolete GConf schemas scriptlet +- Update source URLs * Wed Jul 24 2019 Fedora Release Engineering - 0.11.1-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 9dd3f930175543d720498aead651f7c8723ee01b Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 7 Oct 2019 16:19:14 +0200 Subject: [PATCH 10/36] Use license macro for COPYING --- almanah.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index bd08f44..c6bfdf8 100644 --- a/almanah.spec +++ b/almanah.spec @@ -45,7 +45,8 @@ diary entries using multiple events. %find_lang %{name} %files -f %{name}.lang -%doc AUTHORS COPYING NEWS README.md +%license COPYING +%doc AUTHORS NEWS README.md %{_bindir}/%{name} %{_datadir}/icons/hicolor/*/apps/%{name}.png %{_datadir}/icons/hicolor/*/actions/%{name}*.svg @@ -61,6 +62,7 @@ diary entries using multiple events. - Switch to the meson build system - Remove obsolete GConf schemas scriptlet - Update source URLs +- Use license macro for COPYING * Wed Jul 24 2019 Fedora Release Engineering - 0.11.1-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 43657ac62f7791b0bf5ffa868d82fe4637c82d4e Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 7 Oct 2019 16:20:09 +0200 Subject: [PATCH 11/36] Minor spec file cleanup --- almanah.spec | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/almanah.spec b/almanah.spec index c6bfdf8..1760e00 100644 --- a/almanah.spec +++ b/almanah.spec @@ -2,28 +2,25 @@ Name: almanah Version: 0.12.0 Release: 1%{?dist} Summary: Application for keeping an encrypted diary + License: GPLv3+ URL: https://wiki.gnome.org/Apps/Almanah_Diary Source0: https://download.gnome.org/sources/almanah/0.12/almanah-%{version}.tar.xz + BuildRequires: gcc BuildRequires: gettext BuildRequires: gpgme-devel -BuildRequires: sqlite-devel -BuildRequires: gtk3-devel BuildRequires: desktop-file-utils BuildRequires: libappstream-glib-devel BuildRequires: meson +BuildRequires: pkgconfig(cryptui-0.0) +BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gcr-base-3) BuildRequires: pkgconfig(gtkspell3-3.0) BuildRequires: pkgconfig(gtksourceview-3.0) BuildRequires: pkgconfig(libecal-2.0) >= 3.33.2 BuildRequires: pkgconfig(libedataserver-1.2) -%if 0%{fedora} <= 15 -BuildRequires: seahorse-devel -%else -BuildRequires: libcryptui-devel -%endif -BuildRequires: pkgconfig +BuildRequires: pkgconfig(sqlite3) %description Almanah Diary is a small application to ease the management of an encrypted From 2402bf5fb0c838d58a0e3c4d5e0a329f36b2a8dd Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 11:26:32 +0000 Subject: [PATCH 12/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 1760e00..666d812 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 0.12.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Mon Oct 07 2019 Kalev Lember - 0.12.0-1 - Update to 0.12.0 - Switch to the meson build system From 9ca59d5c8887484ee38b7b4fd36d1e5aada23edd Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Fri, 3 Jul 2020 10:39:02 +0200 Subject: [PATCH 13/36] Rebuilt for evolution-data-server soname bump --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 666d812..c49d265 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Fri Jul 03 2020 Milan Crha - 0.12.0-3 +- Rebuilt for evolution-data-server soname bump + * Tue Jan 28 2020 Fedora Release Engineering - 0.12.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 639bd8cfa30e5a19766fd93b2c848a7965311938 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 11:56:31 +0000 Subject: [PATCH 14/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index c49d265..034fe60 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 0.12.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Fri Jul 03 2020 Milan Crha - 0.12.0-3 - Rebuilt for evolution-data-server soname bump From f1e32d5186ea589238a174c36497449b731ae3b9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 31 Jul 2020 23:55:07 +0000 Subject: [PATCH 15/36] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 034fe60..6fb3aee 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,10 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Fri Jul 31 2020 Fedora Release Engineering - 0.12.0-5 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Mon Jul 27 2020 Fedora Release Engineering - 0.12.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 3eb9538dc09685935e85c2db6139869e156e5f79 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 25 Jan 2021 23:59:43 +0000 Subject: [PATCH 16/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 6fb3aee..aca0fb7 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Jan 25 2021 Fedora Release Engineering - 0.12.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Fri Jul 31 2020 Fedora Release Engineering - 0.12.0-5 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 023aba562518edb8d0c8ce052494c7cedd0fc563 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Fri, 12 Feb 2021 12:27:06 +0100 Subject: [PATCH 17/36] Rebuilt for evolution-data-server soname bump --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index aca0fb7..b4614d7 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Fri Feb 12 2021 Milan Crha - 0.12.0-7 +- Rebuilt for evolution-data-server soname bump + * Mon Jan 25 2021 Fedora Release Engineering - 0.12.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From c919a70f529bdb0c91ed03c095b062cd27dbadd2 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 8 Mar 2021 09:01:49 +0100 Subject: [PATCH 18/36] Update to 0.12.3 --- .gitignore | 7 +------ almanah.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index dc7c33a..b9f51c7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1 @@ -almanah-0.7.3.tar.gz -/almanah-0.8.0.tar.bz2 -/almanah-0.10.0.tar.xz -/almanah-0.10.1.tar.xz -/almanah-0.11.1.tar.xz -/almanah-0.12.0.tar.xz +almanah-*.tar.xz diff --git a/almanah.spec b/almanah.spec index b4614d7..77fc370 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah -Version: 0.12.0 -Release: 7%{?dist} +Version: 0.12.3 +Release: 1%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Mar 08 2021 Milan Crha - 0.12.3-1 +- Update to 0.12.3 + * Fri Feb 12 2021 Milan Crha - 0.12.0-7 - Rebuilt for evolution-data-server soname bump diff --git a/sources b/sources index e352180..e08c797 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (almanah-0.12.0.tar.xz) = ddb50b098c67673b76bfb35a0a3d7cd1ecaf7fd40ddf5ef4ad2d84672967ef0c29ef2c692216f2d6e2ab78170ae4d051a68e2ec898a09c75a2839e66599339dc +SHA512 (almanah-0.12.3.tar.xz) = d12d87a591d47a651c87106c225a69aa9f5c742d299f6ca37e29ecbf9785ce2506f58cc578002df2dcb6c86eb9767c534f2f5d717e9a6f063b125aca89e556b1 From 242bc4ee915c25c3dfb14aed5ee7bb3158859b6f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 12:32:03 +0000 Subject: [PATCH 19/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 1d590b560878e5a58ac79b0edba6e9bab114c0b8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 17:27:27 +0000 Subject: [PATCH 20/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 77fc370..ef91d5b 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 0.12.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Mon Mar 08 2021 Milan Crha - 0.12.3-1 - Update to 0.12.3 From 5dd07b2c36c5637b583d9c2d719b8223252efb11 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jan 2022 21:08:26 +0000 Subject: [PATCH 21/36] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index ef91d5b..efc2332 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -54,6 +54,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jan 19 2022 Fedora Release Engineering - 0.12.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Wed Jul 21 2021 Fedora Release Engineering - 0.12.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From ea2a66b2438b3213cf46bfd091bc697d6527632d Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Tue, 19 Jul 2022 21:30:19 +0200 Subject: [PATCH 22/36] Rebuilt for evolution-data-server soname bump; Add patch to build with gcr4 --- 0001-build-Build-with-gcr4-by-default.patch | 72 +++++++++++++++++++++ almanah.spec | 16 +++-- 2 files changed, 83 insertions(+), 5 deletions(-) create mode 100644 0001-build-Build-with-gcr4-by-default.patch diff --git a/0001-build-Build-with-gcr4-by-default.patch b/0001-build-Build-with-gcr4-by-default.patch new file mode 100644 index 0000000..d565ecb --- /dev/null +++ b/0001-build-Build-with-gcr4-by-default.patch @@ -0,0 +1,72 @@ +From cd44b476f4ffbf37c5d5f5b996ecd711db925576 Mon Sep 17 00:00:00 2001 +From: Milan Crha +Date: Tue, 19 Jul 2022 21:25:45 +0200 +Subject: [PATCH] build: Build with gcr4 by default + +Use -Dgcr3=true to build against gcr3 instead. + +The gcr4 is going to replace gcr3, this change prepares it to do. +it also defaults to build with gcr4 for the same reason. +--- + meson.build | 10 +++++++++- + meson_options.txt | 1 + + src/vfs.c | 4 ++++ + 3 files changed, 14 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 813e67b..b418dce 100644 +--- a/meson.build ++++ b/meson.build +@@ -35,9 +35,14 @@ gtksourceview = dependency('gtksourceview-3.0') + sqlite = dependency('sqlite3') + cairo = dependency('cairo') + atk = dependency('atk') +-gcr = dependency('gcr-base-3') + cryptui = dependency('cryptui-0.0') + ++if get_option('gcr3') ++ gcr = dependency('gcr-base-3') ++else ++ gcr = dependency('gcr-4', version: '>= 3.90.0') ++endif ++ + # Options + evolution_support = get_option('evolution') + spell_checking_support = get_option('spell_checking') +@@ -94,6 +99,9 @@ if have_evolution + # https://gitlab.gnome.org/GNOME/almanah/issues/1 + #conf.set('EDS_DISABLE_DEPRECATED', 1) + endif ++if get_option('gcr3') ++ conf.set('HAVE_GCR3', 1) ++endif + + config = vcs_tag( + input: configure_file( +diff --git a/meson_options.txt b/meson_options.txt +index 85a6860..0c7af1d 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -1,2 +1,3 @@ + option('evolution', type: 'feature', value: 'enabled', description: 'Enable Evolution calendar integration') + option('spell_checking', type: 'feature', value: 'enabled', description: 'Enable spell checking support') ++option('gcr3', type: 'boolean', value: false, description: 'Build with gcr3; if false, builds with gcr4') +diff --git a/src/vfs.c b/src/vfs.c +index fdc9beb..da238e6 100644 +--- a/src/vfs.c ++++ b/src/vfs.c +@@ -44,7 +44,11 @@ + #include + + #define GCR_API_SUBJECT_TO_CHANGE ++#ifdef HAVE_GCR3 + #include ++#else ++#include ++#endif + #include + #include + #include +-- +2.35.1 + diff --git a/almanah.spec b/almanah.spec index efc2332..f7d5161 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,12 +1,14 @@ Name: almanah Version: 0.12.3 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ URL: https://wiki.gnome.org/Apps/Almanah_Diary Source0: https://download.gnome.org/sources/almanah/0.12/almanah-%{version}.tar.xz +Patch01: 0001-build-Build-with-gcr4-by-default.patch + BuildRequires: gcc BuildRequires: gettext BuildRequires: gpgme-devel @@ -15,11 +17,11 @@ BuildRequires: libappstream-glib-devel BuildRequires: meson BuildRequires: pkgconfig(cryptui-0.0) BuildRequires: pkgconfig(gtk+-3.0) -BuildRequires: pkgconfig(gcr-base-3) +BuildRequires: pkgconfig(gcr-4) BuildRequires: pkgconfig(gtkspell3-3.0) BuildRequires: pkgconfig(gtksourceview-3.0) -BuildRequires: pkgconfig(libecal-2.0) >= 3.33.2 -BuildRequires: pkgconfig(libedataserver-1.2) +BuildRequires: pkgconfig(libecal-2.0) >= 3.45.1 +BuildRequires: pkgconfig(libedataserver-1.2) >= 3.45.1 BuildRequires: pkgconfig(sqlite3) %description @@ -30,7 +32,7 @@ creation of diary entries related to them. At the same time, you can create diary entries using multiple events. %prep -%setup -q +%autosetup -p1 -S gendiff %build %meson @@ -54,6 +56,10 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Tue Jul 19 2022 Milan Crha - 0.12.3-4 +- Rebuilt for evolution-data-server soname bump +- Add patch to build with gcr4 + * Wed Jan 19 2022 Fedora Release Engineering - 0.12.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From aac7d35e253db8fd425f2fbf033827f73106e362 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Tue, 19 Jul 2022 21:54:21 +0200 Subject: [PATCH 23/36] Add patch to build with meson 0.61 --- ...positional-i18n.merge_file-arguments.patch | 32 +++++++++++++++++++ almanah.spec | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 0001-build-remove-positional-i18n.merge_file-arguments.patch diff --git a/0001-build-remove-positional-i18n.merge_file-arguments.patch b/0001-build-remove-positional-i18n.merge_file-arguments.patch new file mode 100644 index 0000000..b836222 --- /dev/null +++ b/0001-build-remove-positional-i18n.merge_file-arguments.patch @@ -0,0 +1,32 @@ +From 8c42a67695621d1e30cec933a04e633e6030bbaf Mon Sep 17 00:00:00 2001 +From: Bobby Rong <931189261@qq.com> +Date: Fri, 25 Mar 2022 03:14:43 +0000 +Subject: [PATCH] build: remove positional i18n.merge_file arguments + +Fixes build with meson 0.61 +--- + data/meson.build | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index 1a5d86f..0321c32 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -1,6 +1,5 @@ + desktop = 'almanah.desktop' + i18n.merge_file( +- desktop, + type: 'desktop', + input: desktop + '.in', + output: desktop, +@@ -19,7 +18,6 @@ endif + + appdata = 'almanah.appdata.xml' + i18n.merge_file( +- appdata, + input: appdata + '.in', + output: appdata, + po_dir: po_dir, +-- +2.35.1 + diff --git a/almanah.spec b/almanah.spec index f7d5161..1a3b6ea 100644 --- a/almanah.spec +++ b/almanah.spec @@ -8,6 +8,7 @@ URL: https://wiki.gnome.org/Apps/Almanah_Diary Source0: https://download.gnome.org/sources/almanah/0.12/almanah-%{version}.tar.xz Patch01: 0001-build-Build-with-gcr4-by-default.patch +Patch02: 0001-build-remove-positional-i18n.merge_file-arguments.patch BuildRequires: gcc BuildRequires: gettext @@ -59,6 +60,7 @@ diary entries using multiple events. * Tue Jul 19 2022 Milan Crha - 0.12.3-4 - Rebuilt for evolution-data-server soname bump - Add patch to build with gcr4 +- Add patch to build with meson 0.61 * Wed Jan 19 2022 Fedora Release Engineering - 0.12.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 982d35a66b041f68bbe5c5f4a16490c743114bcf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 20 Jul 2022 20:40:03 +0000 Subject: [PATCH 24/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 1a3b6ea..278d15a 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jul 20 2022 Fedora Release Engineering - 0.12.3-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Tue Jul 19 2022 Milan Crha - 0.12.3-4 - Rebuilt for evolution-data-server soname bump - Add patch to build with gcr4 From b867e04416bb1d89ba7ca93493afcf08a6c24f4b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 18 Jan 2023 21:36:46 +0000 Subject: [PATCH 25/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 278d15a..b53e531 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jan 18 2023 Fedora Release Engineering - 0.12.3-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Wed Jul 20 2022 Fedora Release Engineering - 0.12.3-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 422e9acfbb48baa882f92cd6fb80d4a5197f385f Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 19 Jun 2023 16:23:49 +0200 Subject: [PATCH 26/36] Rebuilt for gcr soname bump --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index b53e531..14babf9 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Jun 19 2023 Kalev Lember - 0.12.3-7 +- Rebuilt for gcr soname bump + * Wed Jan 18 2023 Fedora Release Engineering - 0.12.3-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 2dadfc4410da1d4fd9989b7918046c9c5dd9c652 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 13:08:42 +0000 Subject: [PATCH 27/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 14babf9..83e194e 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Application for keeping an encrypted diary License: GPLv3+ @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 0.12.3-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Mon Jun 19 2023 Kalev Lember - 0.12.3-7 - Rebuilt for gcr soname bump From 8f61867800516bf6967a058b5db192917259c3c6 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 27 Nov 2023 08:51:16 +0100 Subject: [PATCH 28/36] Update License tag to SPDX --- almanah.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 83e194e..dced934 100644 --- a/almanah.spec +++ b/almanah.spec @@ -3,7 +3,7 @@ Version: 0.12.3 Release: 8%{?dist} Summary: Application for keeping an encrypted diary -License: GPLv3+ +License: GPL-3.0-or-later URL: https://wiki.gnome.org/Apps/Almanah_Diary Source0: https://download.gnome.org/sources/almanah/0.12/almanah-%{version}.tar.xz From 8e83cae305bf32dcd9df6f401ad6a18de1e9279a Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 8 Jan 2024 10:24:29 +0100 Subject: [PATCH 29/36] Rebuilt for evolution-data-server soname bump --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index dced934..7d36f89 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Jan 08 2024 Milan Crha - 0.12.3-9 +- Rebuilt for evolution-data-server soname bump + * Wed Jul 19 2023 Fedora Release Engineering - 0.12.3-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 48a1fd72e15218d73197399eb47321140d153bc4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 12:43:43 +0000 Subject: [PATCH 30/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 7d36f89..b638851 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 0.12.3-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Mon Jan 08 2024 Milan Crha - 0.12.3-9 - Rebuilt for evolution-data-server soname bump From fc9b0dffa8be6078df1bad59738be8c467f4a784 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 22:55:20 +0000 Subject: [PATCH 31/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index b638851..53dec79 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Jan 22 2024 Fedora Release Engineering - 0.12.3-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 0.12.3-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 830280e41b607a95750fa09f11094726fbb6c808 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 16:51:50 +0000 Subject: [PATCH 32/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 53dec79..527596b 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.3 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -57,6 +57,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 0.12.3-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Mon Jan 22 2024 Fedora Release Engineering - 0.12.3-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 2e6074fdb71c99c784ae2bda3fdaa33824bbda18 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 13 Jan 2025 09:00:06 +0100 Subject: [PATCH 33/36] Update to 0.12.4 --- 0001-build-Build-with-gcr4-by-default.patch | 72 ------------------- ...positional-i18n.merge_file-arguments.patch | 32 --------- almanah.spec | 27 ++++--- sources | 2 +- 4 files changed, 14 insertions(+), 119 deletions(-) delete mode 100644 0001-build-Build-with-gcr4-by-default.patch delete mode 100644 0001-build-remove-positional-i18n.merge_file-arguments.patch diff --git a/0001-build-Build-with-gcr4-by-default.patch b/0001-build-Build-with-gcr4-by-default.patch deleted file mode 100644 index d565ecb..0000000 --- a/0001-build-Build-with-gcr4-by-default.patch +++ /dev/null @@ -1,72 +0,0 @@ -From cd44b476f4ffbf37c5d5f5b996ecd711db925576 Mon Sep 17 00:00:00 2001 -From: Milan Crha -Date: Tue, 19 Jul 2022 21:25:45 +0200 -Subject: [PATCH] build: Build with gcr4 by default - -Use -Dgcr3=true to build against gcr3 instead. - -The gcr4 is going to replace gcr3, this change prepares it to do. -it also defaults to build with gcr4 for the same reason. ---- - meson.build | 10 +++++++++- - meson_options.txt | 1 + - src/vfs.c | 4 ++++ - 3 files changed, 14 insertions(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 813e67b..b418dce 100644 ---- a/meson.build -+++ b/meson.build -@@ -35,9 +35,14 @@ gtksourceview = dependency('gtksourceview-3.0') - sqlite = dependency('sqlite3') - cairo = dependency('cairo') - atk = dependency('atk') --gcr = dependency('gcr-base-3') - cryptui = dependency('cryptui-0.0') - -+if get_option('gcr3') -+ gcr = dependency('gcr-base-3') -+else -+ gcr = dependency('gcr-4', version: '>= 3.90.0') -+endif -+ - # Options - evolution_support = get_option('evolution') - spell_checking_support = get_option('spell_checking') -@@ -94,6 +99,9 @@ if have_evolution - # https://gitlab.gnome.org/GNOME/almanah/issues/1 - #conf.set('EDS_DISABLE_DEPRECATED', 1) - endif -+if get_option('gcr3') -+ conf.set('HAVE_GCR3', 1) -+endif - - config = vcs_tag( - input: configure_file( -diff --git a/meson_options.txt b/meson_options.txt -index 85a6860..0c7af1d 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -1,2 +1,3 @@ - option('evolution', type: 'feature', value: 'enabled', description: 'Enable Evolution calendar integration') - option('spell_checking', type: 'feature', value: 'enabled', description: 'Enable spell checking support') -+option('gcr3', type: 'boolean', value: false, description: 'Build with gcr3; if false, builds with gcr4') -diff --git a/src/vfs.c b/src/vfs.c -index fdc9beb..da238e6 100644 ---- a/src/vfs.c -+++ b/src/vfs.c -@@ -44,7 +44,11 @@ - #include - - #define GCR_API_SUBJECT_TO_CHANGE -+#ifdef HAVE_GCR3 - #include -+#else -+#include -+#endif - #include - #include - #include --- -2.35.1 - diff --git a/0001-build-remove-positional-i18n.merge_file-arguments.patch b/0001-build-remove-positional-i18n.merge_file-arguments.patch deleted file mode 100644 index b836222..0000000 --- a/0001-build-remove-positional-i18n.merge_file-arguments.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 8c42a67695621d1e30cec933a04e633e6030bbaf Mon Sep 17 00:00:00 2001 -From: Bobby Rong <931189261@qq.com> -Date: Fri, 25 Mar 2022 03:14:43 +0000 -Subject: [PATCH] build: remove positional i18n.merge_file arguments - -Fixes build with meson 0.61 ---- - data/meson.build | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/data/meson.build b/data/meson.build -index 1a5d86f..0321c32 100644 ---- a/data/meson.build -+++ b/data/meson.build -@@ -1,6 +1,5 @@ - desktop = 'almanah.desktop' - i18n.merge_file( -- desktop, - type: 'desktop', - input: desktop + '.in', - output: desktop, -@@ -19,7 +18,6 @@ endif - - appdata = 'almanah.appdata.xml' - i18n.merge_file( -- appdata, - input: appdata + '.in', - output: appdata, - po_dir: po_dir, --- -2.35.1 - diff --git a/almanah.spec b/almanah.spec index 527596b..46bd4cd 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,26 +1,23 @@ Name: almanah -Version: 0.12.3 -Release: 12%{?dist} +Version: 0.12.4 +Release: 1%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later URL: https://wiki.gnome.org/Apps/Almanah_Diary Source0: https://download.gnome.org/sources/almanah/0.12/almanah-%{version}.tar.xz -Patch01: 0001-build-Build-with-gcr4-by-default.patch -Patch02: 0001-build-remove-positional-i18n.merge_file-arguments.patch - +BuildRequires: appstream BuildRequires: gcc BuildRequires: gettext BuildRequires: gpgme-devel BuildRequires: desktop-file-utils -BuildRequires: libappstream-glib-devel BuildRequires: meson BuildRequires: pkgconfig(cryptui-0.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gcr-4) BuildRequires: pkgconfig(gtkspell3-3.0) -BuildRequires: pkgconfig(gtksourceview-3.0) +BuildRequires: pkgconfig(gtksourceview-4) BuildRequires: pkgconfig(libecal-2.0) >= 3.45.1 BuildRequires: pkgconfig(libedataserver-1.2) >= 3.45.1 BuildRequires: pkgconfig(sqlite3) @@ -46,17 +43,19 @@ diary entries using multiple events. %files -f %{name}.lang %license COPYING -%doc AUTHORS NEWS README.md +%doc AUTHORS NEWS.md README.md %{_bindir}/%{name} -%{_datadir}/icons/hicolor/*/apps/%{name}.png -%{_datadir}/icons/hicolor/*/actions/%{name}*.svg -%{_datadir}/icons/hicolor/scalable/apps/%{name}-symbolic.svg -%{_datadir}/applications/%{name}.desktop -%{_datadir}/metainfo/%{name}.appdata.xml -%{_datadir}/GConf/gsettings/%{name}.convert +%{_datadir}/icons/hicolor/*/apps/org.gnome.Almanah.png +%{_datadir}/icons/hicolor/scalable/actions/org.gnome.Almanah-tags-symbolic.svg +%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Almanah-symbolic.svg +%{_datadir}/applications/org.gnome.Almanah.desktop +%{_datadir}/metainfo/org.gnome.Almanah.metainfo.xml %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Mon Jan 13 2025 Milan Crha - 0.12.4-1 +- Update to 0.12.4 + * Wed Jul 17 2024 Fedora Release Engineering - 0.12.3-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/sources b/sources index e08c797..54a48ac 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (almanah-0.12.3.tar.xz) = d12d87a591d47a651c87106c225a69aa9f5c742d299f6ca37e29ecbf9785ce2506f58cc578002df2dcb6c86eb9767c534f2f5d717e9a6f063b125aca89e556b1 +SHA512 (almanah-0.12.4.tar.xz) = 717f3b4aa514be33c236bf0f32866902b0174c28d62ea4b48d1caec2a3a5a85f1105ef491386e336335c619f932a0faf654d047516bcfc81c1ef0ca7b15ef310 From 3a3134eff1a537829cce2827d5c1d880915122d5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 10:53:11 +0000 Subject: [PATCH 34/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 46bd4cd..941f62f 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -53,6 +53,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 0.12.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Mon Jan 13 2025 Milan Crha - 0.12.4-1 - Update to 0.12.4 From 86985db11f97ceebd2332a8ed9a2e292885ad420 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 16:54:35 +0000 Subject: [PATCH 35/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 941f62f..5c767af 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -53,6 +53,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 0.12.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Jan 16 2025 Fedora Release Engineering - 0.12.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 7fb2fefbe1e5dd1704d819102dc280f6620cf85e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 03:36:07 +0000 Subject: [PATCH 36/36] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- almanah.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/almanah.spec b/almanah.spec index 5c767af..38d82c6 100644 --- a/almanah.spec +++ b/almanah.spec @@ -1,6 +1,6 @@ Name: almanah Version: 0.12.4 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Application for keeping an encrypted diary License: GPL-3.0-or-later @@ -53,6 +53,9 @@ diary entries using multiple events. %{_datadir}/glib-2.0/schemas/org.gnome.%{name}.gschema.xml %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 0.12.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Wed Jul 23 2025 Fedora Release Engineering - 0.12.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild