summary refs log tree commit diff
path: root/pkgs/servers/xmpp
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/xmpp')
-rw-r--r--pkgs/servers/xmpp/biboumi/default.nix36
-rw-r--r--pkgs/servers/xmpp/ejabberd/default.nix38
-rw-r--r--pkgs/servers/xmpp/openfire/default.nix6
-rw-r--r--pkgs/servers/xmpp/prosody/default.nix21
-rw-r--r--pkgs/servers/xmpp/pyIRCt/default.nix41
-rw-r--r--pkgs/servers/xmpp/pyMAILt/default.nix39
6 files changed, 49 insertions, 132 deletions
diff --git a/pkgs/servers/xmpp/biboumi/default.nix b/pkgs/servers/xmpp/biboumi/default.nix
index e1cec51e4ab..50d2cfa964e 100644
--- a/pkgs/servers/xmpp/biboumi/default.nix
+++ b/pkgs/servers/xmpp/biboumi/default.nix
@@ -1,39 +1,37 @@
-{ stdenv, fetchurl, fetchgit, cmake, libuuid, expat, sqlite, libidn,
-  libiconv, botan2, systemd, pkgconfig, udns, pandoc, coreutils } :
+{ lib, stdenv, fetchurl, fetchgit, cmake, libuuid, expat, sqlite, libidn
+, libiconv, botan2, systemd, pkg-config, udns, python3Packages } :
 
