diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libtoxcore')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libtoxcore/default.nix | 54 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libtoxcore/new-api.nix | 56 |
2 files changed, 110 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix b/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix new file mode 100644 index 000000000000..026674e44fc4 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libtoxcore/default.nix @@ -0,0 +1,54 @@ +{ stdenv, fetchFromGitHub, cmake, libsodium, ncurses, libopus, msgpack +, libvpx, check, libconfig, pkgconfig }: + +let + generic = { version, sha256 }: + stdenv.mkDerivation rec { + name = "libtoxcore-${version}"; + + src = fetchFromGitHub { + owner = "TokTok"; + repo = "c-toxcore"; + rev = "v${version}"; + inherit sha256; + }; + + cmakeFlags = [ + "-DBUILD_NTOX=ON" + "-DDHT_BOOTSTRAP=ON" + "-DBOOTSTRAP_DAEMON=ON" + ]; + + buildInputs = [ + libsodium msgpack ncurses libconfig + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ + libopus libvpx + ]; + + nativeBuildInputs = [ cmake pkgconfig ]; + + enableParallelBuilding = true; + + doCheck = false; # hangs, tries to access the net? + checkInputs = [ check ]; + + meta = with stdenv.lib; { + description = "P2P FOSS instant messaging application aimed to replace Skype"; + homepage = https://tox.chat; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ peterhoeg ]; + platforms = platforms.all; + }; + }; + +in rec { + libtoxcore_0_1 = generic { + version = "0.1.11"; + sha256 = "1fya5gfiwlpk6fxhalv95n945ymvp2iidiyksrjw1xw95fzsp1ij"; + }; + + libtoxcore_0_2 = generic { + version = "0.2.8"; + sha256 = "0xgnraysz25fbws5zwjk92mwnl8k1yih701qam8kgm3rxh50kyhm"; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/libtoxcore/new-api.nix b/nixpkgs/pkgs/development/libraries/libtoxcore/new-api.nix new file mode 100644 index 000000000000..401d9c7d8a2e --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libtoxcore/new-api.nix @@ -0,0 +1,56 @@ +{ stdenv, fetchFromGitHub, autoreconfHook, libsodium, ncurses, libopus +, libvpx, check, libconfig, pkgconfig }: + +stdenv.mkDerivation rec { + name = "tox-core-new-20160727"; + + src = fetchFromGitHub { + owner = "irungentoo"; + repo = "toxcore"; + rev = "755f084e8720b349026c85afbad58954cb7ff1d4"; + sha256 = "0ap1gvlyihnfivv235dbrgsxsiiz70bhlmlr5gn1027w3h5kqz8w"; + }; + + 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 + ''; + + configureFlags = [ + "--with-libsodium-headers=${libsodium.dev}/include" + "--with-libsodium-libs=${libsodium.out}/lib" + "--enable-ntox" + "--enable-daemon" + ]; + + + nativeBuildInputs = [ autoreconfHook pkgconfig ]; + buildInputs = [ + autoreconfHook libsodium ncurses check libconfig + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ + libopus + ]; + + propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isAarch32) [ 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; [ jgeerds ]; + platforms = platforms.all; + }; +} |