public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/lua:master commit in: net-im/prosody/files/, net-im/prosody/, net-im/prosody-modules/
@ 2017-03-18 20:45 Vadim A. Misbakh-Soloviov
  0 siblings, 0 replies; only message in thread
From: Vadim A. Misbakh-Soloviov @ 2017-03-18 20:45 UTC (permalink / raw
  To: gentoo-commits

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 you@example.com to be alerted to contact you at you@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() {


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2017-03-18 20:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-18 20:45 [gentoo-commits] proj/lua:master commit in: net-im/prosody/files/, net-im/prosody/, net-im/prosody-modules/ Vadim A. Misbakh-Soloviov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox