GNOME/Evolution

来自 ArchWiki
(重定向自 Evolution)


Evolution 是一个用于管理电子邮件、日历、联系人、任务、笔记和 RSS 网络订阅的应用程序。 它是 GNOME 的默认邮件客户端,并支持 IMAP、Microsoft Exchange Server、Novell GroupWise、LDAP、WebDAV、CalDAV 以及许多其他服务和协议。

安装

安装 evolution 软件包。 非 GNOME 用户也应该查看 #在 GNOME 之外使用 Evolution

更多插件

  • Bogofilter 插件 — 为 Evolution 提供垃圾邮件过滤,使用 Bogofilter。
https://bogofilter.sourceforge.io/ || evolution-bogofilter
  • EteSync 插件 — 为 Evolution 提供端到端加密的私有信息同步,使用 EteSync 开源协议。
https://gitlab.gnome.org/GNOME/evolution-etesync || evolution-etesyncAUR
  • EWS 插件 — 通过 Exchange Web Services 集成 MS Exchange。
https://wiki.gnome.org/Apps/Evolution || evolution-ews
  • On 插件 — 支持从系统托盘控制 Evolution。
https://github.com/acidrain42/evolution-on || evolution-on
  • SpamAssassin 插件 — 为 Evolution 提供垃圾邮件过滤,使用 SpamAssassin
https://spamassassin.apache.org/ || evolution-spamassassin

IMAP 设置

请参阅 GNOME 帮助中的 IMAP+ 邮件帐户设置[死链 (dead link) 2024-12-15 ⓘ]

备选 IMAP 设置

