summaryrefslogtreecommitdiff
blob: cfd84e24a2816d948b24003ed960e9bfd1676d78 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: This ebuild is from Lua overlay; Bumped by mva; $

EAPI="5"

inherit eutils multilib mercurial

DESCRIPTION="Add-on modules for Prosody IM Server written in Lua."
HOMEPAGE="http://prosody-modules.googlecode.com/"
EHG_REPO_URI="https://prosody-modules.googlecode.com/hg/"

LICENSE="MIT"
SLOT="0"
KEYWORDS=""

IUSE="misc"

PROSODY_MODULES="
	addressing adhoc_account_management admin_probe admin_web
	auth_any auth_ccert auth_custom_http auth_dovecot auth_external
	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 auto_activate_hosts bidi blocking
	block_registrations block_s2s_subscriptions block_strangers
	block_subscribes block_subscriptions broadcast c2s_conn_throttle
	c2s_limit_sessions candy captcha_registration carbons
	carbons_adhoc carbons_copies checkcerts client_certs compat_bind
	compat_muc_admin compat_vcard component_client
	component_roundrobin conformance_restricted couchdb data_access
	default_bookmarks default_vcard discoitems dwd email_pass extdisco
	firewall flash_policy group_bookmarks host_blacklist host_guard
	http_altconnect http_dir_listing http_favicon http_user_count
	idlecompat incidents_handling inotify_reload ipcheck isolate_host
	jid_prep json_streams lastlog latex lib_ldap limits list_inactive
	listusers log_auth log_messages_sql log_sasl_mech mam mam_adhoc
	mam_muc mam_muc_sql mam_sql manifesto message_logging
	motd_sequential muc_ban_ip muc_config_restrict muc_intercom
	muc_limits muc_log muc_log_http net_dovecotauth offline_email
	onhold onions openid password_policy pastebin post_msg profile
	pubsub_eventsource pubsub_feeds pubsub_github pubsub_googlecode
	pubsub_hub pubsub_mqtt pubsub_pivotaltracker pubsub_twitter
	rawdebug readonly register_json register_redirect register_web
	reload_modules remote_roster require_otr roster_command
	s2s_auth_compat s2s_auth_dane s2s_auth_fingerprint
	s2s_auth_monkeysphere s2s_blacklist s2s_idle_timeout s2s_keepalive
	s2s_keysize_policy s2s_log_certs s2s_never_encrypt_blacklist
	s2soutinjection s2s_reload_newcomponent s2s_whitelist saslauth_muc
	saslname seclabels secure_interfaces server_contact_info
	server_status service_directories sift smacks sms_clickatell
	srvinjection stanza_counter statistics statistics_auth
	statistics_cputotal statistics_mem statsd storage_ldap
	storage_memory storage_mongodb streamstats strict_https
	support_contact swedishchef tcpproxy telnet_tlsinfo
	throttle_presence turncredentials twitter uptime_presence vjud
	watchuntrusted webpresence websocket
"


for x in ${PROSODY_MODULES}; do
	IUSE="${IUSE} ${x//[^+]/}prosody_modules_${x/+}"
done


DEPEND="=net-im/prosody-${PV}"
RDEPEND="
	${DEPEND}
	prosody_modules_inotify_reload? (
		dev-lua/linotify
	)
	prosody_modules_auth_joomla? (
		dev-lua/luadbi
	)
	prosody_modules_lib_ldap? (
		dev-lua/lualdap
	)
	prosody_modules_client_certs? (
		dev-lua/luasec
	)
	prosody_modules_listusers? (
		dev-lua/luasocket
		dev-lua/luafilesystem
	)
	prosody_modules_pubsub_pivotaltracker? (
		dev-lua/luaexpat
	)
	prosody_modules_auth_phpbb3? (
		dev-lua/luadbi
	)
	prosody_modules_log_messages_sql? (
		dev-lua/luadbi
	)
	prosody_modules_message_logging? (
		dev-lua/luafilesystem
	)
	prosody_modules_onions? (
		|| (
			>=dev-lang/lua-5.2
			dev-lang/luajit:2
			dev-lua/LuaBitOp
		)
	)
	prosody_modules_couchdb? (
		dev-lua/luasocket
	)
	prosody_modules_auth_custom_http? (
		dev-lua/luasocket
	)
	prosody_modules_mam_muc_sql? (
		dev-lua/luasocket
		dev-lua/luadbi
	)
	prosody_modules_checkcerts? (
		dev-lua/luasec
	)
	prosody_modules_auth_internal_yubikey? (
		|| (
			>=dev-lang/lua-5.2
			dev-lang/luajit:2
			dev-lua/LuaBitOp
		)
		dev-lua/yubikey-lua
	)
	prosody_modules_websocket? (
		|| (
			>=dev-lang/lua-5.2
			dev-lang/luajit:2
			dev-lua/LuaBitOp
		)
	)
	prosody_modules_auth_dovecot? (
		dev-lua/luasocket
	)
	prosody_modules_storage_ldap? (
		dev-lua/luasocket
	)
	prosody_modules_statistics? (
		dev-lua/luaposix[ncurses]
	)
	prosody_modules_http_dir_listing? (
		dev-lua/luasocket
		dev-lua/luafilesystem
	)
	prosody_modules_mam_sql? (
		dev-lua/luasocket
		dev-lua/luadbi
	)
	prosody_modules_storage_mongodb? (
		dev-lua/luamongo
	)
	prosody_modules_offline_email? (
		dev-lua/luasocket
	)
	prosody_modules_auth_wordpress? (
		dev-lua/luadbi
	)
	prosody_modules_muc_log_http? (
		dev-lua/luafilesystem
		dev-lua/luaexpat
	)
	prosody_modules_component_client? (
		dev-lua/luasocket
	)
	prosody_modules_auth_external? (
		dev-lua/lpc
	)
	prosody_modules_auth_sql? (
		dev-lua/luadbi
	)
"

REQUIRED_USE="
	prosody_modules_auth_ldap? ( prosody_modules_lib_ldap )
	prosody_modules_auth_ldap2? ( prosody_modules_lib_ldap )
"

src_install() {
	cd "${S}";
	for m in ${PROSODY_MODULES}; do
		if use prosody_modules_${m}; then
			insinto /usr/lib/prosody/modules;
			doins -r "mod_${m}"
		fi
	done
	use misc && (
		insinto /usr/lib/prosody/modules
		doins -r misc
	)
}