#975039 evolution: Evolution 3.38.1-2 fails to render emails.

Package:
evolution
Source:
evolution
Description:
groupware suite with mail client and organizer
Submitter:
Russel Winder
Date:
2021-05-02 14:21:16 UTC
Severity:
important
#975039#5
Date:
2020-11-18 09:34:53 UTC
From:
To:
Dear Maintainer,

I updated evolution and associated packages on Debian Sid this morning (2020-11-18) and now it refuses to
render any emails. There is no message indicating what the problem actually is but WebKit seems
to be part of the problem.

This is a blocking bug since it is not possible to read any email.

#975039#10
Date:
2020-11-18 11:27:21 UTC
From:
To:
It is also the case that it is not possible to create new emails, I
assume for the same WebKit issue.

#975039#15
Date:
2020-12-05 12:55:04 UTC
From:
To:
Hi,

I have the same issue with evolution update (3.38.1-2) over (3.36.4-2) on
2020-12-05.

When opening any email message in a seperate window the window opens with
title menu but without mail header and body content.

Instead: "A WebKitWebProcess crashed when displaying the message. You can
try again by moving to another message and back. If the issue persists,
please file a bug report in GNOME Gitlab.".

As mentioned in earlier message, "new email" and "forward" also don't
work due to no window opening at all in that case.


The issue appears to be related to sandboxing; it diappears disappears
with running evolution this way:
$ WEBKIT_FORCE_SANDBOX=0 evolution

I am running evolution though an X11 ssh forward and see messages like
these in the terminal every time I open an email:

Unable to init server: Could not connect: Connection refused
(WebKitWebProcess:3): Gtk-WARNING **: 13:43:24.795: cannot open display:
:10.0

However, the message also appears at evolution startup and drawing the
main window without causing apparent problems. I have seen the error
message before also the upgrade and the problem, but am unsure of the
exact times they were shown.

Using strace, I find the WebKitWebProcess child process indeed unable to
connect to localhost:6010 (as well as expected domain sockets)

(Also:
bwrap: No permissions to creating new namespace, likely because the kernel
does not allow non-privileged user namespaces. On e.g. debian this can be
enabled with 'sysctl kernel.unprivileged_userns_clone=1'.
)

Best Regards,
Kai

#975039#20
Date:
2020-12-05 16:12:30 UTC
From:
To:
Hi,

I can confirm that downgrading to evolution 3.36.4-2 and related
packages (from snapshot 20201117T032431Z) avoids the problem and
restores normal/previous behavior.

#975039#25
Date:
2020-12-05 20:00:44 UTC
From:
To:
On standard Debian kernels, /usr/bin/bwrap needs to be setuid root. Is it?

The bwrap package should set this up automatically, unless you have
reconfigured it with dpkg-statoverride.

It is also possible to make /usr/bin/bwrap not be setuid (the same as on
Ubuntu and Fedora, for example) using dpkg-statoverride, but if you do
that, you need to configure the kernel as suggested in the error message
(so the kernel makes the same security tradeoffs that it does on Ubuntu
and Fedora).

See https://bugs.debian.org/898446 for more information on the security
tradeoffs.

    smcv

#975039#30
Date:
2021-01-09 18:50:47 UTC
From:
To:
I noticed my last reply did not go to BTS...

Today I re-checked by upgrading evolution again.
ii  evolution                      3.38.2-1     amd64
ii  evolution-common               3.38.2-1     all
ii  evolution-data-server          3.38.2-2     amd64
ii  evolution-data-server-common   3.38.2-2     all
ii  evolution-plugins              3.38.2-1     amd64

I also noticed that bwrap is no longer SUID root (and newer
modification time). Re-installing bubblewrap did not change it.

# ls -la /usr/bin/bwrap
-rwxr-xr-x 1 root root 59680 Jan  3 15:13 /usr/bin/bwrap

The observation of the issues has changed slightly with the new
evolution version: Now no window appears at all when selecting "New
message" (in fact, nothing appears to happen). I tried again with bwrap
SUID root (and a reboot for good measure) to no change in behavior.

Back to 3.36.4-2.

Kai

#975039#35
Date:
2021-02-22 12:06:32 UTC
From:
To:
Hi,

I still experience very bad quality rendering of fonts.  Fonts looks
like very small number pixel fonts zoomed up in current pre-release
testing/unstable.

As I see upstream gtk/webkit bug, I wonder following upstream change
may fix this.  (Not testedfor my problem but sounds like something
needs to be fixed)
* https://trac.webkit.org/changeset/271354/webkit

