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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
{
lib,
stdenv,
fetchFromGitHub,
cmake,
libdaq,
libdnet,
flex,
hwloc,
luajit,
openssl,
libpcap,
pcre2,
pkg-config,
zlib,
xz,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "snort";
version = "3.7.2.0";
src = fetchFromGitHub {
owner = "snort3";
repo = "snort3";
tag = finalAttrs.version;
hash = "sha256-/ObL48Wo8OPFljBxQP5X/ASvGPcdvPKueosjJm1BRTI=";
};
nativeBuildInputs = [
libdaq
pkg-config
cmake
];
buildInputs = [
libdaq
libpcap
stdenv.cc.cc # libstdc++
libdnet
flex
hwloc
luajit
openssl
libpcap
pcre2
zlib
xz
];
# Patch that is tracking upstream PR https://github.com/snort3/snort3/pull/399
patches = [ ./0001-cmake-fix-pkg-config-path-for-libdir.patch ];
enableParallelBuilding = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Network intrusion prevention and detection system (IDS/IPS)";
homepage = "https://www.snort.org";
maintainers = with lib.maintainers; [
aycanirican
brianmcgillion
];
changelog = "https://github.com/snort3/snort3/releases/tag/${finalAttrs.version}/CHANGELOG.md";
license = lib.licenses.gpl2;
platforms = with lib.platforms; linux;
};
})
|