summaryrefslogtreecommitdiffstats
path: root/pkgs/by-name/tc/tcptrack/package.nix
blob: c48e4c494b873f2342634ca1a17681f69fc5191e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
{
  lib,
  stdenv,
  fetchFromGitHub,
  fetchpatch,
  ncurses,
  libpcap,
}:

stdenv.mkDerivation (finalAttrs: {
  pname = "tcptrack";
  version = "1.4.3-unstable-2017-04-29";

  src = fetchFromGitHub {
    owner = "bchretien";
    repo = "tcptrack";
    rev = "2b096ac103af2884bbd7648cff8adcbadbda9394";
    sha256 = "0084g9s0ynv1az67j08q9nz4p07bqqz9k6w5lprzj3ljlh0x10gj";
  };

  patches = [
    # Fix pending upstream inclusion for ncurses-6.3 support:
    #  https://github.com/bchretien/tcptrack/pull/10
    (fetchpatch {
      name = "ncurses-6.3.patch";
      url = "https://github.com/bchretien/tcptrack/commit/409007afbce8ec5a81312a2a4123dd83b62b4494.patch";
      sha256 = "00641jyr52ksww5bbzvxlprmbb36jnvzg2w1aj1jgnm75jiajcfc";
    })
  ];

  buildInputs = [
    ncurses
    libpcap
  ];

  env.NIX_CFLAGS_COMPILE = "-Wno-error=cpp";

  meta = {
    inherit (finalAttrs.src.meta) homepage;
    description = "libpcap based program for live TCP connection monitoring";
    mainProgram = "tcptrack";
    license = lib.licenses.lgpl21;
    platforms = lib.platforms.linux;
    maintainers = [ lib.maintainers.bjornfor ];
  };
})