diff options
author | Arun Isaac <arunisaac@systemreboot.net> | 2025-03-17 02:59:12 +0000 |
---|---|---|
committer | Arun Isaac <arunisaac@systemreboot.net> | 2025-03-17 03:02:31 +0000 |
commit | fd19785a9a7f111c6a97da25187c3351e7e8f3fd (patch) | |
tree | 27a64723ea4b5b96e4a16608b8f33d7b53773dc6 | |
parent | ccc9fd93c402a251bf53b25bd92be0a856f7999d (diff) | |
download | guix-fd19785a9a7f111c6a97da25187c3351e7e8f3fd.tar.gz guix-fd19785a9a7f111c6a97da25187c3351e7e8f3fd.zip |
gnu: mumi: Update to 0.11.0.
* gnu/packages/mail.scm (mumi): Update to 0.11.0.
* gnu/services/web.scm (<mumi-configuration>)[file-tags]: Remove field.
[packages]: New field.
(<mumi-package-configuration>): New record type.
(mumi-package-configuration->alist): New function.
* gnu/services/web.scm (mumi-config-file): Serialize packages configuration.
* doc/guix.texi (Web Services)[mumi]: Document packages configuration.
-rw-r--r-- | doc/guix.texi | 28 | ||||
-rw-r--r-- | gnu/packages/mail.scm | 4 | ||||
-rw-r--r-- | gnu/services/web.scm | 53 |
3 files changed, 80 insertions, 5 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 24321523b1..f71ef282a6 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -33792,6 +33792,34 @@ something like @code{sendmail:///path/to/bin/msmtp} or any other URI supported by Mailutils. @xref{SMTP Mailboxes, SMTP Mailboxes,, mailutils, GNU@tie{}Mailutils}. +@item @code{packages} +List of @code{<mumi-package-configuration>} objects representing +packages configured on Mumi. + +@end table +@end deftp + +@deftp {Data Type} mumi-package-configuration +Data type representing the configuration of a package on Mumi. This +type has the following fields: + +@table @asis +@item @code{name} +Name of the package. + +@item @code{display-name} +Display name used for this package in the web interface. + +@item @code{debbugs-packages} +List of Debbugs packages this package refers to. + +@item @code{bug-email-address} +Email address to send bug reports to. + +@item @code{patch-email-address} +Email address to send patches to, if that is different from +@code{bug-email-address}. + @item @code{file-tags} Association list mapping tags to filename regular expressions. Keys are tag names, and values are lists of regular expressions. For each entry diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 8365c50ec8..d57c067504 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -4265,7 +4265,7 @@ It is a replacement for the @command{urlview} program.") (define-public mumi (package (name "mumi") - (version "0.10.0") + (version "0.11.0") (source (origin (method git-fetch) (uri (git-reference @@ -4274,7 +4274,7 @@ It is a replacement for the @command{urlview} program.") (file-name (git-file-name name version)) (sha256 (base32 - "12i6xy1pwb5rs7qd6ld1kglgcydjg9lfplvg3mbim9az8sz30dyy")))) + "022m3vjp40gck9hj889f3mqxhahjzcsiwqn9npi26dzgca7kv3rz")))) (build-system gnu-build-system) (arguments (list diff --git a/gnu/services/web.scm b/gnu/services/web.scm index 2b01095f75..561d3f39c3 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -298,6 +298,16 @@ mumi-configuration-mailer? mumi-configuration-sender mumi-configuration-smtp + mumi-configuration-packages + + mumi-package-configuration + mumi-package-configuration? + mumi-package-configuration-name + mumi-package-configuration-display-name + mumi-package-configuration-debbugs-packages + mumi-package-configuration-bug-email-address + mumi-package-configuration-patch-email-address + mumi-package-configuration-file-tags mumi-service-type @@ -2025,7 +2035,21 @@ WSGIPassAuthorization On (mailer? mumi-configuration-mailer? (default #t)) (sender mumi-configuration-sender (default #f)) (smtp mumi-configuration-smtp (default #f)) - (file-tags mumi-configuration-file-tags (default '()))) + (packages mumi-configuration-packages (default '()))) + +(define-record-type* <mumi-package-configuration> + mumi-package-configuration make-mumi-package-configuration + mumi-package-configuration? + (name mumi-package-configuration-name) + (display-name mumi-package-configuration-display-name + (default #f)) + (debbugs-packages mumi-package-configuration-debbugs-packages) + (bug-email-address mumi-package-configuration-bug-email-address + (default #f)) + (patch-email-address mumi-package-configuration-patch-email-address + (default #f)) + (file-tags mumi-package-configuration-file-tags + (default '()))) (define %mumi-activation (with-imported-modules '((guix build utils)) @@ -2057,9 +2081,30 @@ WSGIPassAuthorization On (define %mumi-worker-log "/var/log/mumi.worker.log") +(define mumi-package-configuration->alist + (match-record-lambda <mumi-package-configuration> + (name display-name debbugs-packages bug-email-address + patch-email-address file-tags) + `(,name + ,@(if display-name + `((display-name . ,display-name)) + '()) + ,@(if debbugs-packages + `((debbugs-packages . ,debbugs-packages)) + '()) + ,@(if bug-email-address + `((bug-email-address . ,bug-email-address)) + '()) + ,@(if patch-email-address + `((patch-email-address . ,patch-email-address)) + '()) + ,@(match file-tags + (() '()) + (_ `((file-tags . ,file-tags))))))) + (define mumi-config-file (match-record-lambda <mumi-configuration> - (mailer? file-tags) + (mailer? packages) (computed-file "mumi.conf" #~(begin (use-modules (srfi srfi-26)) @@ -2067,7 +2112,9 @@ WSGIPassAuthorization On (call-with-output-file #$output (cut write '((mailer-enabled? . #$mailer?) - (file-tags . #$file-tags)) + (packages + . #$(map mumi-package-configuration->alist + packages))) <>)))))) (define (mumi-shepherd-services config) |