summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Laporte <Vincent.Laporte@gmail.com>2022-04-27 11:22:33 +0200
committerVincent Laporte <vbgl@users.noreply.github.com>2022-05-05 11:31:38 +0200
commit15b6c977048aa415f5eb77757d0752fa7ac29902 (patch)
treea97caa74580d05b7c2548abb00083332b8f5c465
parentMerge #171501: openssl_3_0: 3.0.2 -> 3.0.3 (into release-21.11) (diff)
downloadnixpkgs-15b6c977048aa415f5eb77757d0752fa7ac29902.tar.gz
easycrypt: init at 2022.04
(cherry picked from commit df6e6a8cc49980123f43ca4821befdc052fa0261)
-rw-r--r--pkgs/applications/science/logic/easycrypt/default.nix51
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 53 insertions, 0 deletions
diff --git a/pkgs/applications/science/logic/easycrypt/default.nix b/pkgs/applications/science/logic/easycrypt/default.nix
new file mode 100644
index 000000000000..1a8bd5eb9cef
--- /dev/null
+++ b/pkgs/applications/science/logic/easycrypt/default.nix
@@ -0,0 +1,51 @@
+{ lib, stdenv, fetchFromGitHub, ocamlPackages, why3 }:
+
+stdenv.mkDerivation rec {
+ pname = "easycrypt";
+ version = "2022.04";
+
+ src = fetchFromGitHub {
+ owner = pname;
+ repo = pname;
+ rev = "r${version}";
+ sha256 = "sha256:09rdwcj70lkamkhd895p284rfpz4bcnsf55mcimhiqncd2a21ml7";
+ };
+
+ nativeBuildInputs = with ocamlPackages; [
+ dune_2
+ findlib
+ menhir
+ ocaml
+ ];
+ buildInputs = with ocamlPackages; [
+ batteries
+ dune-build-info
+ inifiles
+ menhirLib
+ yojson
+ zarith
+ ];
+
+ propagatedBuildInputs = [ why3 ];
+
+ strictDeps = true;
+
+ postPatch = ''
+ substituteInPlace dune-project --replace '(name easycrypt)' '(name easycrypt)(version ${version})'
+ '';
+
+ installPhase = ''
+ runHook preInstall
+ dune install --prefix $out ${pname}
+ rm $out/bin/ec-runtest
+ runHook postInstall
+ '';
+
+ meta = {
+ license = lib.licenses.mit;
+ maintainers = [ lib.maintainers.vbgl ];
+ platforms = lib.platforms.all;
+ homepage = "https://easycrypt.info/";
+ description = "Computer-Aided Cryptographic Proofs";
+ };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8a36da40e044..0db681b26fe3 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2856,6 +2856,8 @@ with pkgs;
earlyoom = callPackage ../os-specific/linux/earlyoom { };
+ easycrypt = callPackage ../applications/science/logic/easycrypt { };
+
EBTKS = callPackage ../development/libraries/science/biology/EBTKS { };
ecasound = callPackage ../applications/audio/ecasound { };