Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 fetchFromGitHub,
4 ocamlPackages,
5}:
6
7ocamlPackages.buildDunePackage rec {
8 pname = "beluga";
9 version = "1.1.2";
10
11 src = fetchFromGitHub {
12 owner = "Beluga-lang";
13 repo = "Beluga";
14 tag = "v${version}";
15 hash = "sha256-QUZ3mmd0gBQ+hnAeo/TbvFsETnThAdAoQyfpz2F//4g=";
16 };
17
18 duneVersion = "3";
19
20 buildInputs = with ocamlPackages; [
21 gen
22 sedlex
23 extlib
24 dune-build-info
25 linenoise
26 omd
27 uri
28 ounit2
29 yojson
30 ];
31
32 doCheck = true;
33
34 postInstall = ''
35 mkdir -p $out/share/emacs/site-lisp/beluga/
36 cp -r tools/beluga-mode.el $out/share/emacs/site-lisp/beluga
37 '';
38
39 meta = {
40 description = "Functional language for reasoning about formal systems";
41 homepage = "https://complogic.cs.mcgill.ca/beluga";
42 changelog = "https://github.com/Beluga-lang/Beluga/releases/tag/v${version}";
43 license = lib.licenses.gpl3Plus;
44 maintainers = [ lib.maintainers.bcdarwin ];
45 platforms = lib.platforms.unix;
46 };
47}