summary refs log tree commit diff
path: root/pkgs/development/libraries/libtoxcore/old-api/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/libtoxcore/old-api/default.nix')
-rw-r--r--pkgs/development/libraries/libtoxcore/old-api/default.nix63
1 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/development/libraries/libtoxcore/old-api/default.nix b/pkgs/development/libraries/libtoxcore/old-api/default.nix
new file mode 100644
index 00000000000..3ff2e1ad285
--- /dev/null
+++ b/pkgs/development/libraries/libtoxcore/old-api/default.nix
@@ -0,0 +1,63 @@
+{ stdenv, fetchFromGitHub, autoconf, libtool, automake, libsodium, ncurses, libopus
+, libvpx, check, libconfig, pkgconfig }:
+
+let
+  version = "4c220e336330213b151a0c20307d0a1fce04ac9e";
+  date = "20150126";
+in
+stdenv.mkDerivation rec {
+  name = "tox-core-${date}-${builtins.substring 0 7 version}";
+
+  src = fetchFromGitHub {
+    owner  = "irungentoo";
+    repo   = "toxcore";
+    rev    = version;
+    sha256 = "152yamak9ykl8dgkx1qzyrpa3f4xr1s8lgcb5k58r9lb1iwnhvqc";
+  };
+
+  NIX_LDFLAGS = "-lgcc_s";
+
+  postPatch = ''
+    # within Nix chroot builds, localhost is unresolvable
+    sed -i -e '/DEFTESTCASE(addr_resolv_localhost)/d' \
+      auto_tests/network_test.c
+    # takes WAAAY too long (~10 minutes) and would timeout
+    sed -i -e '/DEFTESTCASE[^(]*(many_clients\>/d' \
+      auto_tests/tox_test.c
+  '';
+
+  preConfigure = ''
+    autoreconf -i
+  '';
+
+  configureFlags = [
+    "--with-libsodium-headers=${libsodium}/include"
+    "--with-libsodium-libs=${libsodium}/lib"
+    "--enable-ntox"
+    "--enable-daemon"
+  ];
+
+  buildInputs = [
+    autoconf libtool automake libsodium ncurses
+    check libconfig pkgconfig
+  ] ++ stdenv.lib.optionals (!stdenv.isArm) [
+    libopus
+  ];
+
+  propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isArm) [ libvpx ];
+
+  # Some tests fail randomly due to timeout. This kind of problem is well known
+  # by upstream: https://github.com/irungentoo/toxcore/issues/{950,1054}
+  # They don't recommend running tests on 50core machines with other cpu-bound
+  # tests running in parallel.
+  #
+  # NOTE: run the tests locally on your machine before upgrading this package!
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "P2P FOSS instant messaging application aimed to replace Skype with crypto";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ viric jgeerds ];
+    platforms = platforms.all;
+  };
+}