diff options
Diffstat (limited to 'pkgs/servers/xmpp/prosody/default.nix')
-rw-r--r-- | pkgs/servers/xmpp/prosody/default.nix | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix index 0d552e9e1121..05e276f0b989 100644 --- a/pkgs/servers/xmpp/prosody/default.nix +++ b/pkgs/servers/xmpp/prosody/default.nix @@ -1,5 +1,6 @@ -{ stdenv, fetchurl, libidn, openssl, makeWrapper, fetchhg +{ stdenv, fetchurl, lib, libidn, openssl, makeWrapper, fetchhg , lua5, luasocket, luasec, luaexpat, luafilesystem, luabitop +, nixosTests , withLibevent ? true, luaevent ? null , withDBI ? true, luadbi ? null # use withExtraLibs to add additional dependencies of community modules @@ -16,7 +17,16 @@ with stdenv.lib; stdenv.mkDerivation rec { version = "0.11.5"; # also update communityModules pname = "prosody"; - + # The following community modules are necessary for the nixos module + # prosody module to comply with XEP-0423 and provide a working + # default setup. + nixosModuleDeps = [ + "bookmarks" + "cloud_notify" + "vcard_muc" + "smacks" + "http_upload" + ]; src = fetchurl { url = "https://prosody.im/downloads/source/${pname}-${version}.tar.gz"; sha256 = "12s0hn6hvjbi61cdw3165l6iw0878971dmlvfg663byjsmjvvy2m"; @@ -52,7 +62,7 @@ stdenv.mkDerivation rec { postInstall = '' ${concatMapStringsSep "\n" (module: '' cp -r $communityModules/mod_${module} $out/lib/prosody/modules/ - '') (withCommunityModules ++ withOnlyInstalledCommunityModules)} + '') (lib.lists.unique(nixosModuleDeps ++ withCommunityModules ++ withOnlyInstalledCommunityModules))} wrapProgram $out/bin/prosody \ --prefix LUA_PATH ';' "$LUA_PATH" \ --prefix LUA_CPATH ';' "$LUA_CPATH" @@ -62,7 +72,13 @@ stdenv.mkDerivation rec { --prefix LUA_CPATH ';' "$LUA_CPATH" ''; - passthru.communityModules = withCommunityModules; + passthru = { + communityModules = withCommunityModules; + tests = { + main = nixosTests.prosody; + mysql = nixosTests.prosodyMysql; + }; + }; meta = { description = "Open-source XMPP application server written in Lua"; |