idris2Packages.buildIdris: better nix-shell support via shellHook

This commit is contained in:
Mathew Polzin 2024-03-29 09:29:08 -05:00
parent 824952ff6b
commit 8273075e61

View File

@ -32,7 +32,8 @@ let
"idrisLibraries"
];
sharedAttrs = drvAttrs // {
derivation = stdenv.mkDerivation (finalAttrs:
drvAttrs // {
pname = ipkgName;
inherit version;
src = src;
@ -50,10 +51,15 @@ let
passthru = {
inherit propagatedIdrisLibraries;
};
};
shellHook = ''
export IDRIS2_PACKAGE_PATH="${finalAttrs.IDRIS2_PACKAGE_PATH}"
'';
}
);
in {
executable = stdenv.mkDerivation (sharedAttrs // {
executable = derivation.overrideAttrs {
installPhase = ''
runHook preInstall
mkdir -p $out/bin
@ -76,11 +82,11 @@ in {
fi
runHook postInstall
'';
});
};
library = { withSource ? false }:
let installCmd = if withSource then "--install-with-src" else "--install";
in stdenv.mkDerivation (sharedAttrs // {
in derivation.overrideAttrs {
installPhase = ''
runHook preInstall
mkdir -p $out/${libSuffix}
@ -88,5 +94,5 @@ in {
idris2 ${installCmd} ${ipkgFileName}
runHook postInstall
'';
});
};
}