1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 check,
6 cmake,
7 pkg-config,
8 libtoxcore,
9 filter-audio,
10 dbus,
11 libvpx,
12 libX11,
13 openal,
14 freetype,
15 libv4l,
16 libXrender,
17 fontconfig,
18 libXext,
19 libXft,
20 libsodium,
21 libopus,
22}:
23
24stdenv.mkDerivation rec {
25 pname = "utox";
26
27 version = "0.18.1";
28
29 src = fetchFromGitHub {
30 owner = "uTox";
31 repo = "uTox";
32 rev = "v${version}";
33 hash = "sha256-DxnolxUTn+CL6TbZHKLHOUMTHhtTSWufzzOTRpKjOwc=";
34 fetchSubmodules = true;
35 };
36
37 buildInputs = [
38 libtoxcore
39 dbus
40 libvpx
41 libX11
42 openal
43 freetype
44 libv4l
45 libXrender
46 fontconfig
47 libXext
48 libXft
49 filter-audio
50 libsodium
51 libopus
52 ];
53
54 nativeBuildInputs = [
55 cmake
56 pkg-config
57 ];
58
59 cmakeFlags = [
60 "-DENABLE_AUTOUPDATE=OFF"
61 "-DENABLE_TESTS=${if doCheck then "ON" else "OFF"}"
62 ];
63
64 doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
65 nativeCheckInputs = [ check ];
66
67 meta = with lib; {
68 description = "Lightweight Tox client";
69 mainProgram = "utox";
70 homepage = "https://github.com/uTox/uTox";
71 license = licenses.gpl3;
72 maintainers = [ ];
73 platforms = platforms.all;
74 };
75}