snape pushed a commit to branch master
in repository guix.

commit f59de6bea9a2fc83df492eafbfb7f8bfc5148939
Author: Clément Lassieur <clem...@lassieur.org>
Date:   Fri Oct 27 00:20:01 2017 +0200

    services: prosody: Add support for http-external-url.
    
    * doc/guix.texi (Messaging Services): Update accordingly.
    * gnu/services/messaging.scm (prosody-configuration)[http-external-url]: New
    field.
---
 doc/guix.texi              | 13 ++++++++++---
 gnu/services/messaging.scm |  8 ++++++++
 2 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index a2f7d9e..0e41169 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -14143,6 +14143,13 @@ File to write pid in.  See 
@url{http://prosody.im/doc/modules/mod_posix}.
 Defaults to @samp{"/var/run/prosody/prosody.pid"}.
 @end deftypevr
 
+@deftypevr {@code{prosody-configuration} parameter} maybe-string 
http-external-url
+Some modules expose their own URL in various ways.  This URL is built
+from the protocol, host and port used.  If Prosody sits behind a proxy, the
+public URL will be @code{http-external-url} instead.  See
+@url{https://prosody.im/doc/http#external_url}.
+@end deftypevr
+
 @deftypevr {@code{prosody-configuration} parameter} 
virtualhost-configuration-list virtualhosts
 A host in Prosody is a domain on which user accounts can be created.  For
 example if you want your users to have addresses like
@@ -14159,7 +14166,7 @@ See 
@url{http://prosody.im/doc/configure#virtual_host_settings}.
 
 Available @code{virtualhost-configuration} fields are:
 
-all these @code{prosody-configuration} fields: @code{admins}, 
@code{use-libevent?}, @code{modules-enabled}, @code{modules-disabled}, 
@code{groups-file}, @code{allow-registration?}, @code{ssl}, 
@code{c2s-require-encryption?}, @code{s2s-require-encryption?}, 
@code{s2s-secure-auth?}, @code{s2s-insecure-domains}, 
@code{s2s-secure-domains}, @code{authentication}, @code{log}, plus:
+all these @code{prosody-configuration} fields: @code{admins}, 
@code{use-libevent?}, @code{modules-enabled}, @code{modules-disabled}, 
@code{groups-file}, @code{allow-registration?}, @code{ssl}, 
@code{c2s-require-encryption?}, @code{s2s-require-encryption?}, 
@code{s2s-secure-auth?}, @code{s2s-insecure-domains}, 
@code{s2s-secure-domains}, @code{authentication}, @code{log}, 
@code{http-external-url}, plus:
 @deftypevr {@code{virtualhost-configuration} parameter} string domain
 Domain you wish Prosody to serve.
 @end deftypevr
@@ -14181,7 +14188,7 @@ Defaults to @samp{()}.
 
 Available @code{int-component-configuration} fields are:
 
-all these @code{prosody-configuration} fields: @code{admins}, 
@code{use-libevent?}, @code{modules-enabled}, @code{modules-disabled}, 
@code{groups-file}, @code{allow-registration?}, @code{ssl}, 
@code{c2s-require-encryption?}, @code{s2s-require-encryption?}, 
@code{s2s-secure-auth?}, @code{s2s-insecure-domains}, 
@code{s2s-secure-domains}, @code{authentication}, @code{log}, plus:
+all these @code{prosody-configuration} fields: @code{admins}, 
@code{use-libevent?}, @code{modules-enabled}, @code{modules-disabled}, 
@code{groups-file}, @code{allow-registration?}, @code{ssl}, 
@code{c2s-require-encryption?}, @code{s2s-require-encryption?}, 
@code{s2s-secure-auth?}, @code{s2s-insecure-domains}, 
@code{s2s-secure-domains}, @code{authentication}, @code{log}, 
@code{http-external-url}, plus:
 @deftypevr {@code{int-component-configuration} parameter} string hostname
 Hostname of the component.
 @end deftypevr
@@ -14234,7 +14241,7 @@ Defaults to @samp{()}.
 
 Available @code{ext-component-configuration} fields are:
 
-all these @code{prosody-configuration} fields: @code{admins}, 
@code{use-libevent?}, @code{modules-enabled}, @code{modules-disabled}, 
@code{groups-file}, @code{allow-registration?}, @code{ssl}, 
@code{c2s-require-encryption?}, @code{s2s-require-encryption?}, 
@code{s2s-secure-auth?}, @code{s2s-insecure-domains}, 
@code{s2s-secure-domains}, @code{authentication}, @code{log}, plus:
+all these @code{prosody-configuration} fields: @code{admins}, 
@code{use-libevent?}, @code{modules-enabled}, @code{modules-disabled}, 
@code{groups-file}, @code{allow-registration?}, @code{ssl}, 
@code{c2s-require-encryption?}, @code{s2s-require-encryption?}, 
@code{s2s-secure-auth?}, @code{s2s-insecure-domains}, 
@code{s2s-secure-domains}, @code{authentication}, @code{log}, 
@code{http-external-url}, plus:
 @deftypevr {@code{ext-component-configuration} parameter} string 
component-secret
 Password which the component will use to log in.
 @end deftypevr
diff --git a/gnu/services/messaging.scm b/gnu/services/messaging.scm
index 526ad5a..5a7b196 100644
--- a/gnu/services/messaging.scm
+++ b/gnu/services/messaging.scm
@@ -436,6 +436,14 @@ by the GuixSD Prosody Service.  See 
@url{http://prosody.im/doc/logging}.";
      "File to write pid in.  See 
@url{http://prosody.im/doc/modules/mod_posix}.";
      global)
 
+    (http-external-url
+     (maybe-string 'disabled)
+     "Some modules expose their own URL in various ways.  This URL is built
+from the protocol, host and port used.  If Prosody sits behind a proxy, the
+public URL will be @code{http-external-url} instead.  See
+@url{https://prosody.im/doc/http#external_url}.";
+     common)
+
     (virtualhosts
      (virtualhost-configuration-list
       (list (virtualhost-configuration

Reply via email to