blob: 8aabfaba479872bb4b275c16fbc93e7f1aef5040 (
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
|
{
lib,
stdenv,
fetchurl,
ocaml-ng,
}:
let
ocaml = ocaml-ng.ocamlPackages_4_14_unsafe_string.ocaml;
in
stdenv.mkDerivation (finalAttrs: {
pname = "statverif";
version = "1.86pl4";
src = fetchurl {
url = "http://prosecco.gforge.inria.fr/personal/bblanche/proverif/proverif${finalAttrs.version}.tar.gz";
sha256 = "163vdcixs764jj8xa08w80qm4kcijf7xj911yp8jvz6pi1q5g13i";
};
pf-patch = fetchurl {
url = "http://markryan.eu/research/statverif/files/proverif-${finalAttrs.version}-statverif-2657ab4.patch";
sha256 = "113jjhi1qkcggbsmbw8fa9ln8vs7vy2r288szks7rn0jjn0wxmbw";
};
strictDeps = true;
nativeBuildInputs = [ ocaml ];
patchPhase = "patch -p1 < ${finalAttrs.pf-patch}";
buildPhase = "./build";
installPhase = ''
mkdir -p $out/bin
cp ./proverif $out/bin/statverif
cp ./proveriftotex $out/bin/statveriftotex
'';
meta = {
description = "Verification of stateful processes (via Proverif)";
homepage = "https://markryan.eu/research/statverif/";
license = lib.licenses.gpl2;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.thoughtpolice ];
};
})
|