diff options
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/guix.texi | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index f19cb4f1ee6..555fd082471 100644 --- a/doc/guix.texi +++ b/doc/guix.texi | |||
| @@ -55455,7 +55455,10 @@ Extra content to add to the end of @file{~/.config/alsa/asoundrc}. | |||
| 55455 | The @code{(gnu home services mail)} module provides services that help | 55455 | The @code{(gnu home services mail)} module provides services that help |
| 55456 | you set up the tools to work with emails in your home environment. | 55456 | you set up the tools to work with emails in your home environment. |
| 55457 | 55457 | ||
| 55458 | @subsubheading MSMTP Service | ||
| 55458 | @cindex msmtp | 55459 | @cindex msmtp |
| 55460 | @cindex mail configuration, for outgoing mail | ||
| 55461 | |||
| 55459 | @uref{https://marlam.de/msmtp, MSMTP} is a @acronym{SMTP, Simple Mail | 55462 | @uref{https://marlam.de/msmtp, MSMTP} is a @acronym{SMTP, Simple Mail |
| 55460 | Transfer Protocol} client. It sends mail to a predefined SMTP server | 55463 | Transfer Protocol} client. It sends mail to a predefined SMTP server |
| 55461 | that takes care of proper delivery. | 55464 | that takes care of proper delivery. |
| @@ -55584,6 +55587,172 @@ format. | |||
| 55584 | 55587 | ||
| 55585 | @c %end of fragment | 55588 | @c %end of fragment |
| 55586 | 55589 | ||
| 55590 | @subsubheading Goimapnotify Service | ||
| 55591 | @cindex IMAP notifications | ||
| 55592 | |||
| 55593 | @defvar home-goimapnotify-service-type | ||
| 55594 | This is the type of the service that runs | ||
| 55595 | @uref{https://gitlab.com/shackra/goimapnotify, Goimapnotify}, a | ||
| 55596 | command-line application to execute scripts on IMAP mailbox changes | ||
| 55597 | using @uref{https://www.rfc-editor.org/info/rfc2177, IDLE}. Its value | ||
| 55598 | is a @code{home-goimapnotify-configuration} object. | ||
| 55599 | @end defvar | ||
| 55600 | |||
| 55601 | Here is a snippet of the service with an example configuration that you | ||
| 55602 | could add to the @code{services} field of your @code{home-environment}: | ||
| 55603 | |||
| 55604 | @lisp | ||
| 55605 | (service home-goimapnotify-service-type | ||
| 55606 | (home-goimapnotify-configuration | ||
| 55607 | (configurations | ||
| 55608 | (list | ||
| 55609 | (goimapnotify-configuration | ||
| 55610 | (host "imap.example.com") | ||
| 55611 | (tls? #t) | ||
| 55612 | (tls-options | ||
| 55613 | (goimapnotify-tls-options-configuration | ||
| 55614 | (reject-unauthorized? #t))) | ||
| 55615 | (user-name "alice@@example.com") | ||
| 55616 | (password-command | ||
| 55617 | #~(string-append #$(file-append libsecret "/bin/secret-tool") | ||
| 55618 | " lookup user alice@@example.com")) | ||
| 55619 | (boxes | ||
| 55620 | (list | ||
| 55621 | (goimapnotify-box-configuration | ||
| 55622 | (mailbox "Inbox") | ||
| 55623 | (on-new-mail | ||
| 55624 | #~(string-append #$(file-append isync "/bin/mbsync") | ||
| 55625 | " alice")) | ||
| 55626 | (on-new-mail-post | ||
| 55627 | #~(string-append #$(file-append notmuch "/bin/notmuch") | ||
| 55628 | " new")))))))))) | ||
| 55629 | @end lisp | ||
| 55630 | |||
| 55631 | @c %start of fragment | ||
| 55632 | |||
| 55633 | @deftp {Data Type} home-goimapnotify-configuration | ||
| 55634 | Available @code{home-goimapnotify-configuration} fields are: | ||
| 55635 | |||
| 55636 | @table @asis | ||
| 55637 | @item @code{goimapnotify} (default: @code{goimapnotify}) (type: file-like) | ||
| 55638 | The @code{goimapnotify} package to use. | ||
| 55639 | |||
| 55640 | @item @code{configurations} (type: list-of-goimapnotify-configurations) | ||
| 55641 | A list of @code{goimapnotify-configuration} records which contain | ||
| 55642 | information about all your accounts configurations. | ||
| 55643 | |||
| 55644 | @end table | ||
| 55645 | |||
| 55646 | @end deftp | ||
| 55647 | |||
| 55648 | |||
| 55649 | @c %end of fragment | ||
| 55650 | |||
| 55651 | @c %start of fragment | ||
| 55652 | |||
| 55653 | @deftp {Data Type} goimapnotify-configuration | ||
| 55654 | Available @code{goimapnotify-configuration} fields are: | ||
| 55655 | |||
| 55656 | @table @asis | ||
| 55657 | @item @code{host} (type: string) | ||
| 55658 | The IMAP server hostname. | ||
| 55659 | |||
| 55660 | @item @code{host-command} (type: maybe-string-or-gexp) | ||
| 55661 | Command to retrieve the IMAP server hostname. | ||
| 55662 | |||
| 55663 | @item @code{port} (default: @code{993}) (type: integer) | ||
| 55664 | The port that the IMAP server listens on. | ||
| 55665 | |||
| 55666 | @item @code{tls?} (default: @code{#f}) (type: boolean) | ||
| 55667 | Enable or disable TLS. | ||
| 55668 | |||
| 55669 | @item @code{tls-options} (type: maybe-goimapnotify-tls-options-configuration) | ||
| 55670 | TLS options for the IMAP connection. | ||
| 55671 | |||
| 55672 | @item @code{idle-logout-timeout} (type: maybe-integer) | ||
| 55673 | The idle logout timeout in minutes. | ||
| 55674 | |||
| 55675 | @item @code{user-name} (type: maybe-string) | ||
| 55676 | The user-name for authentication. | ||
| 55677 | |||
| 55678 | @item @code{user-name-command} (type: maybe-string-or-gexp) | ||
| 55679 | Command to retrieve the user-name. | ||
| 55680 | |||
| 55681 | @item @code{alias} (type: maybe-string) | ||
| 55682 | An alias for the account. | ||
| 55683 | |||
| 55684 | @item @code{password} (type: maybe-string) | ||
| 55685 | The password for authentication. | ||
| 55686 | |||
| 55687 | @item @code{password-command} (type: maybe-string-or-gexp) | ||
| 55688 | Command to retrieve the password. | ||
| 55689 | |||
| 55690 | @item @code{xo-auth2?} (default: @code{#f}) (type: boolean) | ||
| 55691 | Enable or disable XOAUTH2 authentication. | ||
| 55692 | |||
| 55693 | @item @code{boxes} (type: list-of-goimapnotify-boxes-configurations) | ||
| 55694 | The mailboxes to monitor. | ||
| 55695 | |||
| 55696 | @end table | ||
| 55697 | |||
| 55698 | @end deftp | ||
| 55699 | |||
| 55700 | |||
| 55701 | @c %end of fragment | ||
| 55702 | |||
| 55703 | @c %start of fragment | ||
| 55704 | |||
| 55705 | @deftp {Data Type} goimapnotify-box-configuration | ||
| 55706 | Available @code{goimapnotify-box-configuration} fields are: | ||
| 55707 | |||
| 55708 | @table @asis | ||
| 55709 | @item @code{mailbox} (type: string) | ||
| 55710 | The mailbox to monitor. | ||
| 55711 | |||
| 55712 | @item @code{on-new-mail} (type: maybe-string-or-gexp) | ||
| 55713 | Command to execute when new mail arrives. | ||
| 55714 | |||
| 55715 | @item @code{on-new-mail-post} (type: maybe-string-or-gexp) | ||
| 55716 | Command to execute after the new-mail command. | ||
| 55717 | |||
| 55718 | @item @code{on-changed-mail} (type: maybe-string-or-gexp) | ||
| 55719 | Command to execute when mail is changed. | ||
| 55720 | |||
| 55721 | @item @code{on-changed-mail-post} (type: maybe-string-or-gexp) | ||
| 55722 | Command to execute after the changed-mail command. | ||
| 55723 | |||
| 55724 | @item @code{on-deleted-mail} (type: maybe-string-or-gexp) | ||
| 55725 | Command to execute when mail is deleted. | ||
| 55726 | |||
| 55727 | @item @code{on-deleted-mail-post} (type: maybe-string-or-gexp) | ||
| 55728 | Command to execute after the deleted-mail command. | ||
| 55729 | |||
| 55730 | @end table | ||
| 55731 | |||
| 55732 | @end deftp | ||
| 55733 | |||
| 55734 | |||
| 55735 | @c %end of fragment | ||
| 55736 | |||
| 55737 | @c %start of fragment | ||
| 55738 | |||
| 55739 | @deftp {Data Type} goimapnotify-tls-options-configuration | ||
| 55740 | Available @code{goimapnotify-tls-options-configuration} fields are: | ||
| 55741 | |||
| 55742 | @table @asis | ||
| 55743 | @item @code{reject-unauthorized?} (default: @code{#f}) (type: boolean) | ||
| 55744 | Whether to reject unauthorized TLS certificates. | ||
| 55745 | |||
| 55746 | @item @code{starttls?} (default: @code{#f}) (type: boolean) | ||
| 55747 | Whether to use STARTTLS. | ||
| 55748 | |||
| 55749 | @end table | ||
| 55750 | |||
| 55751 | @end deftp | ||
| 55752 | |||
| 55753 | |||
| 55754 | @c %end of fragment | ||
| 55755 | |||
| 55587 | @node Messaging Home Services | 55756 | @node Messaging Home Services |
| 55588 | @subsection Messaging Home Services | 55757 | @subsection Messaging Home Services |
| 55589 | 55758 | ||
