commit:     c14e7592f39ee16494713f5469e42c91b22e0d2b
Author:     Vadim A. Misbakh-Soloviov <git <AT> mva <DOT> name>
AuthorDate: Sat Mar 18 20:45:43 2017 +0000
Commit:     Vadim A. Misbakh-Soloviov <mva <AT> mva <DOT> name>
CommitDate: Sat Mar 18 20:45:43 2017 +0000
URL:        https://gitweb.gentoo.org/proj/lua.git/commit/?id=c14e7592

prosody{,-modules}: bump

 net-im/prosody-modules/metadata.xml                | 53 +++++++++++------
 net-im/prosody-modules/prosody-modules-9999.ebuild | 68 ++++++++++++----------
 net-im/prosody/files/prosody.initd                 |  4 +-
 net-im/prosody/prosody-9999.ebuild                 | 44 +++++++++++---
 4 files changed, 111 insertions(+), 58 deletions(-)

diff --git a/net-im/prosody-modules/metadata.xml 
b/net-im/prosody-modules/metadata.xml
index 22925c8..db5d515 100644
--- a/net-im/prosody-modules/metadata.xml
+++ b/net-im/prosody-modules/metadata.xml
@@ -18,6 +18,7 @@
        <flag name='admin_probe'>This module lets server administrators send 
