Geary 0.10 running on elementary OS 0.3.2 | |
Original author(s) | Yorba Foundation |
---|---|
Developer(s) | The GNOME Project, Elementary |
Initial release | May 4, 2012[1] |
Stable release | 40.0 (April 23, 2021[2]) [±] |
Written in | Vala (GTK+) |
Operating system | Unix, Linux |
Type | Email client |
License | GNU LGPL v2.1 |
Geary is a free and open-source email client written in Vala, which is based on WebKitGTK+. Although since adopted by the GNOME project, the project originally was developed by the Yorba Foundation. The purpose of this e-mail client, according to Adam Dingle, Yorba founder, was to bring back users from online webmails to a faster and easier to use desktop application.[3] Pantheon Mail is a fork initiated by the Elementary OS community after the demise of Yorba.
People at Elementary OS directly supported[4] the project and Geary became the default application in that GNU/Linux distribution.
On March 25, 2013,[3][5] Jim Nelson, executive director at Yorba, launched a crowdfunding campaign on IndieGoGo to gather 100,000 USD that would have been used to pay the 3 full-time Yorba engineers that were working at that time on Geary. Among the proposed features that were proposed to be developed, we can cite: instant search, always-on notifications, support for all IMAP servers, auto saving of drafts, GPG, handle of calendar invites to your favorite calendar application and Google address book integrations.[6] Unfortunately, on April 23, 2013, only 50,860 USD were gathered from 1,192 backers. The amount was not met and the campaign failed. According to the rules fixed by IndieGoGo, Yorba did not receive any of the money that had been pledged.[7][8][9]
After this failure, Jim Nelson declared in a blog post that the crowdfunding campaign was kind of an experiment to see if that route was enough to sustain open-source development. He reaffirmed Geary had been created to improve the Linux experience, and therefore had no chance of being ported to OS X or Windows platforms.[4]
As Yorba Foundation had stopped its activities and GNOME had not revealed its plans about this project at that time, the future of Geary was unclear. As a result, to these incertitudes and due to previous design disagreements with the old Geary team and because elementary OS was actually using Geary as the default mail client but as a version heavily patched, Daniel Foré, the leader of Elementary OS, decided to fork the project on November 18, 2015 and continue with the development; the project was renamed Pantheon Mail during the process.[10][11] Pantheon Mail replaced Geary in elementary OS 0.4, which is codenamed Loki.[12]
However, in March 2016, Michael Gratton, an old Geary contributor, applied to become the new maintainer of Geary.[13] His main purpose will be to try fixing pressing issues like the dependency on the old WebKit1GTK, collaboration with Pantheon Mail, better support for non-GMail servers, mailbox management, the account UI, extending search, etc. Contributing to Geary as a GNOME project requires the maintainer to become a GNOME member. After a discussion with Adam Dingle, Yorba's founder, both agreed to wait for Michael to fulfill GNOME membership application requirements. In the meantime, Michael will post his patches to the GNOME Bugzilla instance and Adam will commit them for him.[14]
Since that new maintainer, Geary seems to live on. On May 15, 2016, a new version of Geary (0.11) was released,[15] followed by version 0.12 on October 2, 2017.
Geary and Pantheon Mail seem to continue to live long their way, with both code base digressing (see #Technical information below).
from:john
, is:read
, is:unread
and is:starred
[17]Implementation to support GPG has been started,[19] but to the lack of reactivity from Yorba and the lack of bug bounties validations, the maintainer has decided to give up on that topic, waiting for GNOME intentions about Geary (give up the project or continue) before continuing contributions.[20]
Geary internally uses an SQLite database to store a local copy of emails and for indexing. It uses a fully asynchronous GObject-based IMAP client library. One feature that distinguishes Geary from other open source email clients is the conversation view.
Geary and Pantheon Mail are using gettext for translations.[17]
As soon the elementary OS team heard about the news of Yorba's demise, they started planning the next steps of Geary's future and adopted the code base in a few days. Since November 2015, as part of their Pantheon Mail fork, they removed support and workarounds for very old Linux distributions that were not taking advantage of modern toolkit features. Code was rewritten to be much easier to read and maintain. Additionally, they ported the build system to CMake and removed support for controlling notifications from the application itself, something unneeded as modern desktop environments like Plasma and GNOME all provide these features in their own system settings. They also addressed numerous translation issues and polished the UI and iconography of the software. Pantheon Mail can be installed alongside Geary without conflicts. The software has been packaged for other Linux distributions.[12]
As of April 3, 2016, Pantheon Mail has not been migrated to WebKitGTK+2 yet. The developers decided first to migrate the code managing the conversation view to use native GTK widgets (Gtk.CSS and Granite, a GTK+ library used as part of elementary OS). This offered several advantages, including minimizing the use of webviews, reducing the code, supporting hardware accelerated animations, and supporting RTL languages compared to webviews, GTK handles RTL support.[21][22] They also removed the use of custom GTK bars like PillHeaderBar
which were making the code complicated and difficult to read.[23][24]
Pantheon Mail only comes with IMAP support, but the developers porting the software plan to use an Evolution Data Server backend using libcamel, a mail access library used in the Evolution mail client.[23][25] The EDS support will not be available in elementary OS Loki, but likely in the next version.[26]
Michael Gratton, the current Geary maintainer, was enthusiastic in being able to collaborate with the elementary team but admitted concerns with regard to that possible collaboration. The code base had been increasingly diverging, with the UI classes between GNOME 3 HIG and the elementary identity being different. Additionally, depending on the decision to migrate Geary to the Evolution Data Server, this will only leave libraries GTK and GMime in common. He proposed to make a library for the engine between both projects or make a library for widgets used in common but he thinks this would be a lot of work for only a small gain.[27] Daniel Foiré, elementary OS leader, admitted Michael was right and repeated maintaining a mail engine was a lot of development burden without added value, while EDS could suits Pantheon Mail needs and bring support for Exchange.[28]
The GNOME project plans to migrate Geary to WebKit2 for the version 0.12.[29]
The initial name "Geary" coincides with the name of the Geary Street, because all Yorba's products were named after streets in San Francisco . However, according to a former Yorba employee, the application was not named after the address of Yorba Foundation was located in.[30] That was actually a coincidence. The first beta of Geary has been released in May 2012, and Yorba was still located on Capp Street at that time.[31][32]