How to run the Geary email client on Windows 10.

Why use Geary

Geary is a great example of a polished and modern, single-purpose software. It’s free, open-source (because you don’t want others reading your emails) and pleasing to the eye, a combination not easy to come by.

Running Geary on Windows 10

Unfortunately, it’s a Linux-only app, or so I thought… or so it is… The following gives some guidelines on how to run Geary on Windows. It can be done, but requires many steps and it doesn’t work very well for the time being.

Why not to use Geary on Windows 10

  • Inconsistent behaviour of window maximize button, taskbar button and window resize handles. Possibly an issue of the X11 server.
  • Frequent crashes: Segmentation fault (core dumped)
  • There’s no indication for attachments.
  • Opening attachments doesn’t work on double click (dealbreaker!) but they can be still saved.
  • Not very responsive; slow when opening emails.
  • The sidebar cannot be resized.

Last but not least, although a feature and not a bug, Geary doesn’t have filter settings.

This was only feasible with the Windows Subsystem for Linux (WSL), a quite recent and very handy development that allows to run Linux apps on Windows. Of course, it is also mostly about command line or terminal apps. It has a few bugs here and there, but it mostly works. It is mostly useful to people that need certain tools (see applications) that are not available on Windows, and yet still need to use this OS.

How to run Geary on Windows 10

Install WSL

The instructions on how to install WSL are straight forward if you’re familiar with PowerShell. In my system, I already had the Ubuntu flavor, which is available through the Microsoft Store.

Install X11

A certain subsystem called the X Window System is required to run graphical Linux apps. There’s a few implementations for Windows, but I discovered VcXsrv had fewer quirks.

If you’re on a High DPI display, make sure to change the settings of the VcXsrv app accordingly, otherwise it texts and other elements will appear blurry. Go to C:\Program Files\VcXsrv then right click on xlaunch.exe → Properties → Compatibility → Change high DPI settings → ✔ Override high DPI scaling bevahior. Scaling performed by: Application.

Open the installed XLaunch app, ✔ Multiple Windows, set Display number to -1 → Next > → ✔ Start no client → Next > → (leave the defaults) → Next > → Finish. You need to do this every time you need to run a graphical Linux app.

Install Geary

Now you need to open a Linux terminal. In case you installed Ubuntu for Windows, then look for this app. When you open it for the first time, you might be requested to create a superuser (equivalent to a Windows administrator). Make sure to make note of the password, because you will need it often. Have in mind that keyboard shortcuts for Copy/Paste don’t work. You can select text and right click to Copy it, or simply right clip to Paste.

Installing apps on Ubuntu is easy. First write sudo apt-get update to update the references to the software repositories. Then run sudo apt-get install geary and Geary along with almost all of its dependencies will be installed.

Try to run geary with the following: DISPLAY=:0 geary and it should greet you with the setup window. You need to already have an email account and its settings.

Not there yet…

However, subsequent tries to open Geary failed. You likely need to install gnome-keyring as some threads on the Ubuntu forums suggest. This should be included in Geary’s dependencies, although I understand it is supposed to compliment the GNOME desktop environment. You can do this by running sudo apt-get install gnome-keyring. Then more errors came up, this time caused by the X11 server: D-Bus library appears to be incorrectly set up. Follow the following procedure to get over it:

sudo touch /var/lib/dbus/machine-id

Select the text and right click to Copy the generated ID, then run:

sudo nano /var/lib/dbus/machine-id

Right click to paste, hit Ctrl + X to exit, type Y to confirm, then Enter to save. That’s pretty standard but again, this tutorial is for the newcomes to the terminal.

You can now just run DISPLAY=:0 geary in the Ubuntu terminal to open Geary. It should be possible to create a Batch script to automate the proccess of running it, but saw no point in making one. As WLS evolves, quirks may be less for Geary to be usable on Windows.