This may be causing problem for evolution since I see other similar
issue is reported on evolution for other distro and upstream.
* https://forums.linuxmint.com/viewtopic.php?t=321934
* https://gitlab.gnome.org/GNOME/evolution/-/issues/1195

#975039#38
Date:
2021-02-22 12:06:32 UTC
From:
To:
Hi,

I still experience very bad quality rendering of fonts.  Fonts looks
like very small number pixel fonts zoomed up in current pre-release
testing/unstable.

As I see upstream gtk/webkit bug, I wonder following upstream change
may fix this.  (Not testedfor my problem but sounds like something
needs to be fixed)
* https://trac.webkit.org/changeset/271354/webkit

This may be causing problem for evolution since I see other similar
issue is reported on evolution for other distro and upstream.
* https://forums.linuxmint.com/viewtopic.php?t=321934
* https://gitlab.gnome.org/GNOME/evolution/-/issues/1195

#975039#43
Date:
2021-05-02 13:14:46 UTC
From:
To:
Hi,

I finally found upstream discussion on this very annoying problem.

Evolution for Debian 11 Bullseye under wayland has ugly font problem as
of May 2, 2021.  (Similar issue with firefox, etc.).

This is caused by WebKit bug which exposes it under sandboxing. 

https://gitlab.gnome.org/GNOME/evolution/-/issues/1161

According to upstream, this is not evolution bug.

For now, I workaround this problem by starting "evolution" by defining
shell alias and starting it from console shell prompt.


alias evolution="WEBKIT_FORCE_SANDBOX=0 evolution"

Osamu

#975039#46
Date:
2021-05-02 13:14:46 UTC
From:
To:
Hi,

I finally found upstream discussion on this very annoying problem.

Evolution for Debian 11 Bullseye under wayland has ugly font problem as
of May 2, 2021.  (Similar issue with firefox, etc.).

This is caused by WebKit bug which exposes it under sandboxing. 

https://gitlab.gnome.org/GNOME/evolution/-/issues/1161

According to upstream, this is not evolution bug.

For now, I workaround this problem by starting "evolution" by defining
shell alias and starting it from console shell prompt.


alias evolution="WEBKIT_FORCE_SANDBOX=0 evolution"

Osamu

#975039#51
Date:
2021-05-02 13:44:01 UTC
From:
To:
(Please note that I am not an Evolution or WebKitGTK maintainer.)

This is not the same issue that the reporter of #975039 reported, so we
should treat it as a separate bug, even if the WEBKIT_FORCE_SANDBOX=0
workaround is the same. The original topic of #975039 was that emails
did not render *at all*, whereas you are talking about emails rendering
as low-quality text.

Please send replies about low-quality font rendering to the new cloned
bug, not to #975039.

Do you have xdg-desktop-portal and xdg-desktop-portal-gtk installed?
If not, does installing them improve the font rendering?

Does upgrading libgtk-3-0 to the version from experimental improve the
font rendering? There have been some changes related to font settings
and sandboxing.

    smcv

#975039#56
Date:
2021-05-02 13:44:01 UTC
From:
To:
(Please note that I am not an Evolution or WebKitGTK maintainer.)

This is not the same issue that the reporter of #975039 reported, so we
should treat it as a separate bug, even if the WEBKIT_FORCE_SANDBOX=0
workaround is the same. The original topic of #975039 was that emails
did not render *at all*, whereas you are talking about emails rendering
as low-quality text.

Please send replies about low-quality font rendering to the new cloned
bug, not to #975039.

Do you have xdg-desktop-portal and xdg-desktop-portal-gtk installed?
If not, does installing them improve the font rendering?

Does upgrading libgtk-3-0 to the version from experimental improve the
font rendering? There have been some changes related to font settings
and sandboxing.

    smcv

#975039#63
Date:
2021-05-02 14:18:00 UTC
From:
To:
After I posted previous workaround, I realize this can be done more
cleanly to get GUI icon start up to work.

I created /usr/local/bin/evolution as:

```
#!/bin/sh -e
WEBKIT_FORCE_SANDBOX=0 exec /usr/bin/evolution "$@"

```

Since my PATH setting is ordered as 
  /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
this nicely replace all invocation of evolution without full path.

Osamu

#975039#66
Date:
2021-05-02 14:18:00 UTC
From:
To:
After I posted previous workaround, I realize this can be done more
cleanly to get GUI icon start up to work.

I created /usr/local/bin/evolution as:

```
#!/bin/sh -e
WEBKIT_FORCE_SANDBOX=0 exec /usr/bin/evolution "$@"

```

Since my PATH setting is ordered as 
  /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
this nicely replace all invocation of evolution without full path.

Osamu