nix: use buildDuneProject instead

This commit is contained in:
Léana 江 2024-04-21 18:51:11 +02:00 committed by Léana 江
parent b9540929ee
commit f380d20530
4 changed files with 33 additions and 180 deletions

View file

@ -9,7 +9,7 @@ let
logisim-evolution = pkgs.callPackage ./logisim-evolution.nix { };
necrolib = pkgs.callPackage ./necrolib.nix { inherit opam-nix; };
necrolib = pkgs.callPackage ./necrolib.nix { };
hiosevka = pkgs.callPackage ./hiosevka { };
hiosevka-nerd-font-mono = mkNerdFont {

View file

@ -1,35 +1,30 @@
{
fetchurl,
opam-nix,
system,
ocamlPackages,
version ? "v0.15.0",
}:
let
ocamlPackages.buildDunePackage {
pname = "necrolib";
inherit version;
hashes = {
"v0.14.7.1" = "sha256-rFYzNFsT7LIXzWxOogoJd9vh+ywI2N1GE77tnYO7keg=";
"v0.14.8" = "sha256-ooc1DfTf4k9vcR2aU6CYzaGCDy4XvX98tvfzTLCljSc=";
"v0.14.9" = "sha256-wPOa/08AykXAotQLZ/CfxD0kLTnWHZTiTPW950uBukA=";
"v0.15.0" = "sha256-NJArIZMcKUTGqTgYntch9pSFcVe15SQTUD2amsCNXGI=";
};
minimalOCamlVersion = "4.14.1";
src = fetchurl {
url = "https://gitlab.inria.fr/skeletons/necro/-/archive/${version}/necro-${version}.tar.gz";
hash = hashes.${version};
hash =
{
"v0.14.7.1" = "sha256-rFYzNFsT7LIXzWxOogoJd9vh+ywI2N1GE77tnYO7keg=";
"v0.14.8" = "sha256-ooc1DfTf4k9vcR2aU6CYzaGCDy4XvX98tvfzTLCljSc=";
"v0.14.9" = "sha256-wPOa/08AykXAotQLZ/CfxD0kLTnWHZTiTPW950uBukA=";
"v0.15.0" = "sha256-NJArIZMcKUTGqTgYntch9pSFcVe15SQTUD2amsCNXGI=";
}
.${version};
};
on = opam-nix.lib.${system};
query = {
ocaml-base-compiler = "4.14.1";
};
scope = on.buildDuneProject { } pname src query;
overlay = self: super: {
# credits: balsoft
# https://github.com/tweag/opam-nix/discussions/71#discussioncomment-8344504
necrolib = super.necrolib.overrideAttrs (oa: { inherit src; });
};
in
(scope.overrideScope' overlay).${pname}
duneVersion = "3";
nativeBuildInputs = [ ocamlPackages.menhir ];
buildInputs = [
ocamlPackages.ocamlgraph
ocamlPackages.dune-build-info
];
}