X2Mail - Releases

← App details

Nextcloud 34

X2Mail 0.8.0
Release Details
UpdatedJune 10, 2026, 10:08 p.m.
Changelog

Removed

  • Support for the unmaintained oidc_login app — user_oidc is the only supported SSO provider now (oidc_login does not support Nextcloud 34+). Existing oidc_login setups must migrate to user_oidc.

Added

  • Optional extra scopes for OIDC token exchange — configurable in the setup wizard next to the token audience, via occ x2mail:setup --oidc-scopes "scope1 scope2", or directly: occ config:app:set x2mail oidc-exchange-scopes --value "scope1 scope2". The wizard's Test Login uses the typed scopes.
  • Test Login diagnostics show which token was actually used: exchanged token (with audience, scopes and remaining lifetime), a warning when the token exchange fell back to the login token, or the plain login token

Security

  • Bearer tokens are never sent over unencrypted connections to remote mail servers (loopback connections are exempt)

Fixed

  • An expired or rejected token during SMTP authentication now terminates the SASL exchange cleanly (RFC 7628) and the mail server's error details are logged, instead of failing with a generic error
  • Token exchange/refresh failures now log the identity provider's error response and the remaining token lifetime, making SSO issues diagnosable from the log
  • The engine log no longer fills with CRITICAL: Caught SIGCHLD entries — these fired on every normal helper-process exit and were not errors
  • The webmail UI keeps loading even if a future Nextcloud release removes the internal CSP nonce API (the self-generated fallback nonce is now correctly referenced by the app's content security policy)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureQG/EGIUo+FkDlnfr+XSecs1Uw4Ni+9t/TC+4hkJ8s8ZZ2MU0Wf9zhrziiZzMkXe5RhkKHbrxQRNM1YiO9KtlpKBzO/aX15QGEBkWIyw/nXyHBGD0lCDu6+uqBtJtC58phSXA29iNent/HYdPwMzWQNvYTnWwFlJLSyTyYjSMJjBsrVGxJw4UaidhzJkaXaRKJRw0veWgGZtObk+rc7lM1/ijzgRIoZp0B2Y8UK0meHJSDkjt7/Z2m8DFMs9Nw7KCnPVZSffeFMV4x28sFvW1i2UywJCu77ZZE3CCqVW/y73mgmPAIo7OoLMz1KOF2d4i7r2d4KxfnTWVnLeFSPiiqUHEVWjyL0SgcBVHVpEsWCBnlJoQOifb/W6H/BaaBPqitFzvrdQ1HmSXRu+SgsqYLyQnqjk4s3tElNnYwms6X+JL8aX648hpB0Ciw6UppRrmKUdRfL6a5Uw2LnsNoK/Vn0BF3tLE1rmU3jcxkYF3duoO2g93HGVCE/yp2Zh3ikpjn5xnVpV1aCorN+MrmVR3D3sil8/V+tfO3IpSoszpmEqVCHOJlftIJt/U7eaPR2iklfehaau5e0zKtOYZCgEJclsrgQWEPb59S06jxXDJB7Dgs6uZCjkHksRKMeYQKfhXLDMV1R9EKjG36C+aW5t7LOYrfu8FTZEVV0ARzbP0tR4=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.3
Release Details
UpdatedJune 10, 2026, 7:28 a.m.
Changelog

Fixed

  • Nextcloud 34 compatibility: the content security policy no longer depends on the allowEvalScript() API removed in NC 34. A leftover $evalScriptAllowed subclass property additionally crashed NC 34's reflection-based policy merge with an HTTP 500 on every page load; the property is gone and 'unsafe-eval' — required by the Knockout-based UI — is now added to script-src via the version-appropriate path (direct keyword on NC 34, allowEvalScript() on NC 33).

Changed

  • CSP nonce lookup now degrades to a self-generated nonce if the internal ContentSecurityPolicyNonceManager is removed in a future release, turning a potential fatal error into a soft failure (no public nonce API exists yet — see #181).
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureGsnBP8p4EqmOoys6054RmLUQytckPSgoJoiRE8enLyD7RUmjC+gC0/itlwXC+6EHM7XSwhLYSH3GnbJZkzvu5J4LxtuHRbqUME/btmVJ9eiqgd3aNvChgCMI/l4lwtgJkb0qSOLUw+Ba95r0DqJFKZ7Th4e7gta2YENCqsbRlDH42q128cJnCkvpeuWfSYj1yXZ+dKvYbwrsaqbg7mCtCI6usKQbjJORgat2sexqjTpJbf3JngyF8aSVabN4kbwfCyI3y+KOpAZXd9vE016n3IyN91m1+ZBdHDzr7XTX9sxV4MgGvzU9iypZhnclHtcXD91cYqdjnGRwSME4I5fwQM1ZAirS5iwDE3cj1jkXxR6STnb0c93TZn399od9mqwQ5oTBDJMyi9jsPXAehTuvIhjtotQDnT5BQ+vfSU72ktexXvpG7Xj6RkvzlhsWbe6VmKPmhBxcSB7Y9NU30pPIuZkdb8m/10qRvZ7/SSBpIAHuPTufAUr5Un2GnN0fizL7CfnHFTp1uV7m7BbM4lXHHI1aC/fQaHSWiPSc5VxhJCCqAyn7gxXbI85FILuKdZKrE+0+36dKzDg0Capuv5/C3x0mVpYm5LhaaItCBCLP2NQPFMGhbN+zflequHPhlhTAJYdr7ulRjOhmeeNKLGgmROZfvp3YixRSONhMs6uiOGg=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.2
Release Details
UpdatedJune 5, 2026, 11:45 a.m.
Changelog

Changed

  • Authentication state now lives entirely in the Nextcloud session — X2Mail no longer stores its own authentication cookies
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureBeNqKd6NrEDPxBwGNphs2hAraGG7swYqYfaapcEC1fh9sTMtk1HqifZJJJbAsM5Vg7uvWvDZfx7bdWJ2uPQPfNZSl4hs4pdOQQOHw28Zm6xDpKoOFYhi3YeIGxA0UWfovot4ONhnr/qsQqxt2h3kQWrxheimBJRjsxSJVGSsKRYBnU/IqwuarmpxHHpLsNgB+SIBztFoN7qk0EJiObh0iGiz56XWKR2PUF7Z9/I4MsnWuu59m8Xu+8Bm8mxTb0PNs0tMl3fIVoacWkmGBYwv4sbV8NaUkWkAKGCfVUDN1gQHJ+u2MF4Kdo7/fkmFa9lWPED2UWkFpjGXzno0JSirkLgxwypyrTDLq05lTljRb3oqXg3dbKmuT5RtWWSjsucBUWsYICxNg5IjsFrgk4D80VQFoxWYDWVydwaIv8I7Nx/+gCOExq12CDrKcp29m2vZ10weqy/BRl9QlflTK8U/aDraThsA+e7oeg9gNEE4hp4mpl4728QYIGetwK7GEVMuNUPJUyvT2GVlIhFUoTc2exdV8CndUvR/JFOxT4WVrKrZ3CdMbVmgysTcUTrwEH8uYf7YiwQK84iLANyT82yc7SdXB7mgTD7UbPNvpkOE/iYnLvXD8N+yk5Fo8YnbesVUh0fyPgKhV0Uqm9xe+RMhbAUKBqvJuFF1nT6zkwzn77c=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.1
Release Details
UpdatedMay 31, 2026, 5:58 p.m.
Changelog

Security

  • S/MIME certificates are now generated as per-user self-signed end-entity certificates, signed with their own key (no shared signing key)
  • S/MIME signatures now report the signer identity and a trust state (trusted only for known signers) instead of marking every valid signature as verified
  • External image proxy rejects URLs resolving to private, loopback, link-local or reserved addresses (SSRF hardening) and caps proxied response size
  • Mail authentication offers only OAuth SASL mechanisms (OAUTHBEARER/XOAUTH2); password-based SASL fallbacks were removed so a malicious server cannot downgrade the connection

Fixed

  • S/MIME certificate creation now works for identities without a display name
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
Signaturejmsi1UAFQZeDWrsLSRK5vayDE8f922PYBop+Y90o79JyS/tyTnI1tl4XINYVcsjEvOwqKO2up9gL+Ar/6m+c/8DZRixUZzWiHVB+AYojk1jnHIXuvgHSfnEfPRwnL0A8+rRyhICXNdqopndvAPYPlMW2n5IO7SZGuc/CrBlyIwhhkAsb9exo+ayBzddyyBvanQwNfr7HcrIwqYT3iPZ0Yn3uaz4r+8icrxrk06Wh9n5pEwbyjuKe+hqpYgqWadSr9FRgxbt/kb/odbErWvxNSdmfYKNMg968kIj/iR7RLnjBVM4dLFNwGQWGQdqp+Vj4YYc3TCQZ+yug1lxWpHClmjTOFJgUTfRPvgGHTNlJvmZ+jyFzjwTx1A8IQd8UfHXNoTwTCPrfCtpWKmqJOA8pmLfBX5J1qoCBMRufsegHmai/ZZhDjHqmsQ4y9dRM+UwaM3f4+kK/1TdV1GeOf6HyGStQARnxSUXsnH7BtdlP6Mai5jLlKlEAELXTs4yZ1WzMsEUdAZfFzmtCV+b/vS6T2aZXx/QLDWCtLiA786aym8lf+LQTHUHpwWo1U0kZ8DJYGy2xNEzSsKJwAp/oxBGFni4iDy8S94negMcjeXxtOcvXz+o/tiU0KCu1iUWViIpbvVKgoLVqiY/zynxWDKcCMa78tO/O6UoWx3reu/1cY+U=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.0
Release Details
UpdatedMay 29, 2026, 12:20 a.m.
Changelog

Removed

  • Password/plain login — X2Mail is SSO/OIDC-only (--auth plain, occ x2mail:settings, and the manual password login form are no longer available)
  • Legacy engine admin panel (/?admin) — all administration moves to Nextcloud Settings → X2Mail
  • SnappyMail legacy domain blocklist seed (app/domains/disabled) — fresh installs no longer copy a public-provider deny list into engine data

Added

  • Setup wizard Test Login — verifies live OAUTHBEARER login to IMAP, SMTP submission, and ManageSieve with the current SSO token
  • Configurable ManageSieve in setup: --sieve-host, --sieve-port, --sieve-ssl (CLI) and matching fields in the setup wizard
  • Allgemein + Info sections in Nextcloud Settings → X2Mail (attachment limits, OpenPGP/GnuPG, version info)
  • Real OAUTHBEARER auth-test in the setup wizard (replaces the old engine connectivity test)

Changed

  • Mail authentication is OAuth SASL only (OAUTHBEARER / XOAUTH2) for IMAP, SMTP, and Sieve
  • Setup wizard is SSO-only (no password auth mode); SMTP authentication is enabled automatically in generated domain config
  • Setup wizard mail server section: IMAP → SMTP → Sieve
  • Updated bundled OpenPGP.js to 6.3.0 — modern WebCrypto/WebAssembly, smaller bundle (drops the legacy asm.js fallback)
  • IMAP client supports IMAP4rev2 (RFC 9051) when the mail server advertises it — unread counts use ESEARCH instead of deprecated SELECT UNSEEN
  • Updated bundled Sabre VObject (4.5.8) and Sabre Xml (4.0.6) for vCard/iCal parsing

Fixed

  • ManageSieve setup and Test Login now use the configured Sieve host, port, and TLS mode (supports both STARTTLS and implicit TLS listeners)
  • Sieve filtering works with the same OAuth SSO flow as IMAP and SMTP

Verified

Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturePspvYRZ1bF4luhOnn/aaXCg5qPOjL3XxAoZIAjf7oQi62zLs4vUHB7zHUS2AI4gVqfGGYLlBB5MTpBJnLiErdRzfCGqn0ExfpnGPc9PUP4C7XED5hurfEq8XPzsxglxvaXbgTouQ3YdJT7Bclf1QK9u17n6ii1y8z1y0LT5Xi6Zxmp2pAMwKgP5M9GY9s2dlxQDmJC1uzkW9pcTPjcpokPUlnpeOiKGEWklYp0ymiF/dYtqU7+XktWUkn5pSMin/2i1xIMJ/ayCp+OYnWn3cixZjLkl7ZXulIX5L5jkizO4+ZVBxS4HuwfNKfBgRQWWzBPzgoG1FakDPs/8vRFBr3KQTA0v/8CeXe5l2S8E/Nf7j7vGRyXIKHj+S8xkZjvfvtJzVZxgngKCspHEsvWO+tXjcImILdzct7/wr5WXzieM9N7cCg3boQtbjyczrZpQzIhamfnwTP0xP2ypfmtuvOJASlIEVVPuProj4Gi0jnRjnNKxj8cAEmrvr4DQGjKtFp1+8Kf66nUIii/6bwupRSAUEFXlAauuYSXcjA2zfyi4Dijh0pYKUacF6Wt3iKtdW2r8jE1sPJTwdd5tbflCL4e/5JF6X+B9dwT+Bt+6DqN0r4TGtyx5/xz40lVlaPbf5I38V0otG/6CSCEPDH2JmC+JeEhxuynT6//J3WXvf/lI=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.3
Release Details
UpdatedApril 13, 2026, 11:15 a.m.
Changelog

Changed

  • JS/CSS minification in build pipeline (terser + clean-css)
  • Setup wizard and occ x2mail:setup now enforce one active domain profile and consolidate stale extra configs
  • OAuth domain configs now advertise only OAUTHBEARER and XOAUTH2 SASL mechanisms by default

Fixed

  • SMTP OAUTHBEARER authentication now works in SSO mode — useAuth is enforced when authType=oauth so SmtpClient::Login() is no longer skipped
  • Preflight checks now perform real IMAP/SMTP STARTTLS negotiation instead of plain TCP reachability checks
  • Preflight TLS checks now inherit current X2Mail SSL defaults and fall back to relaxed diagnostics with a visible warning instead of hard-failing selfhosted certificate setups
  • SMTP OAuth capability is now validated when authenticated sending is enabled in SSO mode
  • Setup wizard now writes the new active domain before cleaning up stale profiles and reports cleanup warnings instead of risking config loss
  • Release defaults for autologout, contacts_autosave, show_login_alert, and identity handling are restored through targeted migration/default application
  • occ x2mail:status now reports the actual IMAP/SMTP security mode and the stored OIDC provider selection
  • occ x2mail:settings and password-login persistence now store secrets with sensitive/internal flags
  • Repair step no longer wipes legacy passphrases on every update and no longer resets broad engine config on every post-update
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
Signaturek8GtOJHRKxhF+uUxvFpIuXtKEka3XZObN2lEkrNx1iqpcZQ47zlXbYmvWfbIggakAe66eTOD2JlOAOXr9bBcP27QsEilFIYUS2tmSOLnhECMy49p9qM3SPODmNw3vuNvorv6WTrM5h4LQimQP4HK1yG40a5sww/TF292IjMb1HfBuEyd0IG8kE63lVVyECvmFU6DDaX1EY6uWY/U8/BaMu2PgqZYkVcnDHlaClVxt4g9BbHOrn7wRBJIB/mM7iv+WjG+8m6quO1ZQU9yggrQLl82ECydvzgYwVE9zh4IUEq3EXqbQrklhVBvWkUYG0Hh4txgdbsT/D1QuHlz6oQ0xn207pmF+2+6DJqJ666fl3+R4lH0JKiFQBf9+JKnhu5uhsMigInru7LAlZMwpcpMp+hQtwA8dGAN1A/Tqy7nRSiXgizPH5BtFZosimGc0y6h+479jR25ZJsIbqBHGhdgcdO5loKN2pikArV664ZJQu1b+HUvfMHU5S+HIrPG4kk3nzK5Ii+sGLFYxuPYrrSEPvqzGxjLLFQxJVw7admtotMTpXAwE361zBDl7oajLCB9Kyzf1GEJe4w2Bw3vVpmGBaah7aHl/o7ehGeRVOwVPTw/C1yYQXf2qcn3gb5nNsFjOcdNjzWQ1XggRIyOS1mCmf3T3kY/4YGfBsd5lTwPx/M=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.2
Release Details
UpdatedMarch 30, 2026, 11:24 a.m.
Changelog

Fixed

  • SSO login works reliably after App Store upgrades
  • Plugin updates no longer leave stale files that break the frontend
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturemItA3uylAtZOxTs0EeJbIZz2N2qhw4OQUrsi4/YcIyD4fTYqRhnHXc1kttK8I/7N2ijA9UnRhPVykw2aX59+G7vueheJhZ+YQYs+LuDBA1mQPDfx/Y+urR5HQEZvWWAwA4gP8UANrfiwmz/LCViEXLn53U3xiU9cxm+mVaiUTpefYlHsR3tX3x9KWCduBfqtoOoBsJw1GchQDSQGBS0XXEXoo2IBZM7pmmA1jjBvAtDxW256r44MMsvNIsFB3MdK5qu6x9CNKqj9vlNh8KhQ8KpSh2GZMa1xN/lZDHTRCmtz71c9NfySx1huu53kKkSFk/V//sntLRYmnVZpmivTJgVJDdxniAhvcIENfDQrBtPPD7I1YbC7vtwZnRJaMmBv1L6hTxOMC0D9v8IvVHdlnkIfXOraAHpil0NFnxgHzm4jupR4ZzjyPEbmAJvkZFDJ26eyh5k18SYlHiVyTOUT+T2tblLEey5+kqaDs3pfkoKxVTuPIRufmUlox5DhQfxMb/ln1AAvRVnBNQk3BWK3bSzD3mZ11gC3sn9g4IVMLiIva7VH9mjspbTSEI9yFUKyPNWkSi/0mGGeu0TnRbTcCOzHO9J6hfeyEn5FF0PIuVT2h2TTceF4Ou+UBmSwJPFee7zRTE4T6xd7OJf0FBnagrQ04dFLDqUyNps6NO/TL0w=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.1
Release Details
UpdatedMarch 29, 2026, 11:11 p.m.
Changelog

Added

  • Dashboard widget: unread mails stay visible after OIDC token expiry (auto-refresh)
  • Nextcloud search: mail search works reliably with OIDC token refresh
  • Calendar save: duplicate detection — warns when event already exists, option to update or cancel
  • Calendar save: visual feedback — shows Created/Updated/Error states on save button
  • Contacts: address book name shown in contact detail view
  • Setup Wizard: unified Mail-Server layout, domain tabs, OIDC provider visible by default
  • Password auth: credentials persist across sessions (automatic on Nextcloud login)

Changed

  • Auth type switch (SSO/Password) applies cleanly without re-login required
  • Password encryption uses Nextcloud-native cryptography
  • All 26 engine enumerations migrated to native PHP 8.1 enum types
  • Engine static analysis raised from PHPStan Level 1 to Level 2
  • Contacts detail font size reduced for cleaner layout

Fixed

  • File attachments from Nextcloud Files work again (NC33 API migration)
  • Save email/attachments to Nextcloud Files works again (NC33 API migration)
  • Email address shown correctly in login field (was showing username only)
  • Switching between SSO and password auth no longer causes authentication errors
  • Calendar save to Nextcloud works reliably
  • Setup wizard token diagnostics display correctly for all OIDC providers

Removed

  • Manual email/password settings page (SSO handles authentication automatically)
  • Admin panel: password/TOTP authentication removed (SSO-only)
  • Engine dead code: ~14,000 lines removed (unused libraries, standalone contacts system, admin auth)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturedEdjRe1rcTmKEQRDnbcAfwSnQjPIBltjOBrLh7dCkdwrGevH3vUoth1XGQgmnoleskcO7Fd8t18Kdl/qHWP2h4kdONGWHga3PE7vXq2LmZ7hLgWeQPHoTmIjRtJFRMLR7oZ6pXEALsnMHWOMnjdkGBoLqQy+v6fvJY0pYBJm+g7MTnVBIsoj0d/CWQHhR13P0D3bm0kzV8fp9GAUZYLOhMcafoql0As5V80+1TJ9gmHpz1sIeckKQ0AJPE9CmDQgOyXYDu6VG0Hf3uZYMmkeDTlHGNx8JAuceeNiGDpKB2wA/LhqxRYE/r37iPpNNr92YWILVHvTX4bkvVmXvFKWsGnX2v3Tp6r0ooDoQuRA/hCRwcfgQ2qKRXPkxOXvGNQpO0wyHChAkqXKO0WN49wlEt/y5hs++U6pcq+3Lym1wz60ZZPJ64elGJWPSfndcOEuywWkoh8aieyd/FPJXBzLrngmOPnrE9ut7MY68HL9W2pi/nL+L4UyyrC89dm+BftlXJkzya9LC6s2+fjvrXONZJFOaR8Qu4S9EWyfncrc/01guEN2eizBeKcXqxZl7Fc5Bg1cokpvxfqZzf7xC6f2ChPoGLurqHMrtV0XixVaPHLri9VSq3Usw3xn74Z55FVLks6xPKAC/MoYHGZak57iNybDPNjCMqjqGqFXMIyum0Y=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib

Nextcloud 33

X2Mail 0.8.0
Release Details
UpdatedJune 10, 2026, 10:08 p.m.
Changelog

Removed

  • Support for the unmaintained oidc_login app — user_oidc is the only supported SSO provider now (oidc_login does not support Nextcloud 34+). Existing oidc_login setups must migrate to user_oidc.

Added

  • Optional extra scopes for OIDC token exchange — configurable in the setup wizard next to the token audience, via occ x2mail:setup --oidc-scopes "scope1 scope2", or directly: occ config:app:set x2mail oidc-exchange-scopes --value "scope1 scope2". The wizard's Test Login uses the typed scopes.
  • Test Login diagnostics show which token was actually used: exchanged token (with audience, scopes and remaining lifetime), a warning when the token exchange fell back to the login token, or the plain login token

Security

  • Bearer tokens are never sent over unencrypted connections to remote mail servers (loopback connections are exempt)

Fixed

  • An expired or rejected token during SMTP authentication now terminates the SASL exchange cleanly (RFC 7628) and the mail server's error details are logged, instead of failing with a generic error
  • Token exchange/refresh failures now log the identity provider's error response and the remaining token lifetime, making SSO issues diagnosable from the log
  • The engine log no longer fills with CRITICAL: Caught SIGCHLD entries — these fired on every normal helper-process exit and were not errors
  • The webmail UI keeps loading even if a future Nextcloud release removes the internal CSP nonce API (the self-generated fallback nonce is now correctly referenced by the app's content security policy)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureQG/EGIUo+FkDlnfr+XSecs1Uw4Ni+9t/TC+4hkJ8s8ZZ2MU0Wf9zhrziiZzMkXe5RhkKHbrxQRNM1YiO9KtlpKBzO/aX15QGEBkWIyw/nXyHBGD0lCDu6+uqBtJtC58phSXA29iNent/HYdPwMzWQNvYTnWwFlJLSyTyYjSMJjBsrVGxJw4UaidhzJkaXaRKJRw0veWgGZtObk+rc7lM1/ijzgRIoZp0B2Y8UK0meHJSDkjt7/Z2m8DFMs9Nw7KCnPVZSffeFMV4x28sFvW1i2UywJCu77ZZE3CCqVW/y73mgmPAIo7OoLMz1KOF2d4i7r2d4KxfnTWVnLeFSPiiqUHEVWjyL0SgcBVHVpEsWCBnlJoQOifb/W6H/BaaBPqitFzvrdQ1HmSXRu+SgsqYLyQnqjk4s3tElNnYwms6X+JL8aX648hpB0Ciw6UppRrmKUdRfL6a5Uw2LnsNoK/Vn0BF3tLE1rmU3jcxkYF3duoO2g93HGVCE/yp2Zh3ikpjn5xnVpV1aCorN+MrmVR3D3sil8/V+tfO3IpSoszpmEqVCHOJlftIJt/U7eaPR2iklfehaau5e0zKtOYZCgEJclsrgQWEPb59S06jxXDJB7Dgs6uZCjkHksRKMeYQKfhXLDMV1R9EKjG36C+aW5t7LOYrfu8FTZEVV0ARzbP0tR4=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.3
Release Details
UpdatedJune 10, 2026, 7:28 a.m.
Changelog

Fixed

  • Nextcloud 34 compatibility: the content security policy no longer depends on the allowEvalScript() API removed in NC 34. A leftover $evalScriptAllowed subclass property additionally crashed NC 34's reflection-based policy merge with an HTTP 500 on every page load; the property is gone and 'unsafe-eval' — required by the Knockout-based UI — is now added to script-src via the version-appropriate path (direct keyword on NC 34, allowEvalScript() on NC 33).

Changed

  • CSP nonce lookup now degrades to a self-generated nonce if the internal ContentSecurityPolicyNonceManager is removed in a future release, turning a potential fatal error into a soft failure (no public nonce API exists yet — see #181).
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureGsnBP8p4EqmOoys6054RmLUQytckPSgoJoiRE8enLyD7RUmjC+gC0/itlwXC+6EHM7XSwhLYSH3GnbJZkzvu5J4LxtuHRbqUME/btmVJ9eiqgd3aNvChgCMI/l4lwtgJkb0qSOLUw+Ba95r0DqJFKZ7Th4e7gta2YENCqsbRlDH42q128cJnCkvpeuWfSYj1yXZ+dKvYbwrsaqbg7mCtCI6usKQbjJORgat2sexqjTpJbf3JngyF8aSVabN4kbwfCyI3y+KOpAZXd9vE016n3IyN91m1+ZBdHDzr7XTX9sxV4MgGvzU9iypZhnclHtcXD91cYqdjnGRwSME4I5fwQM1ZAirS5iwDE3cj1jkXxR6STnb0c93TZn399od9mqwQ5oTBDJMyi9jsPXAehTuvIhjtotQDnT5BQ+vfSU72ktexXvpG7Xj6RkvzlhsWbe6VmKPmhBxcSB7Y9NU30pPIuZkdb8m/10qRvZ7/SSBpIAHuPTufAUr5Un2GnN0fizL7CfnHFTp1uV7m7BbM4lXHHI1aC/fQaHSWiPSc5VxhJCCqAyn7gxXbI85FILuKdZKrE+0+36dKzDg0Capuv5/C3x0mVpYm5LhaaItCBCLP2NQPFMGhbN+zflequHPhlhTAJYdr7ulRjOhmeeNKLGgmROZfvp3YixRSONhMs6uiOGg=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.2
Release Details
UpdatedJune 5, 2026, 11:45 a.m.
Changelog

Changed

  • Authentication state now lives entirely in the Nextcloud session — X2Mail no longer stores its own authentication cookies
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureBeNqKd6NrEDPxBwGNphs2hAraGG7swYqYfaapcEC1fh9sTMtk1HqifZJJJbAsM5Vg7uvWvDZfx7bdWJ2uPQPfNZSl4hs4pdOQQOHw28Zm6xDpKoOFYhi3YeIGxA0UWfovot4ONhnr/qsQqxt2h3kQWrxheimBJRjsxSJVGSsKRYBnU/IqwuarmpxHHpLsNgB+SIBztFoN7qk0EJiObh0iGiz56XWKR2PUF7Z9/I4MsnWuu59m8Xu+8Bm8mxTb0PNs0tMl3fIVoacWkmGBYwv4sbV8NaUkWkAKGCfVUDN1gQHJ+u2MF4Kdo7/fkmFa9lWPED2UWkFpjGXzno0JSirkLgxwypyrTDLq05lTljRb3oqXg3dbKmuT5RtWWSjsucBUWsYICxNg5IjsFrgk4D80VQFoxWYDWVydwaIv8I7Nx/+gCOExq12CDrKcp29m2vZ10weqy/BRl9QlflTK8U/aDraThsA+e7oeg9gNEE4hp4mpl4728QYIGetwK7GEVMuNUPJUyvT2GVlIhFUoTc2exdV8CndUvR/JFOxT4WVrKrZ3CdMbVmgysTcUTrwEH8uYf7YiwQK84iLANyT82yc7SdXB7mgTD7UbPNvpkOE/iYnLvXD8N+yk5Fo8YnbesVUh0fyPgKhV0Uqm9xe+RMhbAUKBqvJuFF1nT6zkwzn77c=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.1
Release Details
UpdatedMay 31, 2026, 5:58 p.m.
Changelog

Security

  • S/MIME certificates are now generated as per-user self-signed end-entity certificates, signed with their own key (no shared signing key)
  • S/MIME signatures now report the signer identity and a trust state (trusted only for known signers) instead of marking every valid signature as verified
  • External image proxy rejects URLs resolving to private, loopback, link-local or reserved addresses (SSRF hardening) and caps proxied response size
  • Mail authentication offers only OAuth SASL mechanisms (OAUTHBEARER/XOAUTH2); password-based SASL fallbacks were removed so a malicious server cannot downgrade the connection

Fixed

  • S/MIME certificate creation now works for identities without a display name
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
Signaturejmsi1UAFQZeDWrsLSRK5vayDE8f922PYBop+Y90o79JyS/tyTnI1tl4XINYVcsjEvOwqKO2up9gL+Ar/6m+c/8DZRixUZzWiHVB+AYojk1jnHIXuvgHSfnEfPRwnL0A8+rRyhICXNdqopndvAPYPlMW2n5IO7SZGuc/CrBlyIwhhkAsb9exo+ayBzddyyBvanQwNfr7HcrIwqYT3iPZ0Yn3uaz4r+8icrxrk06Wh9n5pEwbyjuKe+hqpYgqWadSr9FRgxbt/kb/odbErWvxNSdmfYKNMg968kIj/iR7RLnjBVM4dLFNwGQWGQdqp+Vj4YYc3TCQZ+yug1lxWpHClmjTOFJgUTfRPvgGHTNlJvmZ+jyFzjwTx1A8IQd8UfHXNoTwTCPrfCtpWKmqJOA8pmLfBX5J1qoCBMRufsegHmai/ZZhDjHqmsQ4y9dRM+UwaM3f4+kK/1TdV1GeOf6HyGStQARnxSUXsnH7BtdlP6Mai5jLlKlEAELXTs4yZ1WzMsEUdAZfFzmtCV+b/vS6T2aZXx/QLDWCtLiA786aym8lf+LQTHUHpwWo1U0kZ8DJYGy2xNEzSsKJwAp/oxBGFni4iDy8S94negMcjeXxtOcvXz+o/tiU0KCu1iUWViIpbvVKgoLVqiY/zynxWDKcCMa78tO/O6UoWx3reu/1cY+U=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.7.0
Release Details
UpdatedMay 29, 2026, 12:20 a.m.
Changelog

Removed

  • Password/plain login — X2Mail is SSO/OIDC-only (--auth plain, occ x2mail:settings, and the manual password login form are no longer available)
  • Legacy engine admin panel (/?admin) — all administration moves to Nextcloud Settings → X2Mail
  • SnappyMail legacy domain blocklist seed (app/domains/disabled) — fresh installs no longer copy a public-provider deny list into engine data

Added

  • Setup wizard Test Login — verifies live OAUTHBEARER login to IMAP, SMTP submission, and ManageSieve with the current SSO token
  • Configurable ManageSieve in setup: --sieve-host, --sieve-port, --sieve-ssl (CLI) and matching fields in the setup wizard
  • Allgemein + Info sections in Nextcloud Settings → X2Mail (attachment limits, OpenPGP/GnuPG, version info)
  • Real OAUTHBEARER auth-test in the setup wizard (replaces the old engine connectivity test)

Changed

  • Mail authentication is OAuth SASL only (OAUTHBEARER / XOAUTH2) for IMAP, SMTP, and Sieve
  • Setup wizard is SSO-only (no password auth mode); SMTP authentication is enabled automatically in generated domain config
  • Setup wizard mail server section: IMAP → SMTP → Sieve
  • Updated bundled OpenPGP.js to 6.3.0 — modern WebCrypto/WebAssembly, smaller bundle (drops the legacy asm.js fallback)
  • IMAP client supports IMAP4rev2 (RFC 9051) when the mail server advertises it — unread counts use ESEARCH instead of deprecated SELECT UNSEEN
  • Updated bundled Sabre VObject (4.5.8) and Sabre Xml (4.0.6) for vCard/iCal parsing

Fixed

  • ManageSieve setup and Test Login now use the configured Sieve host, port, and TLS mode (supports both STARTTLS and implicit TLS listeners)
  • Sieve filtering works with the same OAuth SSO flow as IMAP and SMTP

Verified

Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturePspvYRZ1bF4luhOnn/aaXCg5qPOjL3XxAoZIAjf7oQi62zLs4vUHB7zHUS2AI4gVqfGGYLlBB5MTpBJnLiErdRzfCGqn0ExfpnGPc9PUP4C7XED5hurfEq8XPzsxglxvaXbgTouQ3YdJT7Bclf1QK9u17n6ii1y8z1y0LT5Xi6Zxmp2pAMwKgP5M9GY9s2dlxQDmJC1uzkW9pcTPjcpokPUlnpeOiKGEWklYp0ymiF/dYtqU7+XktWUkn5pSMin/2i1xIMJ/ayCp+OYnWn3cixZjLkl7ZXulIX5L5jkizO4+ZVBxS4HuwfNKfBgRQWWzBPzgoG1FakDPs/8vRFBr3KQTA0v/8CeXe5l2S8E/Nf7j7vGRyXIKHj+S8xkZjvfvtJzVZxgngKCspHEsvWO+tXjcImILdzct7/wr5WXzieM9N7cCg3boQtbjyczrZpQzIhamfnwTP0xP2ypfmtuvOJASlIEVVPuProj4Gi0jnRjnNKxj8cAEmrvr4DQGjKtFp1+8Kf66nUIii/6bwupRSAUEFXlAauuYSXcjA2zfyi4Dijh0pYKUacF6Wt3iKtdW2r8jE1sPJTwdd5tbflCL4e/5JF6X+B9dwT+Bt+6DqN0r4TGtyx5/xz40lVlaPbf5I38V0otG/6CSCEPDH2JmC+JeEhxuynT6//J3WXvf/lI=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.3
Release Details
UpdatedApril 13, 2026, 11:15 a.m.
Changelog

Changed

  • JS/CSS minification in build pipeline (terser + clean-css)
  • Setup wizard and occ x2mail:setup now enforce one active domain profile and consolidate stale extra configs
  • OAuth domain configs now advertise only OAUTHBEARER and XOAUTH2 SASL mechanisms by default

Fixed

  • SMTP OAUTHBEARER authentication now works in SSO mode — useAuth is enforced when authType=oauth so SmtpClient::Login() is no longer skipped
  • Preflight checks now perform real IMAP/SMTP STARTTLS negotiation instead of plain TCP reachability checks
  • Preflight TLS checks now inherit current X2Mail SSL defaults and fall back to relaxed diagnostics with a visible warning instead of hard-failing selfhosted certificate setups
  • SMTP OAuth capability is now validated when authenticated sending is enabled in SSO mode
  • Setup wizard now writes the new active domain before cleaning up stale profiles and reports cleanup warnings instead of risking config loss
  • Release defaults for autologout, contacts_autosave, show_login_alert, and identity handling are restored through targeted migration/default application
  • occ x2mail:status now reports the actual IMAP/SMTP security mode and the stored OIDC provider selection
  • occ x2mail:settings and password-login persistence now store secrets with sensitive/internal flags
  • Repair step no longer wipes legacy passphrases on every update and no longer resets broad engine config on every post-update
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
Signaturek8GtOJHRKxhF+uUxvFpIuXtKEka3XZObN2lEkrNx1iqpcZQ47zlXbYmvWfbIggakAe66eTOD2JlOAOXr9bBcP27QsEilFIYUS2tmSOLnhECMy49p9qM3SPODmNw3vuNvorv6WTrM5h4LQimQP4HK1yG40a5sww/TF292IjMb1HfBuEyd0IG8kE63lVVyECvmFU6DDaX1EY6uWY/U8/BaMu2PgqZYkVcnDHlaClVxt4g9BbHOrn7wRBJIB/mM7iv+WjG+8m6quO1ZQU9yggrQLl82ECydvzgYwVE9zh4IUEq3EXqbQrklhVBvWkUYG0Hh4txgdbsT/D1QuHlz6oQ0xn207pmF+2+6DJqJ666fl3+R4lH0JKiFQBf9+JKnhu5uhsMigInru7LAlZMwpcpMp+hQtwA8dGAN1A/Tqy7nRSiXgizPH5BtFZosimGc0y6h+479jR25ZJsIbqBHGhdgcdO5loKN2pikArV664ZJQu1b+HUvfMHU5S+HIrPG4kk3nzK5Ii+sGLFYxuPYrrSEPvqzGxjLLFQxJVw7admtotMTpXAwE361zBDl7oajLCB9Kyzf1GEJe4w2Bw3vVpmGBaah7aHl/o7ehGeRVOwVPTw/C1yYQXf2qcn3gb5nNsFjOcdNjzWQ1XggRIyOS1mCmf3T3kY/4YGfBsd5lTwPx/M=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.2
Release Details
UpdatedMarch 30, 2026, 11:24 a.m.
Changelog

Fixed

  • SSO login works reliably after App Store upgrades
  • Plugin updates no longer leave stale files that break the frontend
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturemItA3uylAtZOxTs0EeJbIZz2N2qhw4OQUrsi4/YcIyD4fTYqRhnHXc1kttK8I/7N2ijA9UnRhPVykw2aX59+G7vueheJhZ+YQYs+LuDBA1mQPDfx/Y+urR5HQEZvWWAwA4gP8UANrfiwmz/LCViEXLn53U3xiU9cxm+mVaiUTpefYlHsR3tX3x9KWCduBfqtoOoBsJw1GchQDSQGBS0XXEXoo2IBZM7pmmA1jjBvAtDxW256r44MMsvNIsFB3MdK5qu6x9CNKqj9vlNh8KhQ8KpSh2GZMa1xN/lZDHTRCmtz71c9NfySx1huu53kKkSFk/V//sntLRYmnVZpmivTJgVJDdxniAhvcIENfDQrBtPPD7I1YbC7vtwZnRJaMmBv1L6hTxOMC0D9v8IvVHdlnkIfXOraAHpil0NFnxgHzm4jupR4ZzjyPEbmAJvkZFDJ26eyh5k18SYlHiVyTOUT+T2tblLEey5+kqaDs3pfkoKxVTuPIRufmUlox5DhQfxMb/ln1AAvRVnBNQk3BWK3bSzD3mZ11gC3sn9g4IVMLiIva7VH9mjspbTSEI9yFUKyPNWkSi/0mGGeu0TnRbTcCOzHO9J6hfeyEn5FF0PIuVT2h2TTceF4Ou+UBmSwJPFee7zRTE4T6xd7OJf0FBnagrQ04dFLDqUyNps6NO/TL0w=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.1
Release Details
UpdatedMarch 29, 2026, 11:11 p.m.
Changelog

Added

  • Dashboard widget: unread mails stay visible after OIDC token expiry (auto-refresh)
  • Nextcloud search: mail search works reliably with OIDC token refresh
  • Calendar save: duplicate detection — warns when event already exists, option to update or cancel
  • Calendar save: visual feedback — shows Created/Updated/Error states on save button
  • Contacts: address book name shown in contact detail view
  • Setup Wizard: unified Mail-Server layout, domain tabs, OIDC provider visible by default
  • Password auth: credentials persist across sessions (automatic on Nextcloud login)

Changed

  • Auth type switch (SSO/Password) applies cleanly without re-login required
  • Password encryption uses Nextcloud-native cryptography
  • All 26 engine enumerations migrated to native PHP 8.1 enum types
  • Engine static analysis raised from PHPStan Level 1 to Level 2
  • Contacts detail font size reduced for cleaner layout

Fixed

  • File attachments from Nextcloud Files work again (NC33 API migration)
  • Save email/attachments to Nextcloud Files works again (NC33 API migration)
  • Email address shown correctly in login field (was showing username only)
  • Switching between SSO and password auth no longer causes authentication errors
  • Calendar save to Nextcloud works reliably
  • Setup wizard token diagnostics display correctly for all OIDC providers

Removed

  • Manual email/password settings page (SSO handles authentication automatically)
  • Admin panel: password/TOTP authentication removed (SSO-only)
  • Engine dead code: ~14,000 lines removed (unused libraries, standalone contacts system, admin auth)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturedEdjRe1rcTmKEQRDnbcAfwSnQjPIBltjOBrLh7dCkdwrGevH3vUoth1XGQgmnoleskcO7Fd8t18Kdl/qHWP2h4kdONGWHga3PE7vXq2LmZ7hLgWeQPHoTmIjRtJFRMLR7oZ6pXEALsnMHWOMnjdkGBoLqQy+v6fvJY0pYBJm+g7MTnVBIsoj0d/CWQHhR13P0D3bm0kzV8fp9GAUZYLOhMcafoql0As5V80+1TJ9gmHpz1sIeckKQ0AJPE9CmDQgOyXYDu6VG0Hf3uZYMmkeDTlHGNx8JAuceeNiGDpKB2wA/LhqxRYE/r37iPpNNr92YWILVHvTX4bkvVmXvFKWsGnX2v3Tp6r0ooDoQuRA/hCRwcfgQ2qKRXPkxOXvGNQpO0wyHChAkqXKO0WN49wlEt/y5hs++U6pcq+3Lym1wz60ZZPJ64elGJWPSfndcOEuywWkoh8aieyd/FPJXBzLrngmOPnrE9ut7MY68HL9W2pi/nL+L4UyyrC89dm+BftlXJkzya9LC6s2+fjvrXONZJFOaR8Qu4S9EWyfncrc/01guEN2eizBeKcXqxZl7Fc5Bg1cokpvxfqZzf7xC6f2ChPoGLurqHMrtV0XixVaPHLri9VSq3Usw3xn74Z55FVLks6xPKAC/MoYHGZak57iNybDPNjCMqjqGqFXMIyum0Y=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<36.0.0
Minimum Integer bits64
PHP>=8.3.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.6.0
Release Details
UpdatedMarch 29, 2026, 4:40 a.m.
Changelog

Breaking

  • Complete rebrand: SnappyMail/RainLoop → X2Mail across all namespaces, directories, DB tables, config keys, and UI
  • Existing installations are migrated automatically

Added

  • Admin panel authenticates via Nextcloud SSO
  • Setup wizard with OIDC verification and JWT token diagnostics
  • Info page when no mail server is configured (with link to setup wizard for admins)
  • About page shows latest GitHub release version

Changed

  • SSO-first defaults: OAuth as default auth type
  • Single-domain setup: wizard manages one mail server configuration
  • Domain field auto-suggested from admin email address
  • occ x2mail:status shows compact SSO diagnostics
  • Translations updated for all 97 locales

Removed

  • Separate admin password/cookie authentication
  • Admin panel menus: Security, Plugins, Branding, Packages, Login Screen
  • Multi-domain management and domain alias in admin panel
  • External plugin manager
  • iframe embedding mode
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureBWKL1jW4YInRdcazvo1vkjOLWvPu5XTqUzIynfpyF8QaXxY0xauoKHPeTOe7xtZJNXpkGMR+papHUsu8j3FTfYu9a4nHxttQNbrnO2mX/d7zwc8ZQLbwEBTMeaWUW/mOBtj2w36/I4C1FHR2GrtGKJVbDqeh+LpCiQnNsYGZ49g2xtqEOD3hyEID8CbEV27fgWCraTDDheck/EEyilQ2KFLxAI+8wANF9l3fFDCYQU14b0wzSlM3IOhII95Jyp2phTx7fcjBwgyYfqztKgPS5BohXmi77I5qNw0oGwkVzCq4pvPhZe1eXH9XZusZtDSGFkM7w1H88d69SUcGHpbZ7AAB7YN/J2mhae1XKKQmSuG76Y9r05LJizmdGHrJvyVx9wGtrzCNGhXejMR5i55CLVpD1sWn0UBnAcWHVB+8WY/LWuYnL3B4s//x8/J9QoT85lNUIgH2UTfQCy5te256x9P7sjLwTW2afm8lXXIVbdnoD12cyK97zA/GWLjStFOyuI4EKaXljPyrhREmI1eLvcGF9bQdT/EJJu640oDm25LTxDd1kSJYvzjr2vXyPsBRsPkRGgB7ZJCJXCObjTbCIoFIV3gtaAP+7TzmBWaDEEHcj0tcA4+5LowrM2MGwAsYSJ6CPgFftPrnIR2vgOHqAOaS1bMe1F06EMnv/aAmBWM=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
openssl
zlib
X2Mail 0.5.9
Release Details
UpdatedMarch 26, 2026, 5:35 p.m.
Changelog

Added

  • Personal settings section with own sidebar entry and app icon
  • Identity & Signatures link in personal settings (points to SM accounts page)
  • Dynamic branding from application.ini webmail.title

Fixed

  • PSR-12 compliance: 2346 style violations autofixed, CI CodeSniffer enforced (no more || true)
  • CSS leak reset broadened to header, user menu, modals (not just SideMenu)
  • SM admin panel rebranded from "SnappyMail" to "X2Mail"
  • Deploy script: sync SM plugin files to appdata after deploy
  • German translations for personal settings
  • PHP 8.4 CI runner upgrade
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignaturehqHEoAr5ekVKIzUM8rSr1vQFw9jcUKFr44fjkZG8dG68w30yhlBw+ZHwDv/fMiH7ztKxH1V/mYKB6mnGZp4yS53QJ400WhTOkJeeJE5yhsA/DuNlU7TKXW0HxhzclqOwMX0JXNYPTVCAnDHyt+bT+6yYLPKa97O8ouxqqMP4lj0oo0mNuCAykH58ipOL/lk+EA488mDS5zlmnvDMT51cvIaFr9GwHm2ANjlXIExDPaIhNJSd/D6kvI5Gj1WoV4IBqiiuu9/zHIuwKHQGyUa8S9sKSjDxHok1HuRA99xuJUkg2YJrqEqVEsbJW1tCYRLOtkmvefYlf1CQZu0vk0KOVdFPG2K0wXnGtwI9w3EzTkdpqFQn56IgttkO7fOedSFmte/JOHl836cKO/DUbxP9EwpgORLDY6W3d4oy1ND3xIpnKwBAI1jFz56wsHtokpWQ1HdwxMtBjscggNoUGDeVe5APzB8gkFHa9uQI2nbfN8h8+VeIvtSIadZJBc83M0BNtZIOmFlICnLEyoCKoIJ44nciJ4hLRJi7XqJD+XFhv6vvRISYz5SwIWN7mHa44F3ro8ZdL/pDbecbxFkjIGQnG9L1vgdKz4eiQ/nyRLX/8XSWP45VJW8UCF5y3O+2umjHpZBkawIV4Qs01usjXKHQaSWuCcHi5UfrztkAwSJswXs=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
zlib
X2Mail 0.5.8
Release Details
UpdatedMarch 26, 2026, 4:22 p.m.
Changelog

Added

  • ICS Event Card: calendar invitations displayed prominently above message body
  • Event details: date/time, organizer, location, attendees with formatted display
  • One-click "Save to Calendar" button with CalDAV integration
  • Calendar picker filters read-only calendars (Deck-generated etc.)
  • Toast notification on successful calendar save
  • German and English translations for event card UI
  • App Store screenshot for calendar integration
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
Signaturemnxx7dByepft4nw44jRJT0TQHAKEWutnGftvC2Ov8J5VfswhykNt0xbgl4COY9n/owYXmdOCFlI7iD62Fc31x2lljk4JZWB5iNqg1F7yCp0SLYgHKZCjuR1q+eUTuBjhdq6fjI67xHHGeI8HlhKNiY1oITr6aDKpkvDomqAWxSLWw/3Ge9eH1vBgmWRDw3YEQcFnM/jRl3K4JegD5r2SFB8nI1P1/GkNkz9JwXnXOmMNBM2Dcn7QRSKo3Hs8BuhMCRMUJaGx8FuO0iOrT5c9M/WLfsdoVoSdL9JpzDZviD3JRlscOONFHc9UEW6klhAC7gnFLkPjI41W0gQyfKfcP/BsFCZiEeKlkVYkxkMYnRRpocHmdUipCKmMJ8k5ad3NAxO/jPF2BcM1+gg3Hamz4TR+XJrJPB4Eo/pLK7g8sWfbMVs+GqGL/L2CDIjJmSjsMmIImda25FPZiUhRyUahaReFIGMTrgB0x/EFeYZyn1zIdadgmt8DpUYTWdYJGxNDQ4p+JJkqx3v+8xJe7CD0Mnu8zmBEsdapgvutLDVJspJnoILnUGJnkF+svjSe9eYlBPXBR90860bjVbSdtNKFjpZnkInsgaxPKjDL9HfEhrbe6tt6aMOEyRg+PssIUoojmvJt+4Fd37OftZHNWbZA62co6bNvPNCVVL5GwZO8Fug=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
zlib
X2Mail 0.5.7
Release Details
UpdatedMarch 26, 2026, 1:37 p.m.
Changelog

Fixed

  • SideMenu app compatibility: SnappyMail's global CSS (ul/li margin resets) no longer leaks into Nextcloud UI
  • CSS selector scoping: all embed.css rules prefixed with #rl-app to prevent style leakage
  • Boot CSS: strip body/html rules from SnappyMail's inline boot stylesheet
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
Signaturemdly7KPveWufXkgNYOMWkdFmHB7b3TLMCNY30F87xteRgG+GznOS91lpvtt1am5OFd7kYgmPiUqD7f/cwvmzmIeGyyxSX+NelADFUSi6nNOMzdqcCxZFdIVwnUBQ8BZCq4+k8WJk38N5pluPHuKML6he/o6A+UvTp50F/py3v7U35pOWbLrQdAFwUpyM/WUrSLYuMdiE+6ZWR5ugJ8zd6EclicPJqXsN1JAx+wgPSd3GVq117VXG1yZVUIlNG8cLxESWXU4GSK5rOI2QzfeGcaOk1fla1yuDddbEg9XKKQootDA58jS0ezGv5LbGJIXrxcgqTCGcNmcz9+PCVbN7C4J6Vi0jphM09g2cLL3Y399HjJg/jxDjmOpq7FJm4SQtNDfUMXW9tkBNJSq0vXdSXNNhorA8+oI/llCurQCbbbI1FAqgqfNOxy+njlcGOi4VaZUBfWYyVWOJJ9TrFGmKD4xzbgsou2DGL81odXOLLQP5cVtTJKZqJm8liD9hqcWLd9izACwVfjOYNtE4T+UiFicORyQiSb/Whw0TI3r6qQbJzAoGavVueqadYgUHzoaNm4MI6deEIcIvOW+ze/bXSq2+GbO4DbxjKvRu9tkSEGheGukJ44as9fP1Wmwn0efEOJ1XCqMzqBB3WLNTGmZ0snvy/oqQyIe3FOktVUsFtl8=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
zlib
X2Mail 0.5.6
Release Details
UpdatedMarch 26, 2026, 10:59 a.m.
Changelog

Changed

  • SSO defaults: disable contacts autosave
  • Hide theme selector on fresh install (x2mail theme is default)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureN2ywcB410NawE1HbULWH0lgJi9f7+V78KIUnKGCI8DpHJcpVwxoeLD5nFKF9UMXVqfPo8WnFa4SGnd5cxmEJ1Be19LjbRjfANpUGtzNShOmkRZp7puuDUlvWqGN7uUoC3iry5DZwqi0WRI7CPHE6lLU85GD5lPcu28kB3bIfAfFQ8pVl91vE6iPfBnOuHa2z+ZMS5oYZs97HhFOeCeJkdaRNdwju5ZKsv6mo9jJIIhSLOzkQoG4W2FGCFZZYcgM1WeQ2zsCt+SWKM62VKYFuEEys7BulM3ifFnW7MO3lxdmvkQW/eiN75MQPqJejJOcHRRb7uu2P0Tx08n0lnnJT1B+zHNJqXwnAEGd+DFIX/GsKFsBcQR19vLfuzgyc3rzyYWKOdVVcKYbJgZpetLGFp4YhXSeTxVFp5kDYB+v5TXWvxS6w7NOc+13PSMSAHqJOlgjcyFBKq4G7dZ5YfgaqtGgX9Kq2MUdtTjUqa68kKJNHGOQ6MeSsA/DEjOzsuo91uL88Wk7Xphlg17UQhRysG3I1Mv6T2m2V2rt3UvjUFixQTJySzJ3SVL/s340UlS+iZBaBdX6zADzeL9d2tuvCZ5lmQ5Z++H9dYwsvR0uTkMABGK7vq4efrX7QZp7DSubiYDUVQzCoVTO8blTr757XrpFUFDGdM1asfiglycJFTis=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
zlib
X2Mail 0.5.5
Release Details
UpdatedMarch 26, 2026, 10:42 a.m.
Changelog

Fixed

  • Default theme set to x2mail on fresh install (was falling back to "Default")
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureVTfTXOdi+5oSBjPQpYgtILvcMWDJuToPh6RiAAYs0i7OkBoyrnRM3DgzOs5V2q+2JzotfegdeX136s0l8ZrQQGKZisfOSsBOnfBSMwEUWysnROMhWU7fEXLH1f0X/CI3Pmu/5eRvNS3Uv883o12vhPza8TK+pzuIo+k1GQJoxCND8jL4LZNvVQzMvl2tcElSRniERNJEVGflDrXwoIpVVPt0aUUNfdenqYsZ/M/TFxW6dz45spoeesWB9FG7/CJDKiZgjJ/3HO/vQtxPRNcR1vb/kC5STVAS5Mzq/BQBxOG0dokMjhYw8W1PbNPaQfl/AKldpqR8OrNdGXuI2gBuZ2+jCiBZaNtuDgPQgJAEwtFTzVvVE32MXVA0bcW2x3ex4UiHWY3wjz0E9wBfGw72GlnQ1E+QSu+5FeBxKNktJClSiYB6siP65GtvVwK127VIvV/8ws5KIo1oCuW/kAW2EnzcWX0alOk9h+6+6eEpBdWJ6Iw5x4C6+5lvOn7WsqWgIn7HjyinOIEbBXVsSKNjVENnDFyTPP0sbN4QEJJM2ngU6x/HLx+2MARu/ePPm/TJyixgmB5e7T9rZOD9Dij5hMwwO3kAlBbWbEKV7Ug0VXeGdGxuPRR+UIvcEP0B+9563oNaYcfAjuog08r4P7SBWXJtMUWUz56emNXhu4Sh4aQ=
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
zlib
X2Mail 0.5.4
Release Details
UpdatedMarch 26, 2026, 9:28 a.m.
Changelog

Added

  • First release on Nextcloud App Store
  • Signed with official Nextcloud Code Signing certificate

Changed

  • Updated screenshots for App Store listing
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIEATCCAukCAhMgMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMzI2MDgzNTM3WhcNMzYwNzAxMDgzNTM3WjARMQ8wDQYD
VQQDDAZ4Mm1haWwwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCeM++t
I7MFCMzJUtywr9853OdepBQSY7RmjcXv1VL6CZR6lkp/wW0RE17umPz/4zSRcluA
ekjiXqRvQvbgqdmZ1RE8tvjNuRGgyWIsPbcnVdb5R/TogFPOKlshdpFvFCYso9Yd
eY1Zqll25pVTanCJAj8zmkmcjfwxfCuPLfRjM1et5fzEvlU7O7GUWsgBbDrqGTsS
Z2JytEQGv7bCAwu3l76DePgNezQ2cTF/F1epKdzxDYFMT5rXn0/QJfJgKtyklw8l
LQ8lhHgGfub3aoRlp6C9yBSNjr4fpK5tuy0Xgzblzat3xf6RqX0fU4Pw0LXlsa0Z
MtLGltVNt9z7ho4OBsbrFiM/42y3zx1XzLuzmx/J90y/t9enwJbHU8519VlEXH3l
+DGj3HHJoPeqyn2PaBPgn1n5lIIOAZWnK7Iku087Mc0YGO8E0LsyR/QFOaLOreBj
sZbPUzCCyQKlh9VqgfXCGFEsbhQOp3PtEFkVSGchrwvbnnS+t/5ScKm1xvYY9Mro
njdhsqzvpcvUuwZ+NzRI8+TYkDN4aIEJjygVzKozWqPFAu7xCSgwGdAELYgLX9c9
WUtPrJrYqLU5BtcRiv+lp2YJNe9zSW1IuQmapD082y6PZJKwN6VORJAQealV/qqI
alZlnVUyJIW4s/NYiGHsghNy7Rdw/doW1EJ1hQIDAQABMA0GCSqGSIb3DQEBCwUA
A4IBAQBLipnwYtyqe7C+XPdBKRbq/gOgTWWQ9Lq8wziApnodwimcLWSAkRWO6SlK
+wsNgusILFjgTC6EgqMbehj4XkVANVLSfx/6Fu6YAN4pjtgs31zCLDlKsqNdEsae
jWlM/RN3ZAMvDocFzgwT5njC+oRAfG0DUOUDDm9a7Yk4NN+btX7HEVNMw4YSGDmP
6+7jgVgCWw08o0JovhOPpM4gB9c6EfF2B1q3i6oLVp4JTg2vlKIoHpjA6pnkDY8G
l6wvL/qiGsmyB+uTsWx9oUfhiXAVpVThNarAc+6QmuIDknmc8OjYdLz6+WXBX2Vq
ux3HgqjSQjjF5LO0Ip0/oWS7uGii
-----END CERTIFICATE-----
SignatureLKDx8eAkJC/IFyxKjOOvV8F0yRsfCu36El+Ghc6TKJkmP2cM+dYfEdWW50b7QU32CnE6r+GloqvCBAgmvjvTGpftTyWLyKW5CudwJZpJxGO5QFxE8F36yZBkSMQ7fFTst9SoyW8n0qs/7JqcuH90ELqn6SLJpUe4otywhUWmJq0N1d98MVN2mXX2fEwL+54ltCBDxfINR0M+ObsPmIyky283oKnS5BBvtQPAQ09WKW2khc5Wi13WIml9Oh7ZSWDuh5zhAqPPBBqtFVaxMfAw4rDvF6iwBhEiVZodNlIjyTu0nyyyz5NB1DIuRngVVQYgUSLzX7NNgovR8D6zP2cuZelymryMs+8VxpYo3UTaQoA3ahHpx2CATrLRmOIaS4v7KCtsV962qglxP6ng5eoVIfq6AYWPHYg1w69cpKBcSs1JYfEZMm/GtudTeSwHPaIQzqiTLaqCbkAP/D8I4RmQ0KKyCwnVPhxqCm/bQJ+y6wuYJRLoe5g01tHbD/8VBylmEmV+uivxvstZVlJwMRVCXzwuKiD+mjol4z5jOrvBlxrD0gIQVfcZ3A1YgnhvRZzQKxcZ/H9lYlTbrxIyHDotikTpCEA2yCunAV6DeWJHyFGaK6h56kF8K4CORmHP+3MBNuBsjpjCGViuy25nXTfVlvIcU5SXtXvjXQXkPLeId6M=#
Signature digestsha512
Dependencies
Required Nextcloud versions >=33.0.0,<34.0.0
Minimum Integer bits64
PHP>=8.4.0
PHP extensions mbstring
zlib