45 lines
756 B
Nix
45 lines
756 B
Nix
{
|
|
lib
|
|
, uiua
|
|
, stdenvNoCC
|
|
, runtimeShell
|
|
}:
|
|
|
|
stdenvNoCC.mkDerivation {
|
|
pname = "uash";
|
|
version = "unstable";
|
|
|
|
src = lib.fileset.toSource {
|
|
root = ./..;
|
|
fileset = lib.fileset.unions [
|
|
../uash.ua
|
|
];
|
|
};
|
|
|
|
nativeBuildInputs = [ uiua ];
|
|
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
uiua build --output .uash.uasm uash.ua
|
|
runHook postBuild
|
|
'';
|
|
|
|
wrapper = ''
|
|
#!${runtimeShell}
|
|
"${uiua}"/bin/uiua run ${placeholder "out"}/bin/.uash.uasm
|
|
'';
|
|
|
|
passAsFile = [ "wrapper" ];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
install -Dm444 .uash.uasm -t "$out"/bin
|
|
install -Dm555 "$wrapperPath" "$out"/bin/uash
|
|
runHook postInstall
|
|
'';
|
|
|
|
shellPath = "/bin/uash";
|
|
|
|
meta.mainProgram = "uash";
|
|
}
|