cyrus-imapd
- Path:
local-install/cyrus-imapd(plain, unmodified AUR package, no local deviation – seearch/scripts/install_only_packages)
2026-11-03: added as the real upstream 3.x package, alongside cyrus-imapd2
This is the actual, actively-maintained AUR cyrus-imapd (maintainer
J5lx), currently 3.12.4-1 – a different lineage entirely from
adapted/cyrus-imapd2, which tracks the old, years-EOL Cyrus 2.5 branch
(AUR cyrus-imapd2, maintainer pa314159, last upstream update 2021). Do
not confuse the two or try to “merge” them – user explicitly decided to
keep cyrus-imapd2 as-is (still used in production), so this is a
separate, parallel package, not a replacement. See memory/cyrus-imapd2.md
for the 2.x package’s own history.
Split package: pkgbase=cyrus-imapd produces cyrus-imapd + cyrus-imapd-docs
(the latter arch=('any'), hence it shows up symlinked across every other
arch in the repo even though we only actually build x86_64 – that’s normal
repo_publish.sh behavior for any-arch packages, not us claiming to
support those arches).
arch=('x86_64') already in the upstream PKGBUILD – matches what the user
asked for (no 32-bit/ARM attempted). Note options=('!lto') upstream
(Cyrus explicitly doesn’t support LTO, per a comment in the PKGBUILD linking
their own compiling docs) – don’t “fix” that if it’s ever noticed.
Dependency chain is small: every one of its many depends/makedepends
(icu, jansson, libxml2, krb5, sqlite, mariadb-libs, postgresql-libs,
libnghttp2, brotli, zstd, shapelib, libldap, libcap, xapian-core,
libchardet, pcre2, libwslay, cunit, clamav, rsync, perl) is already in
official core/extra – confirmed via pacman -Si before starting. The
one exception is libical3 (not the official libical 4.x in extra
– a separate AUR package for the still-required libical 3.0.x ABI), added
first as local-install/libical3 and published before this build so the
chroot could resolve it. See memory/libical3.md.
Has validpgpkeys (ellie timoney’s key, for the upstream release tarball
signature) – ran arch/scripts/update_pgp_key_dir.sh from inside
/data/INSTALL/cyrus-imapd before building, per the standing convention.
Built and published cleanly first try via
arch/scripts/repo_release.sh /data/INSTALL/cyrus-imapd (x86_64 only,
per explicit user instruction) – no PKGBUILD edits needed, no namcap
warnings, no connection issues in the publish log. Produces
cyrus-imapd, cyrus-imapd-debug, cyrus-imapd-docs.
Not yet configured/tested at runtime – this was a clean build+publish
only. If the user wants to actually migrate a production install from
cyrus-imapd2 to this 3.x package at some point, expect real config-format
differences (3.x adds JMAP/CalDAV/CardDAV, --enable-replication,
--with-mysql/--with-pgsql, systemd unit instead of the 2.x
cyrus-master.service/cyrus-master-conf.d setup) – not a drop-in
replacement, a real migration.
Build times (auto-updated)
- x86_64: see
repo_release.sh/repo_build.shlog, first build 2026-11-03 (large build – autoreconf + configure + full C codebase with Xapian/ Kerberos/mariadb/postgres linking, several minutes)