-
-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GNOME integration #5
Comments
Oh sweet! I'll try to get to it soon, though admittedly, I'm not a GNOME user (I use i3), so not sure how soon that will be. Happy to support anyone who wants to undertake this task. Since gnome shell is very JS heavy, I assume this would be written in JS (correct?). This is great, because there's already a JS etesync implementation (inside etesync-web, but well split from everything else), so all one would need is to write the glue code! More info on online accounts: https://wiki.gnome.org/Projects/GnomeOnlineAccounts |
Any movement on this? |
Sorry, not yet. An iOS client is a higher priority and I'm working on that at the moment. There are a few other things that will come before this, especially since there's already a solution, just run etesync-dav locally and connect Gnome to it. |
Running etesync-dav isn't that smooth. I don't have much knowledge regarding docker and such. Would've been easier if it could be distributed as a package. |
I completely agree it's not ideal. There's already an Arch package (well, AUR), and I'll happily include links to packages for other distros. I also want to setup something like AppImage so it'll be easy to just ship binaries too, but it's a matter of getting to do it, which I can't at the moment (again, iOS is a higher priority). |
I'm also very interested, like lot of ubuntu user, i'm using Gnome 3 & Gnome-calendar integrated into evolution mail. |
@tasn Only the gnome-shell is JS, most of gnome is written in C as is gnome online accounts. The gnome online accounts code is found here: And while I understand that there are more important things (also agree with IOS client having higher priority aso), setting up the etesync-dav is a little fiddly. I just did a "docker pull" and then it started to complain about "Failed to load htpasswd" and stopped working. So I then trew out docker and decided to run it directly, which means setting up systemd integration and resolving selinux issues. Which this is still a fairly technical way of running things, having it integrated in online accounts would improve the user experience a lot. Maybe working with the Gnome community and running this as a summer of code kind of thing? |
@snaggen, I completely agree with you that a proper integration is better. Though having to implement the whole EteSync protocol in C (even though it's not that big!) is going to be time consuming. Do you know if they have any plans on supporting backends in higher level languages? We already have Python, Go, JavaScript, Java and Kotlin implementations. I guess I could just write a small C wrapper around one of the other implementations, though that would be a bit ugly. :) Do you know anyone relevant from the GNOME community that may be able to help? Summer of code is already over for this year unfortunately, but it's definitely something to keep in mind for next year. |
@tasn Unfortunately my GNOME related development was a long time ago, now a days I'm mostly a user. However, I don't think the integration would need to be that complicated since they already support the Dav protocols required. So, I would assume you could just write the online account integration as a wrapper that configures and setup the existing etesync-dav. Well, in the end it will probably require a lot of struggling on the way, but that is where I would start looking. |
Ah, so your idea is to keep etesync-dav, and just launch it automatically in the background. I was thinking more of a real integration. Interesting thought. |
Together with a native support of EteSync in EDS I find this issue very exciting! |
This is really just pending on EDS support. The moment that's there it should be trivial to add it to GNOME. |
Confirmed for Google Summer of Code 2020: https://summerofcode.withgoogle.com/projects/#5162094988623872 |
Now that EDS support is here, what is needed to have this integrated into Gnome Online Accounts? I just started using the Etesync EDS plugin and it works perfectly so far. I see the Calendar and Contacts in the respective Gnome apps, just as when I added Google via Gnome Online Accounts. So it really just is a UI thing left to be done? Edit: |
Just the UI, yeah. The UI in Gnome Online Accounts is hard-coded to only allow certain resources, so need to send them a patch. Maybe also mention the evolution issue I mentioned above. |
What exactly is EDS? |
Evolution Data Server - it's the GNOME personal information backend. |
Okay opened an issue there: https://gitlab.gnome.org/GNOME/gnome-online-accounts/-/issues/152 Though I could not comment/add any technical details. Please add them by yourself, if you want. |
Great, thanks for the update! |
Did anyone try the GOA integration with EteSync from one of the linked MRs? I am curious what is the best workflow to add an EteSync account with the Librem 5 as Evolution does not scale that well. |
Probably you know GNOME's nice integration of "online accounts". So one can e.g. use Nextcloud for contact sync, see image below. However, as far as I see, this is not yet possible with EteSync.
So maybe with the help of this desktop client or maybe the CLI tool, such integration is possible? Or maybe try to send patches/pursue GNOME to add it as an official version? (and allow self-hosted versions, of course).
Or integration into GNOME calendar, which AFAIK can also be achieved separately to whole GNOME integration. (although the latter is, of course, better, as it also syncs contacts then)
The text was updated successfully, but these errors were encountered: