GNOME Bugzilla – Bug 663828
Auto-add all Google calendars for GOA accounts
Last modified: 2015-05-29 08:48:08 UTC
Only my own calendars in Google Calendar seem to be imported/connected with gnome-online-accounts as only one calendar shows up in Evolution. I have multiple shared calendars in Google Calendar, and I was a bit surprised they weren't imported as well.
Yeah, I agree this is annoying. But it's a problem with Evolution, all that GOA does is provide the credentials to access the various services. Reassigning.
You can add other google shared or owned calendars using a right click on your google calendar in evolution then : - create a new calendar - google type - enter you user name - get the available calendars list - select the wanted calendar That works for me, and I can see the calendars, but Evolution seems lost each time I want to add/remove/modify an event : crashes, calendar or parameter corruption...
Hannes, Evolution adds only the default calendar, but offers a way to add other, as wrote Pierre-Antoine above. Is it sufficient for you? I'm asking because I'm not sure whether it's always expected to get all your calendars, especially when the GOA UI asks to access the "Calendar", not all configures/subscribed-to calendars. Note that with auto-added calendars you will not be able to remove them, you will be able to disable them only.
I plan to add all available Google Calendars when I rewrite Evolution's GOA module for 3.6.
I tried again with the latest Evolution 3.2.3 (Fedora 16) to add google shared calendars other than the default one. Everything seems to work perfectly (two different accounts tried with read only calendars and full access calendars on both). Milan and Matthew : I'm perfectly happy with the actual ability to add additional calendars. Adding all available calendars would be a good solution either, considering you can disable/hide the un-needed ones and that most of the time, if you want to access your google calendars using Evolution, you want all the available info.
I forgot to add that, in order to get the "add calendar" working properly, you need to restart Evolution after adding the gmail account.
I can of course not speak for everyone, but I guess my expectation of adding my Google account to gnome online accounts was that *all* my calendars in Google calendar would be synced, and not just the default personal calendar. That is, I expect that the calendar view in Evolution should show everything my Google calendar page shows me. Currently I use Evolution (or EDS, at least) to get the reminders and Gnome-Shell integration from my most important calendars, but still go to Google Calendar to schedule some other things, as I haven't mustered the effort to import all of them into Evolution manually. Adding the calendars manually of course works, but seems to somewhat defeat the purpose of GOA in the first place :) (I just want to make clear that I think GOA is brilliant, despite the minor issues!) Also, bumping this bug to GNOME version 3.4.x as that is the GNOME version I am currently using.
*** Bug 710840 has been marked as a duplicate of this bug. ***
*** Bug 721631 has been marked as a duplicate of this bug. ***
I don't use Evolution at all, so is there a way to add my other non-default Google calendars, i.e., maybe from the command line with gsettings or something? That's not really pressing to me as I only use the Web/Android interfaces of Google Calendar. But still it's a nice feature that the Gnome Shell date/clock widget shows the agenda for the next two days but that's totally incomplete for me now as my default Google calendar is for personal stuff while I have others for work appointments, etc. The latter are usually more important to me when sitting in front of the computer, i.e., working.
(In reply to Tassilo Horn from comment #10) > I don't use Evolution at all, so is there a way to add my other non-default > Google calendars, i.e., maybe from the command line with gsettings or > something? I'm not aware of any software which would let you list available Google calendars and add them for usage in evolution-data-server, thus also to any other evolution-data-server client. There were some ideas to add this functionality to California or gnome-calendar, but, if I'm not mistaken, the change missed 3.16.0 feature deadline.
Created attachment 299705 [details] [review] eds patch for evolution-data-server; This introduces new e-webdav-discover.h/.c, which helps in the available WebDAV collection discovery. It also tries with .well-known URIs, thus it's able to find out available CalDAV calendars (including tasks and memos) and CardDAV address books on Google, ownCloud, Zimbra, DAViCal and possibly any other servers supporting this functionality. Interesting might be that with the .well-known URI check it's enough to know the server host name and credentials to login (works with Google server). The patch moves some files from libebackend to libedataserver, for better visibility, and the e-webdav-discover.c also contains new translatable strings, thus it's a material for 3.17.1. The discovery itself is heavily based on the current code in the CalDAV configuration module in Evolution itself. File changes: > renamed: libebackend/e-soup-auth-bearer.c -> libedataserver/e-soup-auth-bearer.c > renamed: libebackend/e-soup-auth-bearer.h -> libedataserver/e-soup-auth-bearer.h > renamed: libebackend/e-soup-ssl-trust.c -> libedataserver/e-soup-ssl-trust.c > renamed: libebackend/e-soup-ssl-trust.h -> libedataserver/e-soup-ssl-trust.h > new file: libedataserver/e-webdav-discover.c > new file: libedataserver/e-webdav-discover.h > deleted: modules/owncloud-backend/owncloud-utils.c > deleted: modules/owncloud-backend/owncloud-utils.h
Created attachment 299706 [details] [review] eds (additional) patch for evolution-data-server; This is an additional patch, to fix some nitpicks which do not belong to this bug report fully, thus I rather split them out of the main patch. Changes: a) memory leak fix in e_collection_backend_authenticate_children() b) do not overwrite user name with empty value in ESourceWebdav c) avoid possible (rare) crash in source_parse_dbus_data() d) e_goa_password_based_lookup_sync() can be called for OAuth/2 based GOA accounts, thus count with it
Created attachment 299719 [details] [review] eds patch ][ for evolution-data-server; Just noticed that the async API (which is not used yet) didn't reference an ESource properly, which could lead to reference count imbalance.
Created attachment 299737 [details] [review] eds patch ][ addition for evolution-data-server; Ehm, one more overlook. This is to be added on top of the eds patch ][.
Created attachment 299866 [details] [review] eds patch ][ correction for evolution-data-server; This is getting embarrassing. The more I use it, the more bugs I find in the code. This is one more.
I committed the main change for 3.17.1 as commit 00b614fa9c5e in eds master, then also committed the other patches attached here.
Let's have this work for the stable branch as well: Created commit 00f63d8 in eds gnome-3-16 (3.16.3+)