<code>&lt;presence type=&quot;probe&quot;/&gt;</code> to any local user and 
receive their presence in response, bypassing roster checks. (info: 
https://modules.prosody.im/mod_admin_probe)</flag>
        <flag name='admin_web'>This module provides a basic web administration 
interface. It currently gives you access to Ad-Hoc commands on any virtual host 
or component that you are set as an administrator for in the Prosody config 
file. It also provides a live list of all S2S and C2S connections. (info: 
https://modules.prosody.im/mod_admin_web)</flag>
        <flag name='alias'>This module allows you to set up aliases that alert 
people who try to contact them or add them to their roster what your actual JID 
is. This is useful for changing JIDs, or just in the case where you own both 
example.com and example.net, and want people who contact y...@example.com to be 
alerted to contact you at y...@example.net instead. (info: 
https://modules.prosody.im/mod_alias)</flag>
+       <flag name='atom'>No documentation yet :( (info: 
https://modules.prosody.im/mod_atom)</flag>
        <flag name='auth_any'>This module accepts any username and password, 
which can be useful for testing. (info: 
https://modules.prosody.im/mod_auth_any)</flag>
        <flag name='auth_ccert'>This module implements PKI-style client 
certificate authentication. You will therefore need your own Certificate 
Authority. How to set that up is beyond the current scope of this document. 
(info: https://modules.prosody.im/mod_auth_ccert)</flag>
        <flag name='auth_custom_http'>To authenticate users, this module does a 
<code>POST</code> request to a configured URL with a JSON payload. It is not 
async so requests block the server until answered. (info: 
https://modules.prosody.im/mod_auth_custom_http)</flag>
@@ -38,7 +39,7 @@
        <flag name='auto_activate_hosts'>By default Prosody does not 
automatically activate/deactivate hosts when they are added to and removed from 
the configuration. (info: 
https://modules.prosody.im/mod_auto_activate_hosts)</flag>
        <flag name='benchmark_storage'>To benchmark 
<code>mod_storage_internal</code>: (info: 
https://modules.prosody.im/mod_benchmark_storage)</flag>
        <flag name='bidi'>This module implements <a 
href="http://xmpp.org/extensions/xep-0288.html";>XEP-0288: Bidirectional 
Server-to-Server Connections</a>. It allows servers to use a single connection 
for sending stanzas to each other, instead of two connections (one for stanzas 
in each direction). (info: https://modules.prosody.im/mod_bidi)</flag>
-       <flag name='block_outgoing'>No documentation yet :( (info: 
https://modules.prosody.im/mod_block_outgoing)</flag>
+       <flag name='block_outgoing'>This module blocks all outgoing stanzas 
from a list of users. (info: 
https://modules.prosody.im/mod_block_outgoing)</flag>
        <flag name='block_registrations'>On a server with public registration 
it is usually desirable to prevent registration of certain &quot;reserved&quot; 
accounts, such as &quot;admin&quot;. (info: 
https://modules.prosody.im/mod_block_registrations)</flag>
        <flag name='block_s2s_subscriptions'>No documentation yet :( (info: 
https://modules.prosody.im/mod_block_s2s_subscriptions)</flag>
        <flag name='block_strangers'>No documentation yet :( (info: 
https://modules.prosody.im/mod_block_strangers)</flag>
@@ -55,21 +56,25 @@
        <flag name='carbons_copies'>No documentation yet :( (info: 
https://modules.prosody.im/mod_carbons_copies)</flag>
        <flag name='checkcerts'>This module periodically checks your 
certificate to see if it is about to expire soon. The time before expiry is 
printed in the logs. About a week before a certificate expires, reminder 
messages will be sent to admins. (info: 
https://modules.prosody.im/mod_checkcerts)</flag>
        <flag name='client_certs'><a 
href="http://xmpp.org/extensions/xep-0257.html";>XEP-0257</a> specifies a 
protocol for clients to store and manage client side certificates. When a 
client presents a stored client side certificate during the TLS handshake, it 
can log in without supplying a password (using SASL EXTERNAL). This makes it 
possible to have multiple devices accessing an account, without any of them 
needing to know the password, and makes it easier to revoke access for a single 
device. (info: https://modules.prosody.im/mod_client_certs)</flag>
-       <flag name='cloud_notify'>This is an implementation of the server bits 
of <a href="http://xmpp.org/extensions/xep-0357.html";>XEP-0357: Push 
Notifications</a>. It allows clients to register an &quot;app server&quot; 
which is notified about new messages while the user is offline or disconnected. 
Implementation of the &quot;app server&quot; is not included<a href="#fn1" 
class="footnoteRef" id="fnref1"><sup>1</sup></a>. (info: 
https://modules.prosody.im/mod_cloud_notify)</flag>
+       <flag name='cloud_notify'>This is an implementation of the server bits 
of <a href="https://xmpp.org/extensions/xep-0357.html";>XEP-0357: Push 
Notifications</a>. It allows clients to register an &quot;app server&quot; 
which is notified about new messages while the user is offline, disconnected or 
the session is hibernated by <a href="/mod_smacks.html">mod_smacks</a>. 
Implementation of the &quot;app server&quot; is not included<a href="#fn1" 
class="footnoteRef" id="fnref1"><sup>1</sup></a>. (info: 
https://modules.prosody.im/mod_cloud_notify)</flag>
        <flag name='compact_resource'>No documentation yet :( (info: 
https://modules.prosody.im/mod_compact_resource)</flag>
        <flag name='compat_bind'>No documentation yet :( (info: 
https://modules.prosody.im/mod_compat_bind)</flag>
        <flag name='compat_dialback'>This module provides a workaround for 
servers that do not set the <code>to</code> attribute on stream headers, which 
is required per <a href="https://tools.ietf.org/html/rfc6120";>RFC6120</a>: 
(info: https://modules.prosody.im/mod_compat_dialback)</flag>
        <flag name='compat_muc_admin'>Adds compatibility for old 
clients/libraries attempting to change affiliations and retrieve 'em sending 
the &lt; http://jabber.org/protocol/muc#owner &gt; xmlns instead of &lt; 
http://jabber.org/protocol/muc#admin &gt;. (info: 
https://modules.prosody.im/mod_compat_muc_admin)</flag>
        <flag name='compat_vcard'>No documentation yet :( (info: 
https://modules.prosody.im/mod_compat_vcard)</flag>
-       <flag name='component_client'>No documentation yet :( (info: 
https://modules.prosody.im/mod_component_client)</flag>
+       <flag name='component_client'>This module turns Prosody hosts into 
components of other XMPP servers. (info: 
https://modules.prosody.im/mod_component_client)</flag>
        <flag name='component_roundrobin'>This module enables multiple 
instances of external components to connect at the same time, and does 
round-robin load-balancing of incoming stanzas. (info: 
https://modules.prosody.im/mod_component_roundrobin)</flag>
+       <flag name='compression'>While the bandwidth usage of XMPP isn't that 
much, compressing the data sent to/from your server can give significant 
benefits to those on slow connections, such as dial-up or mobile networks. 
Prosody supports compression for client-to-server (if your client supports it) 
and server-to-server streams using the mod_compression plugin. (info: 
https://modules.prosody.im/mod_compression)</flag>
        <flag name='conformance_restricted'>This module sends processing 
instructions, comments, DTDs and a non predefined entity (defined by the DTD) 
to the requesting entity. (info: 
https://modules.prosody.im/mod_conformance_restricted)</flag>
        <flag name='couchdb'><em><strong>Note:</strong> This module needs 
updating to the 0.8 storage module API.</em> (info: 
https://modules.prosody.im/mod_couchdb)</flag>
        <flag name='csi'>This module implements <a 
href="http://xmpp.org/extensions/xep-0352.html";>Client State Indication</a>, a 
way for mobile clients to tell the server that they are sitting in someones 
pocket and would rather not get some less urgent things pushed to it. (info: 
https://modules.prosody.im/mod_csi)</flag>
+       <flag name='csi_battery_saver'>Stanzas are queued in a buffer until 
either an &quot;important&quot; stanza is encountered or the buffer becomes 
full. Then all queued stanzas are sent at the same time. This way, nothing is 
lost or reordered while still allowing for power usage savings by not requiring 
mobile clients to bring up their radio for unimportant stanzas. (info: 
https://modules.prosody.im/mod_csi_battery_saver)</flag>
        <flag name='csi_compat'>This module implements the google:queue 
protocol and maps it to <a 
href="https://modules.prosody.im/mod_csi.html";>mod_csi</a> events. (info: 
https://modules.prosody.im/mod_csi_compat)</flag>
+       <flag name='csi_pump'>Stanzas are queued in a buffer until either an 
&quot;important&quot; stanza is encountered or the buffer becomes full. Then 
all queued stanzas are sent at the same time. This way, nothing is lost or 
reordered while still allowing for power usage savings by not requiring mobile 
clients to bring up their radio for unimportant stanzas. (info: 
https://modules.prosody.im/mod_csi_pump)</flag>
        <flag name='data_access'>This module gives HTTP access to prosody’s 
storage mechanism. It uses normal HTTP verbs and <a 
href="http://tools.ietf.org/html/rfc2617";>Basic HTTP authentication</a>, so you 
could call it RESTful if you like buzzwords. (info: 
https://modules.prosody.im/mod_data_access)</flag>
        <flag name='default_bookmarks'>This module allows you to add default 
bookmarks for users. It only kicks in when the user has no existing bookmarks, 
so users are free to add, change or remove them. (info: 
https://modules.prosody.im/mod_default_bookmarks)</flag>
        <flag name='default_vcard'>It is possible for the user to supply more 
than just a username and password when creating an account using <a 
href="https://prosody.im/doc/modules/mod_register";>mod_register</a>. This 
module automatically copies over that data to the user's vcard. (info: 
https://modules.prosody.im/mod_default_vcard)</flag>
+       <flag name='delay'>This module adds &quot;Delayed Delivery&quot;-tags 
to every message stanza passing the server containing the current time on that 
server. (info: https://modules.prosody.im/mod_delay)</flag>
        <flag name='delegation'>Namespace Delegation is an extension which 
allows server to delegate some features handling to an entity/component. 
Typical use case is an external PEP service, but it can be used more generally 
when your prefered server lack one internal feature and you found an external 
component which can do it. (info: 
https://modules.prosody.im/mod_delegation)</flag>
        <flag name='disable_tls'>This module can be used to prevent Prosody 
from offering TLS on client ports that you specify. This can be useful to work 
around buggy clients when transport security is not required. (info: 
https://modules.prosody.im/mod_disable_tls)</flag>
        <flag name='discoitems'>This Prosody plugin lets you manually override 
the service discovery items for a host. (info: 
https://modules.prosody.im/mod_discoitems)</flag>
@@ -79,7 +84,8 @@
        <flag name='extdisco'>This module adds support for <a 
href="https://xmpp.org/extensions/xep-0215.html";>XEP-0215: External Service 
Discovery</a>, which lets Prosody advertise non-XMPP services. (info: 
https://modules.prosody.im/mod_extdisco)</flag>
        <flag name='fallback_vcard'>No documentation yet :( (info: 
https://modules.prosody.im/mod_fallback_vcard)</flag>
        <flag name='filter_chatstates'>Some mobile XMPP client developers 
consider <a href="http://xmpp.org/extensions/xep-0085.html";>Chat State 
Notifications</a> to be a waste of power and bandwidth, especially when the 
user is not actively looking at their device. This module will filter them out 
while the session is considered inactive. It depends on <a 
href="/mod_csi.html">mod_csi</a> for deciding when to begin and end filtering. 
(info: https://modules.prosody.im/mod_filter_chatstates)</flag>
-       <flag name='firewall'><strong>Note:</strong> mod_firewall is in its 
very early stages. This documentation is liable to change, and some described 
functionality may be missing, incomplete or contain bugs. Feedback is welcome 
in the comments section at the bottom of this page. (info: 
https://modules.prosody.im/mod_firewall)</flag>
+       <flag name='filter_words'>No documentation yet :( (info: 
https://modules.prosody.im/mod_filter_words)</flag>
+       <flag name='firewall'><strong>Note:</strong> mod_firewall is in its 
very early stages. This documentation is liable to change, and some described 
functionality may be missing, incomplete or contain bugs. (info: 
https://modules.prosody.im/mod_firewall)</flag>
        <flag name='flash_policy'>This Prosody plugin adds support for flash 
socket policies. When connecting with a flash client (from a webpage, not an 
exe) to prosody the flash client requests for an xml &quot;file&quot; on port 
584 or the connecting port (5222 in the case of default xmpp). Responding on 
port 584 is tricky because it requires root priviliges to set up a socket on a 
port &lt; 1024. (info: https://modules.prosody.im/mod_flash_policy)</flag>
        <flag name='graceful_shutdown'>This module is an experiment about a 
more graceful shutdown process. (info: 
https://modules.prosody.im/mod_graceful_shutdown)</flag>
        <flag name='group_bookmarks'><a 
href="http://prosody.im/doc/modules/mod_groups";>mod_groups</a> allows you to 
insert contacts into users' contact lists. Well mod_group_bookmarks allows you 
to insert chatrooms into the user's bookmarks. These are fetched by their 
client and automatically joined when the log in. (info: 
https://modules.prosody.im/mod_group_bookmarks)</flag>
@@ -88,14 +94,19 @@
        <flag name='host_status_check'>This module allows you to monitor the 
state of hosts and components in your Prosody server. For example, it will 
track whether components are connected and (if the component supports it) 
listen for heartbeats sent by the component to indicate that it is functioning. 
(info: https://modules.prosody.im/mod_host_status_check)</flag>
        <flag name='host_status_heartbeat'>This module integrates with <a 
href="/mod_host_status_check.html">mod_host_status_check</a> to provide 
heartbeats at regular intervals. (info: 
https://modules.prosody.im/mod_host_status_heartbeat)</flag>
        <flag name='http_altconnect'>No documentation yet :( (info: 
https://modules.prosody.im/mod_http_altconnect)</flag>
+       <flag name='http_authentication'>This module enforces HTTP Basic 
authentication across all HTTP endpoints served by Prosody. (info: 
https://modules.prosody.im/mod_http_authentication)</flag>
        <flag name='http_dir_listing'>This module generates directory listings 
when invoked by <code>mod_http_files</code>. See <a 
href="http://prosody.im/doc/modules/mod_http_files";>documentation on 
<code>mod_http_files</code></a>. (info: 
https://modules.prosody.im/mod_http_dir_listing)</flag>
        <flag name='http_favicon'>This simple module serves a 
<code>favicon.ico</code> from prosodys HTTP server and nothing else. (info: 
https://modules.prosody.im/mod_http_favicon)</flag>
        <flag name='http_host_status_check'>This module exposes serves over 
HTTP the information collected by <a 
href="/mod_host_status_check.html">mod_host_status_check</a> and <a 
href="/mod_host_status_heartbeat.html">mod_host_status_heartbeat</a> in a 
convenient format for automated monitoring tools. (info: 
https://modules.prosody.im/mod_http_host_status_check)</flag>
-       <flag name='http_index'>This module produces a list of enabled HTTP 
&quot;apps&quot; exposed from Prosody at <code>http://example.org:5280/</code>, 
e.g. mod_http_muc_log, mod_http_files or mod_admin_web. If you think Prosodys 
default &quot;root&quot; web page (a 404 error usually) is boring, this might 
be the module for you! :) (info: 
https://modules.prosody.im/mod_http_index)</flag>
+       <flag name='http_hostaliases'>No documentation yet :( (info: 
https://modules.prosody.im/mod_http_hostaliases)</flag>
+       <flag name='http_index'>This module produces a list of enabled HTTP 
&quot;apps&quot; exposed from Prosody at <code>http://example.org:5280/</code>, 
e.g. <a href="/mod_http_muc_log.html">mod_http_muc_log</a>, <a 
href="https://prosody.im/doc/modules/mod_http_files";>mod_http_files</a> or <a 
href="/mod_admin_web.html">mod_admin_web</a>. If you think Prosodys default 
&quot;root&quot; web page (a 404 error usually) is boring, this might be the 
module for you! :) (info: https://modules.prosody.im/mod_http_index)</flag>
        <flag name='http_logging'>No documentation yet :( (info: 
https://modules.prosody.im/mod_http_logging)</flag>
        <flag name='http_muc_log'>This module provides a built-in web interface 
to view chatroom logs stored by <a href="/mod_mam_muc.html">mod_mam_muc</a>. 
(info: https://modules.prosody.im/mod_http_muc_log)</flag>
-       <flag name='http_roster_admin'>No documentation yet :( (info: 
https://modules.prosody.im/mod_http_roster_admin)</flag>
+       <flag name='http_rest'>This module provides a <a 
href="https://en.wikipedia.org/wiki/Representational_state_transfer";>REST</a>ful
 method for sending XMPP stanzas. (info: 
https://modules.prosody.im/mod_http_rest)</flag>
+       <flag name='http_roster_admin'><em>NOTE: THIS MODULE IS RELEASED UNDER 
THE MOZILLA PUBLIC LICENSE VERSION 2.</em> (info: 
https://modules.prosody.im/mod_http_roster_admin)</flag>
+       <flag name='http_stats_stream'>This module provides a streaming 
interface to <a href="https://prosody.im/doc/statistics";>Prosodys internal 
statistics</a> via <a 
href="https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events";>Server-sent
 events</a>. (info: https://modules.prosody.im/mod_http_stats_stream)</flag>
        <flag name='http_upload'>This module implements <a 
href="https://xmpp.org/extensions/xep-0363.html";>XEP-0363</a>, which lets 
clients upload files over HTTP. (info: 
https://modules.prosody.im/mod_http_upload)</flag>
+       <flag name='http_upload_external'>This module implements <a 
href="https://xmpp.org/extensions/xep-0363.html";>XEP-0363</a>, which lets 
clients upload files over HTTP to an external web server. (info: 
https://modules.prosody.im/mod_http_upload_external)</flag>
        <flag name='http_user_count'>No documentation yet :( (info: 
https://modules.prosody.im/mod_http_user_count)</flag>
        <flag name='idlecompat'>This module adds <a 
href="http://xmpp.org/extensions/xep-0319.html";>XEP-0319</a> idle tags to 
presence stanzas containing <a 
href="http://xmpp.org/extensions/xep-0012.html";>XEP-0012: Last Activity</a> 
tags for idle indication (e.g. supported by libpurple clients). It works on 
outgoing and incoming presence stanzas. (info: 
https://modules.prosody.im/mod_idlecompat)</flag>
        <flag name='incidents_handling'>This module implements <a 
href="http://xmpp.org/extensions/xep-0268.html";>XEP-268</a>. (info: 
https://modules.prosody.im/mod_incidents_handling)</flag>
@@ -111,11 +122,11 @@
        <flag name='limit_auth'>This module lets you put a per-IP limit on the 
number of failed authentication attempts. (info: 
https://modules.prosody.im/mod_limit_auth)</flag>
        <flag name='limits'>On some servers, especially public ones, it is 
desired to make sure that everyone gets their fair share of system resources 
(and no more). (info: https://modules.prosody.im/mod_limits)</flag>
        <flag name='list_inactive'>This module lists those users, who haven't 
used their account in a defined time-frame. (info: 
https://modules.prosody.im/mod_list_inactive)</flag>
-       <flag name='listusers'>No documentation yet :( (info: 
https://modules.prosody.im/mod_listusers)</flag>
+       <flag name='listusers'>This module adds a command to 
<code>prosodyctl</code> for listing users. (info: 
https://modules.prosody.im/mod_listusers)</flag>
        <flag name='log_auth'>Prosody doesn't write IP addresses to its log 
file by default for privacy reasons (unless debug logging is enabled). (info: 
https://modules.prosody.im/mod_log_auth)</flag>
        <flag name='log_events'>No documentation yet :( (info: 
https://modules.prosody.im/mod_log_events)</flag>
        <flag name='log_mark'>This module sends <code>-- MARK --</code> to the 
log once per minute. This may be useful to give a sense of how busy the server 
is or see that logging and timers are still working. (info: 
https://modules.prosody.im/mod_log_mark)</flag>
-       <flag name='log_messages_sql'>No documentation yet :( (info: 
https://modules.prosody.im/mod_log_messages_sql)</flag>
+       <flag name='log_messages_sql'>This module logs messages to a SQL 
database. (info: https://modules.prosody.im/mod_log_messages_sql)</flag>
        <flag name='log_rate'>If you ever wanted to collect statistics on the 
number of log messages, this is the module for you! (info: 
https://modules.prosody.im/mod_log_rate)</flag>
        <flag name='log_sasl_mech'>No documentation yet :( (info: 
https://modules.prosody.im/mod_log_sasl_mech)</flag>
        <flag name='log_slow_events'>No documentation yet :( (info: 
https://modules.prosody.im/mod_log_slow_events)</flag>
@@ -127,13 +138,16 @@
        <flag name='manifesto'>This module informs users about the XMPP Test 
day and whether their contacts are affected. For mor info about the test day, 
see <a href="https://stpeter.im/journal/1496.html"; 
class="uri">https://stpeter.im/journal/1496.html</a> (info: 
https://modules.prosody.im/mod_manifesto)</flag>
        <flag name='measure_cpu'>This module measures CPU usage and reports 
using Prosody 0.10 APIs (info: 
https://modules.prosody.im/mod_measure_cpu)</flag>
        <flag name='measure_memory'>This module measures memory usage and 
reports using Prosody 0.10 APIs (info: 
https://modules.prosody.im/mod_measure_memory)</flag>
+       <flag name='measure_message_length'>Simple module that collects 
statistics on message length in bytes, word count and line count. (info: 
https://modules.prosody.im/mod_measure_message_length)</flag>
+       <flag name='measure_storage'>This module collects statistics from 
storage operations. (info: 
https://modules.prosody.im/mod_measure_storage)</flag>
        <flag name='message_logging'>Often service administrators need to log 
their users' messages for reasons such as auditing and compliance. This module 
simply logs user messages to simple text files, which can be easily searched, 
archived or removed on a regular basis. (info: 
https://modules.prosody.im/mod_message_logging)</flag>
        <flag name='migrate'>This module adds a command to 
<code>prosodyctl</code> for copying data between storage drivers. (info: 
https://modules.prosody.im/mod_migrate)</flag>
        <flag name='motd_sequential'>mod_motd_sequential is a variant of <a 
href="https://prosody.im/doc/modules/mod_motd";>mod_motd</a> that lets you 
specify a sequence of MOTD messages instead of a single static one. Each 
message is only sent once and the module keeps track of who as seen which 
message. (info: https://modules.prosody.im/mod_motd_sequential)</flag>
        <flag name='muc_access_control'>No documentation yet :( (info: 
https://modules.prosody.im/mod_muc_access_control)</flag>
        <flag name='muc_ban_ip'>One frequent complaint about XMPP chatrooms 
(MUCs) compared to IRC is the inability for a room admin to ban a user based on 
their IP address. This is because an XMPP user is not identified on the network 
by their IP address, only their JID. (info: 
https://modules.prosody.im/mod_muc_ban_ip)</flag>
+       <flag name='muc_block_pm'>This module prevents unaffiliated users from 
sending private messages in chat rooms, unless someone with an affiliation 
(member, admin etc) messages them first. (info: 
https://modules.prosody.im/mod_muc_block_pm)</flag>
        <flag name='muc_config_restrict'>Sometimes, especially on public 
services, you may want to allow people to create their own rooms, but prevent 
some options from being modified by normal users. (info: 
https://modules.prosody.im/mod_muc_config_restrict)</flag>
-       <flag name='muc_intercom'>No documentation yet :( (info: 
https://modules.prosody.im/mod_muc_intercom)</flag>
+       <flag name='muc_intercom'>This module allows sending a message to 
another MUC room. (info: https://modules.prosody.im/mod_muc_intercom)</flag>
        <flag name='muc_limits'>This module allows you to control the maximum 
rate of 'events' in a MUC room. This makes it useful to prevent room floods 
(whether malicious or accidental). (info: 
https://modules.prosody.im/mod_muc_limits)</flag>
        <flag name='muc_log'>This module logs the conversation of chatrooms 
running on the server to Prosody's data store. To view them you will need a 
module such as <a 
href="https://modules.prosody.im/mod_muc_log_http.html";>mod_muc_log_http</a>. 
(info: https://modules.prosody.im/mod_muc_log)</flag>
        <flag name='muc_log_http'>This module provides a built-in web interface 
to view chatroom logs stored by <a 
href="https://modules.prosody.im/mod_muc_log.html";>mod_muc_log</a>. (info: 
https://modules.prosody.im/mod_muc_log_http)</flag>
@@ -148,6 +162,7 @@
        <flag name='pastebin'>Pastebins are used very often in IM, especially 
in chat rooms. You have a long log or command output which you need to send to 
someone over IM, and don't want to fill their message window with it. Put it on 
a pastebin site, and give them the URL instead, simple. (info: 
https://modules.prosody.im/mod_pastebin)</flag>
        <flag name='pep_vcard_avatar'>This module pushes the users nickname and 
avatar from vCards into PEP, or into vCards from PEP. This allows interop 
between older clients that use <a 
href="http://xmpp.org/extensions/xep-0153.html";>XEP-0153: vCard-Based 
Avatars</a> to see the avatars of clients that use <a 
href="http://xmpp.org/extensions/xep-0084.html";>XEP-0084: User Avatar</a> and 
vice versa. (info: https://modules.prosody.im/mod_pep_vcard_avatar)</flag>
        <flag name='pep_vcard_png_avatar'>Conversations (an XMPP client for 
Android) is publishing PEP avatars in the webp file format. However Pidgin and 
other XMPP desktop clients can only show vcard avatars, that are in the PNG 
file format. This module is the <a 
href="https://modules.prosody.im/mod_pep_vcard_avatar.html";>mod_pep_vcard_avatar</a>
 module extended to also change the avatar file format to PNG. (info: 
https://modules.prosody.im/mod_pep_vcard_png_avatar)</flag>
+       <flag name='persisthosts'>This module creates stub configuration files 
for newly activated hosts. (info: 
https://modules.prosody.im/mod_persisthosts)</flag>
        <flag name='pinger'>No documentation yet :( (info: 
https://modules.prosody.im/mod_pinger)</flag>
        <flag name='poke_strangers'>In order to build heuristics for which 
messages are spam, it is necessary to log as many details as possible about the 
spammers. This module sends a version and disco query whenever a message is 
received from a JID to a user it is not subscribed to. The results are printed 
to Prosody's log file at the 'info' level. Queried full JIDs are not queried 
again until Prosody restarts. (info: 
https://modules.prosody.im/mod_poke_strangers)</flag>
        <flag name='post_msg'>Sometimes it's useful to have different 
interfaces to access XMPP. (info: 
https://modules.prosody.im/mod_post_msg)</flag>
@@ -162,18 +177,19 @@
        <flag name='pubsub_eventsource'><a 
href="https://en.wikipedia.org/wiki/Server-sent_events";>Server-Sent Events</a> 
is a simple HTTP/line-based protocol supported in HTML5, making it easy to 
receive a stream of &quot;events&quot; in realtime using the Javascript <a 
href="https://developer.mozilla.org/en-US/docs/Web/API/EventSource";>EventSource 
API</a>. (info: https://modules.prosody.im/mod_pubsub_eventsource)</flag>
        <flag name='pubsub_feeds'>This module allows Prosody to fetch Atom and 
RSS feeds for you, and push new results to subscribers over XMPP. (info: 
https://modules.prosody.im/mod_pubsub_feeds)</flag>
        <flag name='pubsub_github'>This module accepts Github web hooks and 
publishes them to a local pubsub component for XMPP clients to subscribe to. 
(info: https://modules.prosody.im/mod_pubsub_github)</flag>
-       <flag name='pubsub_hub'>This module implements a <a 
href="http://pubsubhubbub.googlecode.com/svn/trunk/pubsubhubbub-core-0.3.html";>PubSubHubbub</a>
 (PuSH) hub, allowing PuSH clients to subscribe to local XMPP <a 
href="http://xmpp.org/extensions/xep-0060.html";>Publish-Subscribe</a> nodes 
stored by <a href="http://prosody.im/doc/modules/mod_pubsub";>mod_pubsub</a> and 
receive real time updates to feeds. (info: 
https://modules.prosody.im/mod_pubsub_hub)</flag>
+       <flag name='pubsub_hub'>This module implements a <a 
href="http://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.3.html";>PubSubHubbub</a>
 (PuSH) hub, allowing PuSH clients to subscribe to local XMPP <a 
href="http://xmpp.org/extensions/xep-0060.html";>Publish-Subscribe</a> nodes 
stored by <a href="http://prosody.im/doc/modules/mod_pubsub";>mod_pubsub</a> and 
receive real time updates to feeds. (info: 
https://modules.prosody.im/mod_pubsub_hub)</flag>
        <flag name='pubsub_mqtt'><a href="http://mqtt.org/";>MQTT</a> is a 
lightweight binary pubsub protocol suited to embedded devices. This module 
provides a way for MQTT clients to connect to Prosody and publish or subscribe 
to local pubsub nodes. (info: https://modules.prosody.im/mod_pubsub_mqtt)</flag>
        <flag name='pubsub_pivotaltracker'>No documentation yet :( (info: 
https://modules.prosody.im/mod_pubsub_pivotaltracker)</flag>
        <flag name='pubsub_post'>No documentation yet :( (info: 
https://modules.prosody.im/mod_pubsub_post)</flag>
        <flag name='pubsub_twitter'>Twitter has an open 'realtime' search API, 
but it requires polling (within their rate limits). This module allows Prosody 
to poll for you, and push new results to subscribers over XMPP. (info: 
https://modules.prosody.im/mod_pubsub_twitter)</flag>
        <flag name='query_client_ver'>No documentation yet :( (info: 
https://modules.prosody.im/mod_query_client_ver)</flag>
-       <flag name='rawdebug'>Sometimes it is useful to get the raw XML logs 
from clients for debugging purposes, but some clients don't expose this. This 
command lets you activate this on specific sessions. (info: 
https://modules.prosody.im/mod_rawdebug)</flag>
+       <flag name='rawdebug'>Sometimes it is useful to get the raw XML logs 
from clients for debugging purposes, but some clients don't expose this. (info: 
https://modules.prosody.im/mod_rawdebug)</flag>
        <flag name='readonly'>No documentation yet :( (info: 
https://modules.prosody.im/mod_readonly)</flag>
-       <flag name='register_dnsbl'>No documentation yet :( (info: 
https://modules.prosody.im/mod_register_dnsbl)</flag>
+       <flag name='register_dnsbl'>This module checks the IP address of newly 
registered users against a DNS block list. If a positive match is found, it 
gets logged. (info: https://modules.prosody.im/mod_register_dnsbl)</flag>
        <flag name='register_json'>This module let's you activate a httpserver 
interface to handle data from webforms with POST and Base64 encoded JSON. 
(info: https://modules.prosody.im/mod_register_json)</flag>
        <flag name='register_redirect'>Registration Redirect as explained in 
the <a href="http://xmpp.org/extensions/xep-0077.html#redirect";>IBR XEP</a>. 
(info: https://modules.prosody.im/mod_register_redirect)</flag>
        <flag name='register_web'>There are various reasons to prefer web 
registration instead of &quot;in-band&quot; account registration over XMPP. For 
example the lack of CAPTCHA support in clients and servers. (info: 
https://modules.prosody.im/mod_register_web)</flag>
+       <flag name='reload_components'>This module allows to load/unload 
external components after they have been added/removed to a configuration file. 
It is necessary to explicitly initiate a reload on Prosody either via 
prosodyctl reload or config:reload(). (info: 
https://modules.prosody.im/mod_reload_components)</flag>
        <flag name='reload_modules'>By default Prosody does not reload modules 
at runtime unless instructed to via one of its admin interfaces. However 
sometimes you want to easily reload a module to apply new settings when the 
config changes. (info: https://modules.prosody.im/mod_reload_modules)</flag>
        <flag name='remote_roster'>This module adds support for <a 
href="https://xmpp.org/extensions/xep-0321.html";>XEP-0321: Remote Roster 
Management</a> which is commonly used to allow components such as transports to 
modify the rosters of local users. (info: 
https://modules.prosody.im/mod_remote_roster)</flag>
        <flag name='require_otr'><a href="https://otr.cypherpunks.ca/";>OTR, 
&quot;Off The Record&quot;</a>, encryption allows clients to encrypt messages 
such that the server cannot read/modify them. (info: 
https://modules.prosody.im/mod_require_otr)</flag>
@@ -194,19 +210,22 @@
        <flag name='s2s_whitelist'>No documentation yet :( (info: 
https://modules.prosody.im/mod_s2s_whitelist)</flag>
        <flag name='s2soutinjection'>This module is similar to <a 
href="/mod_srvinjection.html">mod_srvinjection</a> but less of an hack. (info: 
https://modules.prosody.im/mod_s2soutinjection)</flag>
        <flag name='saslauth_muc'>No documentation yet :( (info: 
https://modules.prosody.im/mod_saslauth_muc)</flag>
-       <flag name='saslname'>This module implements <a 
href="http://xmpp.org/extensions/xep-0233.html";>XEP-0233: Domain-Based Service 
Names in XMPP SASL Negotiation</a>. (info: 
https://modules.prosody.im/mod_saslname)</flag>
-       <flag name='seclabels'>This module implements <a 
href="http://xmpp.org/extensions/xep-0258.htmla";>XEP-0258: Security Labels in 
XMPP</a>. (info: https://modules.prosody.im/mod_seclabels)</flag>
+       <flag name='saslname'>This module implements a manual method for 
advertsing the Kerberos principal name as per <a 
href="https://xmpp.org/extensions/xep-0233.html";>XEP-0233</a>. It could be used 
in conjection with a Kerberos authentication module. (info: 
https://modules.prosody.im/mod_saslname)</flag>
+       <flag name='seclabels'>This module implements <a 
href="https://xmpp.org/extensions/xep-0258.html";>XEP-0258: Security Labels in 
XMPP</a>, but not actual policy enforcement. See for example <a 
href="/mod_firewall.html">mod_firewall</a> for that. (info: 
https://modules.prosody.im/mod_seclabels)</flag>
        <flag name='secure_interfaces'>Sometimes you might run clients without 
encryption on the same machine or LAN as Prosody - and you want Prosody to 
treat them as secure (e.g. allowing plaintext authentication) even though they 
are not encrypted. (info: 
https://modules.prosody.im/mod_secure_interfaces)</flag>
-       <flag name='server_contact_info'>This module implements <a 
href="http://xmpp.org/extensions/xep-0157.html";>XEP-0157: Contact Addresses for 
XMPP Services</a>. (info: 
https://modules.prosody.im/mod_server_contact_info)</flag>
+       <flag name='server_contact_info'>This module lets you advertise various 
contact addresses for your XMPP service via <a 
href="https://xmpp.org/extensions/xep-0157.html";>XEP-0157</a>. (info: 
https://modules.prosody.im/mod_server_contact_info)</flag>
        <flag name='server_status'>This module fetches the current status of 
configured hosts and/or stanza statistics from <a 
href="http://code.google.com/p/prosody-modules/wiki/mod_stanza_counter#";>mod_stanza_counter</a>.
 And outputs it in either XML or JSON format. (info: 
https://modules.prosody.im/mod_server_status)</flag>
        <flag name='service_directories'>No documentation yet :( (info: 
https://modules.prosody.im/mod_service_directories)</flag>
        <flag name='sift'><a 
href="https://xmpp.org/extensions/xep-0273.html";>SIFT</a> is a technology to 
allow clients to filter incoming traffic on the server. This helps save 
bandwidth, etc. (info: https://modules.prosody.im/mod_sift)</flag>
        <flag name='smacks'>By default XMPP is as reliable as your network is. 
Unfortunately in some cases that is not very reliable - in some network 
conditions disconnects can be frequent and message loss can occur. (info: 
https://modules.prosody.im/mod_smacks)</flag>
+       <flag name='smacks_noerror'>By default mod_smacks sends back error 
stanzas for every unacked message stanza when the hibernation times out. This 
leads to &quot;message not delivered&quot; errors displayed in clients. (info: 
https://modules.prosody.im/mod_smacks_noerror)</flag>
        <flag name='smacks_offline'>No documentation yet :( (info: 
https://modules.prosody.im/mod_smacks_offline)</flag>
        <flag name='sms_clickatell'>This module provides and SMS gateway 
component which uses the Clickatell HTTP API to deliver text messages. See 
clickatell.com for details on their services. Note that at present, this is 
entirely one way: replies will either go nowhere or as sms to the source number 
you specify. (info: https://modules.prosody.im/mod_sms_clickatell)</flag>
+       <flag name='spam_reporting'>This module is a very basic implementation 
of <a href="https://xmpp.org/extensions/xep-0377.html";>XEP-0377: Spam 
Reporting</a>. (info: https://modules.prosody.im/mod_spam_reporting)</flag>
        <flag name='srvinjection'>This Prosody plugin lets you manually 
override SRV records used for a remote host. (info: 
https://modules.prosody.im/mod_srvinjection)</flag>
        <flag name='sslv3_warn'>No documentation yet :( (info: 
https://modules.prosody.im/mod_sslv3_warn)</flag>
        <flag name='stanza_counter'>This module counts incoming and outgoing 
stanzas from when the instance started, and makes the data available to other 
modules by creating a global prosody. object (info: 
https://modules.prosody.im/mod_stanza_counter)</flag>
+       <flag name='stanzadebug'>This module logs the full stanzas that are 
sent and received into debug logs, for debugging purposes. (info: 
https://modules.prosody.im/mod_stanzadebug)</flag>
        <flag name='statistics'>No documentation yet :( (info: 
https://modules.prosody.im/mod_statistics)</flag>
        <flag name='statistics_auth'>No documentation yet :( (info: 
https://modules.prosody.im/mod_statistics_auth)</flag>
        <flag name='statistics_cputotal'>No documentation yet :( (info: 
https://modules.prosody.im/mod_statistics_cputotal)</flag>
@@ -231,10 +250,10 @@
        <flag name='tcpproxy'>It happens occasionally that I would like to use 
the XMPP server as a generic proxy for connecting to another service. It is 
especially awkward in some environments, and impossible in (for example) 
Javascript inside a web browser. (info: 
https://modules.prosody.im/mod_tcpproxy)</flag>
        <flag name='telnet_tlsinfo'>This module adds two commands to the telnet 
console, <code>c2s:showtls()</code> and <code>s2s:showtls()</code>. These 
commands shows TLS parameters, such as ciphers and key agreement protocols, of 
all c2s or s2s connections. (info: 
https://modules.prosody.im/mod_telnet_tlsinfo)</flag>
        <flag name='throttle_presence'>For most people 'presence' (status 
changes) of contacts make up most of the traffic received by their client. 
However much of the time it is not essential to have highly accurate presence 
information. (info: https://modules.prosody.im/mod_throttle_presence)</flag>
-       <flag name='throttle_unsolicited'>This module limits the rate of 
outgoing unsolicited messages. A message counts as &quot;unsolicited&quot; if 
the receiving user hasn't added the sending user to their roster. (info: 
https://modules.prosody.im/mod_throttle_unsolicited)</flag>
+       <flag name='throttle_unsolicited'>This module limits the rate of 
outgoing unsolicited messages from local clients. Optionally, unsolicited 
messages coming in from remote servers may be limited per s2s conneciton. A 
message counts as &quot;unsolicited&quot; if the receiving user hasn't added 
the sending user to their roster. (info: 
https://modules.prosody.im/mod_throttle_unsolicited)</flag>
        <flag name='tls_policy'>This module arose from discussions at the XMPP 
Summit about enforcing better ciphers in TLS. It may seem attractive to 
disallow some insecure ciphers or require forward secrecy, but doing this at 
the TLS level would the user with an unhelpful &quot;Encryption failed&quot; 
message. This module does this enforcing at the application level, allowing 
better error messages. (info: https://modules.prosody.im/mod_tls_policy)</flag>
        <flag name='track_muc_joins'>This module attempts to keep track of what 
MUC chat rooms users have joined. It's not very useful on its own, but can be 
used by other modules to influence decisions. (info: 
https://modules.prosody.im/mod_track_muc_joins)</flag>
-       <flag name='turncredentials'>No documentation yet :( (info: 
https://modules.prosody.im/mod_turncredentials)</flag>
+       <flag name='turncredentials'><a 
href="https://xmpp.org/extensions/xep-0215.html";>XEP-0215</a> implementation 
for time-limited TURN credentials. (info: 
https://modules.prosody.im/mod_turncredentials)</flag>
        <flag name='twitter'>Twitter has simple API to use, so I tried to deal 
with it via Prosody. I didn't manage to finish this module, but it is nice 
example of component that accepts registrations, unregistrations, does HTTP 
polling and so on. Maybe someone will finnish this idea. (info: 
https://modules.prosody.im/mod_twitter)</flag>
        <flag name='uptime_presence'>This module simply responds to a presence 
probe sent to the server with a presence staza containing a timestamp from when 
the server started. (info: 
https://modules.prosody.im/mod_uptime_presence)</flag>
        <flag name='vjud'>Basic implementation of <a 
href="https://xmpp.org/extensions/xep-0055.html";>XEP-0055: Jabber Search</a>. 
(info: https://modules.prosody.im/mod_vjud)</flag>

diff --git a/net-im/prosody-modules/prosody-modules-9999.ebuild 
b/net-im/prosody-modules/prosody-modules-9999.ebuild
index 676002e..61105b6 100644
--- a/net-im/prosody-modules/prosody-modules-9999.ebuild
+++ b/net-im/prosody-modules/prosody-modules-9999.ebuild
@@ -17,7 +17,7 @@ IUSE="misc luajit"
 
 PROSODY_MODULES="
        addressing adhoc_account_management adhoc_blacklist admin_blocklist
-       admin_message admin_probe admin_web alias auth_any auth_ccert
+       admin_message admin_probe admin_web alias atom auth_any auth_ccert
        auth_custom_http auth_dovecot auth_external auth_ha1 auth_http_async
        auth_imap auth_internal_yubikey auth_joomla auth_ldap auth_ldap2
        auth_pam auth_phpbb3 auth_sql auth_wordpress auto_accept_subscriptions
@@ -27,39 +27,43 @@ PROSODY_MODULES="
        c2s_conn_throttle c2s_limit_sessions candy captcha_registration carbons
        carbons_adhoc carbons_copies checkcerts client_certs cloud_notify
        compact_resource compat_bind compat_dialback compat_muc_admin
-       compat_vcard component_client component_roundrobin
-       conformance_restricted couchdb csi csi_compat data_access
-       default_bookmarks default_vcard delegation disable_tls discoitems dwd
-       e2e_policy email_pass extdisco fallback_vcard filter_chatstates firewall
-       flash_policy graceful_shutdown group_bookmarks host_blacklist host_guard
-       host_status_check host_status_heartbeat http_altconnect http_dir_listing
-       http_favicon http_host_status_check http_index http_logging http_muc_log
-       http_roster_admin http_upload http_user_count idlecompat
-       incidents_handling inotify_reload invite ipcheck isolate_host jid_prep
-       json_streams lastlog latex lib_ldap limit_auth limits list_inactive
-       listusers log_auth log_events log_mark log_messages_sql log_rate
-       log_sasl_mech log_slow_events mam mam_adhoc mam_archive mam_muc mamsub
-       manifesto measure_cpu measure_memory message_logging migrate
-       motd_sequential muc_access_control muc_ban_ip muc_config_restrict
+       compat_vcard component_client component_roundrobin compression
+       conformance_restricted couchdb csi csi_battery_saver csi_compat csi_pump
+       data_access default_bookmarks default_vcard delay delegation disable_tls
+       discoitems dwd e2e_policy email_pass extdisco fallback_vcard
+       filter_chatstates filter_words firewall flash_policy graceful_shutdown
+       group_bookmarks host_blacklist host_guard host_status_check
+       host_status_heartbeat http_altconnect http_authentication
+       http_dir_listing http_favicon http_host_status_check http_hostaliases
+       http_index http_logging http_muc_log http_rest http_roster_admin
+       http_stats_stream http_upload http_upload_external http_user_count
+       idlecompat incidents_handling inotify_reload invite ipcheck isolate_host
+       jid_prep json_streams lastlog latex lib_ldap limit_auth limits
+       list_inactive listusers log_auth log_events log_mark log_messages_sql
+       log_rate log_sasl_mech log_slow_events mam mam_adhoc mam_archive mam_muc
+       mamsub manifesto measure_cpu measure_memory measure_message_length
+       measure_storage message_logging migrate motd_sequential
+       muc_access_control muc_ban_ip muc_block_pm muc_config_restrict
        muc_intercom muc_limits muc_log muc_log_http muc_restrict_rooms munin
        net_dovecotauth offline_email onhold onions openid password_policy
-       pastebin pep_vcard_avatar pep_vcard_png_avatar pinger poke_strangers
-       post_msg presence_cache presence_dedup privacy_lists private_adhoc
-       privilege proctitle profile proxy65_whitelist pubsub_eventsource
-       pubsub_feeds pubsub_github pubsub_hub pubsub_mqtt pubsub_pivotaltracker
-       pubsub_post pubsub_twitter query_client_ver rawdebug readonly
-       register_dnsbl register_json register_redirect register_web
-       reload_modules remote_roster require_otr roster_allinall roster_command
-       s2s_auth_compat s2s_auth_dane s2s_auth_fingerprint s2s_auth_monkeysphere
-       s2s_auth_samecert s2s_blacklist s2s_idle_timeout s2s_keepalive
-       s2s_keysize_policy s2s_log_certs s2s_never_encrypt_blacklist
-       s2s_reload_newcomponent s2s_whitelist s2soutinjection saslauth_muc
-       saslname seclabels secure_interfaces server_contact_info server_status
-       service_directories sift smacks smacks_offline sms_clickatell
-       srvinjection sslv3_warn stanza_counter statistics statistics_auth
-       statistics_cputotal statistics_mem statistics_statsd statsd
-       storage_appendmap storage_ejabberdsql_readonly storage_gdbm storage_ldap
-       storage_lmdb storage_memory storage_mongodb storage_muc_log
+       pastebin pep_vcard_avatar pep_vcard_png_avatar persisthosts pinger
+       poke_strangers post_msg presence_cache presence_dedup privacy_lists
+       private_adhoc privilege proctitle profile proxy65_whitelist
+       pubsub_eventsource pubsub_feeds pubsub_github pubsub_hub pubsub_mqtt
+       pubsub_pivotaltracker pubsub_post pubsub_twitter query_client_ver
+       rawdebug readonly register_dnsbl register_json register_redirect
+       register_web reload_components reload_modules remote_roster require_otr
+       roster_allinall roster_command s2s_auth_compat s2s_auth_dane
+       s2s_auth_fingerprint s2s_auth_monkeysphere s2s_auth_samecert
+       s2s_blacklist s2s_idle_timeout s2s_keepalive s2s_keysize_policy
+       s2s_log_certs s2s_never_encrypt_blacklist s2s_reload_newcomponent
+       s2s_whitelist s2soutinjection saslauth_muc saslname seclabels
+       secure_interfaces server_contact_info server_status service_directories
+       sift smacks smacks_noerror smacks_offline sms_clickatell spam_reporting
+       srvinjection sslv3_warn stanza_counter stanzadebug statistics
+       statistics_auth statistics_cputotal statistics_mem statistics_statsd
+       statsd storage_appendmap storage_ejabberdsql_readonly storage_gdbm
+       storage_ldap storage_lmdb storage_memory storage_mongodb storage_muc_log
        storage_muconference_readonly storage_multi storage_xmlarchive
        streamstats strict_https support_contact swedishchef tcpproxy
        telnet_tlsinfo throttle_presence throttle_unsolicited tls_policy

diff --git a/net-im/prosody/files/prosody.initd 
b/net-im/prosody/files/prosody.initd
index 43e6150..9887f98 100644
--- a/net-im/prosody/files/prosody.initd
+++ b/net-im/prosody/files/prosody.initd
@@ -30,13 +30,13 @@ start() {
        checkconfig || return 1
        ebegin "Starting Prosody XMPP Server"
        checkpath -q -d -m 0770 -o jabber:jabber /var/run/jabber
-       start-stop-daemon -S -u ${USER} -x ${COMMAND} -- start &>/dev/null
+       start-stop-daemon -S -u ${USER} -x ${COMMAND} -- start >/dev/null 2>&1
        eend $?
 }
 
 stop() {
        ebegin "Stopping Prosody XMPP Server"
-       start-stop-daemon -S -u ${USER} -x ${COMMAND} -- stop &>/dev/null
+       start-stop-daemon -S -u ${USER} -x ${COMMAND} -- stop >/dev/null 2>&1
        eend $?
 }
 

diff --git a/net-im/prosody/prosody-9999.ebuild 
b/net-im/prosody/prosody-9999.ebuild
index 1799682..adce109 100644
--- a/net-im/prosody/prosody-9999.ebuild
+++ b/net-im/prosody/prosody-9999.ebuild
@@ -12,12 +12,13 @@ EHG_REPO_URI="http://hg.prosody.im/trunk";
 LICENSE="MIT"
 SLOT="0"
 KEYWORDS=""
-IUSE="doc +libevent mysql postgres sqlite +ssl +zlib luajit ipv6 migration"
+IUSE="doc +libevent mysql postgres sqlite +ssl +zlib luajit ipv6 migration 
no-example-certs icu random-getrandom random-openssl"
 
 DEPEND="
        virtual/lua[luajit=,bit]
        net-im/jabber-base
-       >=net-dns/libidn-1.1
+       !icu? ( >=net-dns/libidn-1.1 )
+       icu? ( dev-libs/icu )
        || (
                >=dev-libs/openssl-0.9.8z
                >=dev-libs/openssl-1.0.1j
@@ -33,6 +34,10 @@ RDEPEND="
        dev-lua/luafilesystem
        mysql? ( >=dev-lua/luadbi-0.5[mysql] )
        postgres? ( >=dev-lua/luadbi-0.5[postgres] )
+       random-getrandom? (
+               >=sys-kernel/linux-headers-3.17
+               >=sys-libs/glibc-2.25
+       )
        sqlite? ( >=dev-lua/luadbi-0.5[sqlite] )
        libevent? ( dev-lua/luaevent )
        zlib? ( dev-lua/lua-zlib )
@@ -62,26 +67,51 @@ src_prepare() {
 
 src_configure() {
        local lua=lua;
+       local myconf=();
+
+       use no-example-certs && myconf+=("--no-example-certs")
+
+       use icu && myconf+=("--idn-library=icu")
+
+       use random-getrandom && {
+               ewarn "This build will not be supported by upstream"
+               ewarn "random-* flags is meant as last resort for containers 
without /dev/urandom"
+
+               myconf+=("--with-random=getrandom")
+       }
+
+       use random-openssl && {
+               ewarn "This build will not be supported by upstream"
+               ewarn "random-* flags is meant as last resort for containers 
without /dev/urandom"
+
+               myconf+=("--with-random=openssl")
+       }
 
        use luajit && {
-               myconf="--lua-suffix=jit"
+               myconf+=("--lua-suffix=jit")
                lua=luajit;
        }
 
        # the configure script is handcrafted (and yells at unknown options)
        # hence do not use 'econf'
-       ./configure --prefix="/usr" \
+
+       my_econf() {
+               echo "./configure ${@}"
+               ./configure "${@}"
+       }
+
+       my_econf --prefix="/usr" \
                --ostype=linux \
                --sysconfdir="${JABBER_ETC}" \
                --datadir="${JABBER_SPOOL}" \
-               --with-lua-lib=/usr/$(get_libdir) \
                --libdir=/usr/$(get_libdir) \
                --c-compiler="$(tc-getCC)" --linker="$(tc-getCC)" \
-               --cflags="${CFLAGS} -Wall -fPIC -D_GNU_SOURCE" \
+               --cflags="${CFLAGS} -Wall -fPIC -std=c99" \
                --ldflags="${LDFLAGS} -shared" \
                --runwith="${lua}" \
                --with-lua-include="$($(tc-getPKG_CONFIG) --variable includedir 
${lua})" \
-               --require-config "${myconf}" || die "configure failed"
+               --with-lua-lib="$($(tc-getPKG_CONFIG) --variable libdir 
${lua})" \
+               --require-config "${myconf[@]}" || die "configure failed"
 }
 
 src_compile() {

Reply via email to