+let
+  louiz_catch = fetchgit {
+    url = "https://lab.louiz.org/louiz/Catch.git";
+    rev = "0a34cc201ef28bf25c88b0062f331369596cb7b7"; # v2.2.1
+    sha256 = "0ad0sjhmzx61a763d2ali4vkj8aa1sbknnldks7xlf4gy83jfrbl";
+  };
+in
 stdenv.mkDerivation rec {
   pname = "biboumi";
-  version = "8.3";
+  version = "9.0";
 
   src = fetchurl {
     url = "https://git.louiz.org/biboumi/snapshot/biboumi-${version}.tar.xz";
-    sha256 = "0896f52nh8vd0idkdznv3gj6wqh1nqhjbwv0m560f0h62f01vm7k";
-  };
-
-  louiz_catch = fetchgit {
-    url = "https://lab.louiz.org/louiz/Catch.git";
-    rev = "0a34cc201ef28bf25c88b0062f331369596cb7b7"; # v2.2.1
-    sha256 = "0ad0sjhmzx61a763d2ali4vkj8aa1sbknnldks7xlf4gy83jfrbl";
+    sha256 = "1jvygri165aknmvlinx3jb8cclny6cxdykjf8dp0a3l3228rmzqy";
   };
 
   patches = [ ./catch.patch ];
 
-  nativeBuildInputs = [ cmake pkgconfig pandoc ];
-  buildInputs = [ libuuid expat sqlite libiconv libidn botan2 systemd
-    udns ];
+  nativeBuildInputs = [ cmake pkg-config python3Packages.sphinx ];
+  buildInputs = [ libuuid expat sqlite libiconv libidn botan2 systemd udns ];
+
+  buildFlags = [ "all" "man" ];
 
   preConfigure = ''
     substituteInPlace CMakeLists.txt --replace /etc/biboumi $out/etc/biboumi
-    substituteInPlace unit/biboumi.service.cmake --replace /bin/kill ${coreutils}/bin/kill
-    cp $louiz_catch/single_include/catch.hpp tests/
-    # echo "policy_directory=$out/etc/biboumi" >> conf/biboumi.cfg
-    # TODO include conf/biboumi.cfg as example somewhere
+    cp ${louiz_catch}/single_include/catch.hpp tests/
   '';
 
-  enableParallelBuilding = true;
   doCheck = true;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Modern XMPP IRC gateway";
     platforms = platforms.unix;
     homepage = "https://lab.louiz.org/louiz/biboumi";
diff --git a/pkgs/servers/xmpp/ejabberd/default.nix b/pkgs/servers/xmpp/ejabberd/default.nix
index 2cf4d9465ae..bec59404103 100644
--- a/pkgs/servers/xmpp/ejabberd/default.nix
+++ b/pkgs/servers/xmpp/ejabberd/default.nix
@@ -1,13 +1,11 @@
 { stdenv, writeScriptBin, makeWrapper, lib, fetchurl, git, cacert, libpng, libjpeg, libwebp
-, erlang, openssl, expat, libyaml, bash, gnused, gnugrep, coreutils, utillinux, procps, gd
+, erlang, openssl, expat, libyaml, bash, gnused, gnugrep, coreutils, util-linux, procps, gd
 , flock
 , withMysql ? false
 , withPgsql ? false
 , withSqlite ? false, sqlite
 , withPam ? false, pam
 , withZlib ? true, zlib
-, withRiak ? false
-, withElixir ? false, elixir
 , withIconv ? true
 , withTools ? false
 , withRedis ? false
@@ -21,28 +19,24 @@ let
     fi
   '';
 
-  ctlpath = lib.makeBinPath [ bash gnused gnugrep coreutils utillinux procps ];
+  ctlpath = lib.makeBinPath [ bash gnused gnugrep coreutils util-linux procps ];
 
 in stdenv.mkDerivation rec {
-  version = "20.03";
+  version = "21.04";
   pname = "ejabberd";
 
   src = fetchurl {
     url = "https://www.process-one.net/downloads/downloads-action.php?file=/${version}/${pname}-${version}.tgz";
-    sha256 = "0i013l9cygmgainfid298n6llhs3mblfklry3jw2a6irvhffym0s";
+    sha256 = "09s8mj0dkvp9mxazsqxqqmnl5n2xyi8avx0rzgvqrbl3byanzfzr";
   };
 
-  nativeBuildInputs = [ fakegit ];
+  nativeBuildInputs = [ fakegit makeWrapper ];
 
-  buildInputs = [ erlang openssl expat libyaml gd makeWrapper ]
+  buildInputs = [ erlang openssl expat libyaml gd ]
     ++ lib.optional withSqlite sqlite
     ++ lib.optional withPam pam
     ++ lib.optional withZlib zlib
-    ++ lib.optional withElixir elixir
-    ;
-
-  # Apparently needed for Elixir
-  LANG = "en_US.UTF-8";
+  ;
 
   deps = stdenv.mkDerivation {
     pname = "ejabberd-deps";
@@ -52,14 +46,12 @@ in stdenv.mkDerivation rec {
 
     configureFlags = [ "--enable-all" "--with-sqlite3=${sqlite.dev}" ];
 
-    nativeBuildInputs = [ git erlang openssl expat libyaml sqlite pam zlib elixir ];
+    nativeBuildInputs = [ git erlang openssl expat libyaml sqlite pam zlib ];
 
     GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
 
     makeFlags = [ "deps" ];
 
-    phases = [ "unpackPhase" "configurePhase" "buildPhase" "installPhase" ];
-
     installPhase = ''
       for i in deps/*; do
         ( cd $i
@@ -76,7 +68,7 @@ in stdenv.mkDerivation rec {
 
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash = "0xwgi9hy6y0m8mwznl6px98kdmkcxg98k62zgqbaqd4paks5zwqa";
+    outputHash = "1mvixgb46ss35abjwz3lw38c69bii1xyj557a92bvrxc1gc6gx31";
   };
 
   configureFlags =
@@ -85,8 +77,6 @@ in stdenv.mkDerivation rec {
       (lib.enableFeature withSqlite "sqlite")
       (lib.enableFeature withPam "pam")
       (lib.enableFeature withZlib "zlib")
-      (lib.enableFeature withRiak "riak")
-      (lib.enableFeature withElixir "elixir")
       (lib.enableFeature withIconv "iconv")
       (lib.enableFeature withTools "tools")
       (lib.enableFeature withRedis "redis")
@@ -97,7 +87,7 @@ in stdenv.mkDerivation rec {
   preBuild = ''
     cp -r $deps deps
     chmod -R +w deps
-    patchShebangs deps
+    patchShebangs .
   '';
 
   postInstall = ''
@@ -107,15 +97,15 @@ in stdenv.mkDerivation rec {
       -e 's,\(^ *JOT=\).*,\1,' \
       -e 's,\(^ *CONNLOCKDIR=\).*,\1/var/lock/ejabberdctl,' \
       $out/sbin/ejabberdctl
-    wrapProgram $out/lib/eimp-*/priv/bin/eimp --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ libpng libjpeg libwebp ]}"
+    wrapProgram $out/lib/eimp-*/priv/bin/eimp --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libpng libjpeg libwebp ]}"
+    rm $out/bin/{mix,iex,elixir}
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Open-source XMPP application server written in Erlang";
     license = licenses.gpl2;
     homepage = "https://www.ejabberd.im";
     platforms = platforms.linux;
-    maintainers = with maintainers; [ sander abbradar ajs124 ];
-    broken = withElixir;
+    maintainers = with maintainers; [ sander abbradar ];
   };
 }
