Message ID | 20200823204535.GA1392@E5400 |
---|---|
State | New |
Headers | show |
Series | None | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
Efraim Flashner <efraim@flashner.co.il> writes: > On Wed, Aug 19, 2020 at 11:44:20AM +0200, Alexey Abramov wrote: >> Hi, >> >> Efraim Flashner <efraim@flashner.co.il> writes: >> >> > How are all the XXX_MODULE_DIR variables set? Would it be possible to >> > just set MODULE_DIR to /etc/dovecot/modules and leave the others as-is? >> > They seem to just use a file/folder under MODULE_DIR. >> >> They set during compilation time. If I pass it as a configuration option, dovecot will try to install libraries there which won't work. > > This was enough to jog my memory that we have a couple of packages (with > services) that have configure flags for one directory and install to > %outputs as expected. I came up with the attached patch to make that > happen. Thank you very much! I have just tested it, and as you might probably know everything works as expected. I will push your updated patch as soon as guys review the services part.
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 01ba9dc057..d3d1bda1b6 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1442,7 +1442,8 @@ facilities for checking incoming mail.") `(#:configure-flags '("--sysconfdir=/etc" "--localstatedir=/var" "--with-sqlite" ; not auto-detected - "--with-lucene") + "--with-lucene" + "--with-moduledir=/etc/dovecot/modules") #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-file-names @@ -1459,9 +1460,13 @@ facilities for checking incoming mail.") (("cat") (which "cat"))) #t)) (replace 'install - (lambda* (#:key make-flags #:allow-other-keys) + (lambda* (#:key outputs make-flags #:allow-other-keys) + ;; The .la files don't like having the moduledir moved. + (for-each delete-file (find-files "." "\\.la")) ;; Simple hack to avoid installing a trivial README in /etc. (apply invoke "make" "install" "sysconfdir=/tmp/bogus" + (string-append "moduledir=" (assoc-ref outputs "out") + "/lib/dovecot") make-flags)))))) (home-page "https://www.dovecot.org") (synopsis "Secure POP3/IMAP server")