From d86c2c30c52fd3bcf971b9d3e370823135a2c8b7 Mon Sep 17 00:00:00 2001 From: Markus Kohlhase Date: Tue, 2 Sep 2014 17:08:56 +0200 Subject: prosody: packaged as a service Conflicts: nixos/modules/misc/ids.nix --- pkgs/servers/xmpp/prosody/default.nix | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 pkgs/servers/xmpp/prosody/default.nix (limited to 'pkgs/servers/xmpp/prosody/default.nix') diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix new file mode 100644 index 0000000000000..4bd1b594c268f --- /dev/null +++ b/pkgs/servers/xmpp/prosody/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchurl, lua5, luasocket, luasec, luaexpat, luafilesystem, libidn, openssl, makeWrapper }: + +let + libs = [ luasocket luasec luaexpat luafilesystem ]; + getPath = lib : type : "${lib}/lib/lua/${lua5.luaversion}/?.${type};${lib}/share/lua/${lua5.luaversion}/?.${type}"; + getLuaPath = lib : getPath lib "lua"; + getLuaCPath = lib : getPath lib "so"; + luaPath = stdenv.lib.concatStringsSep ";" (map getLuaPath libs); + luaCPath = stdenv.lib.concatStringsSep ";" (map getLuaCPath libs); +in + +stdenv.mkDerivation rec { + version = "0.9.4"; + name = "prosody-${version}"; + src = fetchurl { + url = "http://prosody.im/downloads/source/${name}.tar.gz"; + sha256 = "be87cf31901a25477869b4ebd52e298f63a5effacae526911a0be876cc82e1c6"; + }; + + buildInputs = [ lua5 luasocket luasec luaexpat libidn openssl makeWrapper ]; + + configureFlags = [ + "--ostype=linux" + "--with-lua-include=${lua5}/include" + "--with-lua=${lua5}" + ]; + + postInstall = '' + wrapProgram $out/bin/prosody \ + --set LUA_PATH '"${luaPath};"' \ + --set LUA_CPATH '"${luaCPath};"' + wrapProgram $out/bin/prosodyctl \ + --add-flags '--config "/etc/prosody/prosody.cfg.lua"' \ + --set LUA_PATH '"${luaPath};"' \ + --set LUA_CPATH '"${luaCPath};"' + ''; + + meta = { + description = "Open-source XMPP application server written in Lua"; + license = stdenv.lib.licenses.mit; + homepage = http://www.prosody.im; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.flosse ]; + }; +} -- cgit 1.4.1