diff --git a/pkgs/servers/xmpp/openfire/default.nix b/pkgs/servers/xmpp/openfire/default.nix
index ab377e3d53b..a655f1c348f 100644
--- a/pkgs/servers/xmpp/openfire/default.nix
+++ b/pkgs/servers/xmpp/openfire/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, jre }:
+{ lib, stdenv, fetchurl, jre }:
 
 stdenv.mkDerivation rec {
   pname = "openfire";
@@ -18,11 +18,11 @@ stdenv.mkDerivation rec {
     mv $out/conf $out/conf.inst
     ln -s /var/log/openfire $out/logs
     ln -s /etc/openfire $out/conf
-  ''; 
+  '';
 
   meta = {
     description = "XMPP server in Java";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = lib.platforms.unix;
     # Some security advisories seem to apply, and each next version wants to
     # write into larger parts of installation directory; installation is just
     # unpacking, though
diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix
index 0a0cc9aeaf9..190f396009a 100644
--- a/pkgs/servers/xmpp/prosody/default.nix
+++ b/pkgs/servers/xmpp/prosody/default.nix
@@ -11,11 +11,11 @@
 assert withLibevent -> luaevent != null;
 assert withDBI -> luadbi != null;
 
-with stdenv.lib;
+with lib;
 
 
 stdenv.mkDerivation rec {
-  version = "0.11.5"; # also update communityModules
+  version = "0.11.9"; # 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
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   ];
   src = fetchurl {
     url = "https://prosody.im/downloads/source/${pname}-${version}.tar.gz";
-    sha256 = "12s0hn6hvjbi61cdw3165l6iw0878971dmlvfg663byjsmjvvy2m";
+    sha256 = "02gzvsaq0l5lx608sfh7hfz14s6yfsr4sr4kzcsqd1cxljp35h6c";
   };
 
   # A note to all those merging automated updates: Please also update this
@@ -37,8 +37,8 @@ stdenv.mkDerivation rec {
   # version.
   communityModules = fetchhg {
     url = "https://hg.prosody.im/prosody-modules";
-    rev = "2dcbc01c9931";
-    sha256 = "0ydhbvfp7vk5zqpsc54ihxz6y2gmzh0bcgyz0xidlxrmxzwcvvyh";
+    rev = "c149edb37349";
+    sha256 = "1njw17k0nhf15hc20l28v0xzcc7jha85lqy3j97nspv9zdxmshk1";
   };
 
   buildInputs = [
@@ -59,6 +59,10 @@ stdenv.mkDerivation rec {
     "--with-lua=${lua5}"
   ];
 
+  postBuild = ''
+    make -C tools/migration
+  '';
+
   postInstall = ''
       ${concatMapStringsSep "\n" (module: ''
         cp -r $communityModules/mod_${module} $out/lib/prosody/modules/
@@ -70,6 +74,11 @@ stdenv.mkDerivation rec {
         --add-flags '--config "/etc/prosody/prosody.cfg.lua"' \
         --prefix LUA_PATH ';' "$LUA_PATH" \
         --prefix LUA_CPATH ';' "$LUA_CPATH"
+
+      make -C tools/migration install
+      wrapProgram $out/bin/prosody-migrator \
+        --prefix LUA_PATH ';' "$LUA_PATH" \
+        --prefix LUA_CPATH ';' "$LUA_CPATH"
     '';
 
   passthru = {
@@ -85,6 +94,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     homepage = "https://prosody.im";
     platforms = platforms.linux;
-    maintainers = with maintainers; [ fpletz globin ];
+    maintainers = with maintainers; [ fpletz globin ninjatrappeur ];
   };
 }
diff --git a/pkgs/servers/xmpp/pyIRCt/default.nix b/pkgs/servers/xmpp/pyIRCt/default.nix
deleted file mode 100644
index 7db8ec3b604..00000000000
--- a/pkgs/servers/xmpp/pyIRCt/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ stdenv, fetchurl, xmpppy, pythonIRClib, python, pythonPackages, runtimeShell } :
-
-stdenv.mkDerivation rec {
-  pname = "pyIRCt";
-  version = "0.4";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/xmpppy/irc-transport-${version}.tar.gz";
-    sha256 = "0gbc0dvj1p3088b6x315yjrlwnc5vvzp0var36wlf9z60ghvk8yb";
-  };
-
-  buildInputs = [ pythonPackages.wrapPython ];
-
-  pythonPath = [
-    xmpppy pythonIRClib
-  ];
-
-  # phaseNames = ["deploy" (a.makeManyWrappers "$out/share/${name}/irc.py" a.pythonWrapperArguments)];
-
-  installPhase = ''
-    mkdir -p $out/bin $out/share/${pname}-${version}
-    sed -e 's@/usr/bin/@${python}/bin/@' -i irc.py
-    sed -e '/configFiles/aconfigFiles += [os.getenv("HOME")+"/.pyIRCt.xml"]' -i config.py
-    sed -e '/configFiles/aconfigFiles += [os.getenv("HOME")+"/.python-irc-transport.xml"]' -i config.py
-    sed -e '/configFiles/iimport os' -i config.py
-    cp * $out/share/${pname}-${version}
-    cat > $out/bin/pyIRCt <<EOF
-      #!${runtimeShell}
-      cd $out/share/${pname}-${version}
-      ./irc.py \"$@\"
-    EOF
-    chmod a+rx  $out/bin/pyIRCt $out/share/${pname}-${version}/irc.py
-    wrapPythonPrograms
-  '';
-
-  meta = with stdenv.lib; {
-    description = "IRC transport module for XMPP";
-    platforms = platforms.unix;
-    license = licenses.gpl2;
-  };
-}
diff --git a/pkgs/servers/xmpp/pyMAILt/default.nix b/pkgs/servers/xmpp/pyMAILt/default.nix
deleted file mode 100644
index 0c85f322f48..00000000000
--- a/pkgs/servers/xmpp/pyMAILt/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ stdenv, python, xmpppy, pythonPackages, fetchcvs, runtimeShell } :
-
-stdenv.mkDerivation rec {
-  pname = "pyMAILt";
-  version = "20090101";
-
-  src = fetchcvs {
-		cvsRoot = ":pserver:anonymous@xmpppy.cvs.sourceforge.net:/cvsroot/xmpppy";
-		module = "xmpppy/mail-transport";
-		date = "2009-01-01";
-		sha256 = "15301252e52b4ccb2156baefed8982a2a0cce3ae8eae3caf3cc28dfa615c8d6e";
-	};
-
-  pythonPath = [ xmpppy ];
-  buildInputs = [ pythonPackages.wrapPython ];
-
-  installPhase = ''
-    cd mail-transport
-    mkdir -p $out/bin $out/share/${pname}-${version}
-    sed -e 's@/usr/bin/@${python}/bin/@' -i mail.py
-    sed -e '/configFiles/aconfigFiles += [os.getenv("HOME")+"/.pyMAILt.xml"]' -i config.py
-    sed -e '/configFiles/aconfigFiles += [os.getenv("HOME")+"/.python-mail-transport.xml"]' -i config.py
-    sed -e '/configFiles/iimport os' -i config.py
-    cp * $out/share/$name
-    cat > $out/bin/pyMAILt <<EOF
-      #!${runtimeShell}
-      cd $out/share/${pname}-${version}
-      ./mail.py \"$@\"
-    EOF
-    chmod a+rx  $out/bin/pyMAILt $out/share/${pname}-${version}/mail.py
-    wrapPythonPrograms
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Email transport module for XMPP";
-    platforms = platforms.unix;
-    license = licenses.gpl2;
-  };
-}