xmpp.chapril.org-ejabberd/src/ejabberd.app.src.script

45 lines
1.2 KiB
Erlang

{Vars, ElixirApps} = case file:consult(filename:join([filename:dirname(SCRIPT), "..", "vars.config"])) of
{ok, Terms} ->
Backends = [mssql, mysql, odbc, pgsql, redis, sqlite],
EBs = lists:filter(fun(Backend) -> lists:member({Backend, true}, Terms) end, Backends),
Elixirs = case lists:keyfind(elixir, 1, Terms) of
{elixir, true} -> [elixir, iex, logger, mix];
_ -> []
end,
Tools = case lists:keyfind(tools, 1, Terms) of
{tools, true} -> [observer, runtime_tools]; % for `ejabberdctl etop`
_ -> []
end,
{[lists:keyfind(description, 1, Terms),
lists:keyfind(vsn, 1, Terms),
{env, [{enabled_backends, EBs}]}
], Elixirs ++ Tools};
_Err ->
{[], []}
end,
{application, ejabberd,
Vars ++
[{modules, []},
{registered, []},
{applications, [kernel, sasl, ssl, stdlib, syntax_tools]},
{included_applications,
[compiler, inets, mnesia, os_mon,
cache_tab,
eimp,
fast_tls,
fast_xml,
fast_yaml,
p1_acme,
p1_utils,
pkix,
stringprep,
yconf,
xmpp | ElixirApps]},
{mod, {ejabberd_app, []}}]}.
%% Local Variables:
%% mode: erlang
%% End:
%% vim: set filetype=erlang tabstop=8: