Skip to content

Commit

Permalink
abella-master: init at 0-unstable-2024-11-27
Browse files Browse the repository at this point in the history
  • Loading branch information
cu1ch3n committed Nov 28, 2024
1 parent fd3c5e7 commit 82a23ce
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 0 deletions.
3 changes: 3 additions & 0 deletions default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
modules = import ./modules; # NixOS modules
overlays = import ./overlays; # nixpkgs overlays

abella-master = pkgs.callPackage ./pkgs/abella-master {
ocamlPackages = pkgs.ocaml-ng.ocamlPackages_4_12;
};
abella-modded = pkgs.callPackage ./pkgs/abella-modded {
ocamlPackages = pkgs.ocaml-ng.ocamlPackages_4_12;
};
Expand Down
44 changes: 44 additions & 0 deletions pkgs/abella-master/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{ lib, stdenv, fetchFromGitHub, rsync, ocamlPackages, nodejs }:

stdenv.mkDerivation (finalAttrs: {
pname = "abella-master";
version = "0-unstable-2024-11-27";

src = fetchFromGitHub {
owner = "abella-prover";
repo = "abella";
rev = "f97da8c9ea10cf2123696a1595e3e0f84b795a14";
sha256 = "sha256-PmIyKk0lLes/JVQ8XHchKEkx3qkGv8Ssn+AEAMba70E=";
};

strictDeps = true;

nativeBuildInputs = [ nodejs rsync ] ++ (with ocamlPackages; [ ocaml dune_3 menhir findlib ]);
buildInputs = with ocamlPackages; [ cmdliner yojson ];

installPhase = ''
mkdir -p $out/bin
rsync -av _build/default/src/abella.exe $out/bin/abella
mkdir -p $out/share/emacs/site-lisp/abella/
rsync -av emacs/ $out/share/emacs/site-lisp/abella/
mkdir -p $out/share/abella/examples
rsync -av examples/ $out/share/abella/examples/
'';

meta = {
description = "Interactive theorem prover";
mainProgram = "abella";
longDescription = ''
Abella is an interactive theorem prover based on lambda-tree syntax.
This means that Abella is well-suited for reasoning about the meta-theory
of programming languages and other logical systems which manipulate
objects with binding.
'';
homepage = "https://abella-prover.org";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ chen ];
platforms = lib.platforms.unix;
};
})

0 comments on commit 82a23ce

Please sign in to comment.