让 Evolution 直接连接到 IMAP 服务器的替代方案是将 IMAP 服务器同步到您的 PC。 这会占用与您的邮件一样多的硬盘空间,尽管可以限制以此方式同步的文件夹(请参阅 #OfflineIMAP 设置)。 另一个好处(此应用程序的主要灵感)是,即使在没有互联网连接的情况下移动,您也可以在 PC 上拥有电子邮件(包括附件)的完整副本以供检索。

要设置此功能,您需要安装 offlineimap 软件包。 有关更多信息,请参阅 https://www.offlineimap.org/

OfflineIMAP 设置

OfflineIMAP 从 ~/.offlineimaprc 文件中获取其设置,您需要创建该文件。 大多数用户将能够为标准 IMAP 服务器使用下面的模板文件。 有关更多信息,请参阅 OfflineIMAP

[general]
accounts = MyAccount
# Set this to the number of accounts you have.
maxsyncaccounts = 1
# You can set ui = TTY.TTYUI for interactive password entry if needed.
# Setting it within this file (see below) is easier.
ui = Noninteractive.Basic

[Account MyAccount]
# Each account should have a local and remote repository
localrepository = MyLocal
remoterepository = MyMailserver
# Specifies how often to do a repeated sync (if running without crond)
autorefresh = 10

[Repository MyLocal]
type = Maildir
localfolders = /home/path/to/your/maildir
# This needs to be specified so offlineimap does not complain during resync
sep = .
nametrans = lambda folder: re.sub('^.', '',
                           re.sub('^$', '.INBOX', folder))

[Repository MyMailserver]
# Example for a gmail account
type = IMAP
remotehost = your.imap.server.com
remoteuser = yourname
remotepass = yourpassword
remoteport = 143
# You need to configure some CA certificates
sslcacertfile = /etc/ssl/certs/ca-certificates.crt
# Translate your INBOX to be the root directory.
# All other directories need a dot before the actual name.
nametrans = lambda folder: re.sub('^.INBOX$', '',
                           re.sub('^', '.', folder))

如果您使用 Gmail,则可能需要添加其他翻译[死链 (dead link) 2023-04-23 ⓘ]

对于远程邮件服务器存储库

nametrans = lambda folder: re.sub('^.INBOX$', '',
                           re.sub('^', '.',
                           re.sub('\.', '_2E',
                           re.sub('^\[Gmail\].Drafts$', 'Drafts',
                           re.sub('^\[Gmail\].Sent Mail$', 'Sent', folder)))))

对于本地存储库

nametrans = lambda folder: re.sub('^Sent$',   '[Gmail].Sent Mail',
                           re.sub('^Drafts$', '[Gmail].Drafts',
                           re.sub('_2E', '.',
                           re.sub('^.', '',
                           re.sub('^$', '.INBOX', folder)))))

nametrans 配置的其他示例(包括 Courier IMAP 服务器的配置)可以在 https://www.offlineimap.org/doc/nametrans.html 中找到。

警告: 请注意,~/.offlineimaprc 代码中任何数量的空格缩进的行都将被解释为上一行的延续。 如果需要此行为(例如上面的 lambda 表达式中的 re.sub 调用),请注意缩进行。

您可能还对在后台运行 offlineimap 感兴趣。

为 offlineimap 的 maildir 设置 Evolution

请参阅 GNOME 帮助中的 Maildir 格式邮件目录帐户设置[死链 (dead link) 2024-12-15 ⓘ]。 如果您使用的是 #OfflineIMAP 设置中的 ~/.offlineimaprc 文件的变体,请在编辑 > 首选项 > 邮件帐户 > 编辑 > 接收邮件中将邮件目录路径设置为“root”文件夹。 您还可以选择在接收选项中更频繁地“检查新邮件”(例如每分钟而不是每 60 分钟),因为此过程只会检查您的本地副本,而不会检查服务器端副本。

Gmail 设置

请参阅 GNOME 帮助中的 通过 Evolution 访问 Gmail IMAP[死链 (dead link) 2024-12-15 ⓘ]通过 Evolution 访问 Gmail POP 帐户[死链 (dead link) 2024-12-15 ⓘ]。 您可能还有兴趣阅读 Gmail 帮助中的 通过其他电子邮件平台检查 Gmail(对于 IMAP)或 使用 POP 在其他电子邮件客户端上阅读 Gmail 邮件,以在 Evolution 邮件配置助手的接收邮件和/或发送邮件下手动填写以下字段/复选框。

  • 服务器类型
  • 服务器端口
    • 服务器需要身份验证
  • 用户名
  • 加密方法

应该从接收邮件身份验证下的下拉菜单中选择 OAuth2 (Google)

提示
  • 如果您在身份部分中选中根据输入的电子邮件地址查找邮件服务器详细信息,则助手将自动配置您通过 Gmail 接收/发送邮件的设置。 请注意,助手始终默认为使用 IMAP 接收邮件。
  • 如果您正在使用 GNOME,则可以改为通过设置 > 在线帐户添加 Google 帐户。

Gmail 日历

您可以使用两种方法之一在 Evolution 中使用您的 Gmail 日历(除了 GNOME 在线帐户[死链 (dead link) 2024-12-15 ⓘ],如 #Gmail 设置中所述)。

使用 WebDAV 日历

按照 Google 日历帮助中“获取您的日历(仅查看)”下的步骤操作,以获取所需日历的“iCal 格式的秘密地址”。 然后按照 GNOME 帮助中的 使用 WebDev 日历[死链 (dead link) 2024-12-15 ⓘ] 下的步骤操作。 将先前获得的秘密地址用于URL字段中的地址。

使用 Google 日历

按照 GNOME 帮助中的 使用 Google 日历[死链 (dead link) 2024-12-15 ⓘ] 下的步骤操作。 如果出现提示,您可能需要授予 GNOME Evolution 访问您 Google 帐户的权限。

Google 联系人

#Gmail 日历类似,您还可以在 Evolution 中同步您的 Google 联系人。 有关更多信息,请参阅 GNOME 帮助中的 使用 Google 地址簿[死链 (dead link) 2024-12-15 ⓘ]

Microsoft Exchange 和 Office 365

如果您的电子邮件本地托管在 Microsoft Exchange Server 上或云托管在 Office 365 上,则可以使用 IMAP/POP 和 SMTP 访问您的电子邮件。 但是,某些附加功能(例如访问 Outlook 日历和联系人管理)仅在您使用 Microsoft 的专有 Exchange ActiveSync (EAS) 协议连接到 Microsoft Exchange Server 或 Office 365 服务器时才可用。

有两种方法可以在 Evolution 中添加/管理 Microsoft Exchange 帐户,但这两种方法都需要 Evolution EWS

使用 GNOME 在线帐户

如果 gnome-online-accounts 软件包尚不存在,请安装它。 然后在 GNOME 设置中选择在线帐户,并使用以下值添加新的 Microsoft Exchange 帐户

电子邮件 您的电子邮件地址(例如 your.name@example.com)
密码 您的电子邮件帐户密码来自 https://aka.ms/mfasetup 的应用密码
用户名 再次输入您的电子邮件地址
服务器 outlook.office365.com

单击连接后,您的 Exchange 帐户应与您的其他在线帐户一起列出。 选择您要同步的内容(默认情况下,所有功能都已启用)。

本文或本节的事实准确性存在争议。

原因: 截至 2021-12-15,将 2FA 与个人 Microsoft 帐户、GOA、evolution-ews 和应用密码(按照 [1] 创建)一起使用似乎在 Evolution 中运行良好。 (在 Talk:GNOME/Evolution 中讨论)
注意
  • 如果您的电子邮件地址使用自定义域名,您仍然需要在帐户配置期间为服务器字段使用 outlook.office365.com。
  • 启用 2FA 将阻止连接到 Exchange Server

不使用 GNOME 在线帐户

请参阅 https://wiki.gnome.org/Apps/Evolution/EWS/OAuth2;特别是针对免费帐户用户的介绍和“在 Evolution 中配置帐户”。 换句话说,免费帐户用户无需关注应用程序/租户 ID,因为他们无法使用 OAuth2。

您的组织可能不允许访问 GNOME Evolution (EWS) 应用程序。 一种可能的解决方法(而不是向管理员请求访问权限)是从 Evolution 邮件配置助手的接收邮件部分的身份验证下的下拉菜单中选择基本而不是 OAuth2 (Office365)。 免费帐户用户也可以选择基本——这是“创建应用程序特定密码”的替代方法。

在 GNOME 之外使用 Evolution

Evolution 依赖 GNOME Keyring 存储帐户密码,因此要在 GNOME 之外使用 Evolution,请参阅 GNOME/Keyring#使用密钥环 并确保存在名为 login 的密码密钥环。

拼写检查

请参阅 GNOME 帮助中的 拼写检查[死链 (dead link) 2024-12-15 ⓘ]。 Evolution 通过 gspell 使用 Enchant,因此您可以使用 Hunspell 以外的检查器来帮助进行拼写检查。

提示和技巧

更改密码设置

可以更改用于保护与服务器连接的已公布密码。 Evolution 不提供用于更改已用密码设置的开关。 但是,由于 Evolution 使用 GnuTLS,因此可以使用环境变量更改设置。

更改这些设置的一种方法是将 /usr/share/applications/org.gnome.Evolution.desktop 文件复制到 ~/.local/share/applications/,并在复制的 .desktop 文件中设置适当的环境变量。 例如,进行以下更改以避免使用带有 NIST/NSA 曲线的 ECC 密码

~/.local/share/applications/org.gnome.Evolution.desktop
...
Exec=env G_TLS_GNUTLS_PRIORITY=${G_TLS_GNUTLS_PRIORITY:-NORMAL:-ECDHE-ECDSA:-ECDHE-RSA} evolution %U
...

实现此目的的另一种方法是使用包装脚本

#!/bin/sh

export G_TLS_GNUTLS_PRIORITY=${G_TLS_GNUTLS_PRIORITY:-NORMAL:%COMPAT:\!VERS-SSL3.0}

exec /usr/bin/evolution

可用的密码设置记录在 https://gnutls.org/manual/html_node/Priority-Strings.html 中。

使用自定义字体

默认情况下,Evolution 仅提供少量内置字体用于编写消息。 但是,您可以设置其他字体在编写 HTML 消息时用作“默认”选项。 这是通过在 ~/.local/share/evolution/webkit-editor-plugins/body-font.js 上创建一个 webkit 编辑器插件来完成的。 查看下面使用 Microsoft Calibri 字体的示例

'use strict';

var localhostBodyFontPlugin = {
   name : "localhostBodyFontPlugin",
   setup : function(doc) {
      if (doc.body) {
          doc.body.setAttribute("style", "font-family: Calibri,sans-serif; font-size: 11.0pt;")
      }
   }
};

EvoEditor.RegisterPlugin(localhostBodyFontPlugin);

参见