Thanks, Ellie -- that was helpful.  A couple of follow up comments, though.

On 3/18/19 7:55 PM, ellie timoney wrote:
This page is in the developer section, so its context is for people who are 
Cyrus developers (especially for new contributors needing to get rolling 
quickly).

Unfortunately not just developers needs access to this information. On Arch linux, any package not included in the official repo lands in the AUR, which requires that packages be built and compiled from source. (And since Arch already has dovecot in the official repos, it's unlikely that Cyrus would be added.) I could be mistaken, but it appears the mainstream distros are mostly stuck with very old versions of Cyrus. I'm an Arch user, but would argue that the Arch AUR package is a great canonical reference distribution, since Arch adheres as closely to upstream as possible, and the PKGBUILDs are required to be 100% deterministic. With minimal effort, someone who knows something about building/compiling linux programs can look at the PKGBUILD and know exactly what to do to create a functional cyrus installation.


 Expect a certain amount of detail to be glossed over on the assumption that 
it's already known and/or reasonably documented elsewhere.

"already known" is a less than optimal method, and I've had trouble finding alternative documentation on a number of points.



These are literally just "alternate database formats" -- maybe you already have 
extensive expertise in some other database and would rather use that than one of the 
builtin ones.  It has nothing to do with virtual domains.  Documentation about the 
databases used by Cyrus are here: 
https://www.cyrusimap.org/imap/concepts/deployment/databases.html

I read through the databases page and didn't see anything I don't already know (although it sure would have been nice to have this page available when I first started using cyrus!). When I run

    ./configure --help

I see this:

  --with-mysql-libdir=DIR  MySQL lib files are in DIR
  --with-mysql-incdir=DIR  MySQL include files are in DIR
  --with-mysql=DIR         use MySQL (in DIR) [no]


The AUR PKGBUILD (instructions for how to automatically build the executable + auxiliary files) includes --with-msyql and depends on mariadb-libs. I'm guessing that the configuration utility looks in the standard places for mysql header and include files if --with-mysql is passed to configure (/usr/include/mysql and and /usr/lib) and you only need to specify the other 2 if your mysql libs are installed in a standard location. It would be nice if this were explicitly documented somewhere, though.


The canonical source of information on configure options is the output from 
'./configure --help'.  It's kind of assumed that a developer will look there to 
find this information.


Yes, but that information is pretty sparse, as per the example above. Most of the options are self-explanatory, but, for example, as an experiment I tried adding the option

 --disable-pcre

which resulted in the compile failing (so I guess you can't actually disable pcre?).


Simple Network Management Protocol (SNMP) is a widely used
protocol for monitoring the health and welfare of network equipment
  (eg. routers), computer equipment and even devices like UPSs.
Net-SNMP is a suite of applications used to implement SNMP v1,
SNMP v2c and SNMP v3 using both IPv4 and IPv6.


Right. So I know about the SNMP protocol, but have no idea how or why cyrus would be using this.



----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Reply via email to