depot/third_party/nixpkgs/pkgs/applications/science/logic/cedille/default.nix

57 lines
1.3 KiB
Nix
Raw Normal View History

{ stdenv
, lib
, fetchFromGitHub
, alex
, happy
, Agda
, buildPlatform
, buildPackages
, ghcWithPackages
}:
stdenv.mkDerivation rec {
version = "1.1.2";
pname = "cedille";
src = fetchFromGitHub {
owner = "cedille";
repo = "cedille";
rev = "v${version}";
sha256 = "1j745q9sd32fhcb96wjq6xvyqq1k6imppjnya6x0n99fyfnqzvg9";
fetchSubmodules = true;
};
patches = [
./Fix-to-string.agda-to-compile-with-Agda-2.6.1.patch
];
nativeBuildInputs = [ alex happy ];
buildInputs = [ Agda (ghcWithPackages (ps: [ps.ieee])) ];
LANG = "en_US.UTF-8";
LOCALE_ARCHIVE =
lib.optionalString (buildPlatform.libc == "glibc")
"${buildPackages.glibcLocales}/lib/locale/locale-archive";
postPatch = ''
patchShebangs create-libraries.sh
'';
installPhase = ''
install -Dm755 -t $out/bin/ cedille
install -Dm755 -t $out/bin/ core/cedille-core
install -Dm644 -t $out/share/info docs/info/cedille-info-main.info
mkdir -p $out/lib/
cp -r lib/ $out/lib/cedille/
'';
meta = with lib; {
description = "An interactive theorem-prover and dependently typed programming language, based on extrinsic (aka Curry-style) type theory";
homepage = "https://cedille.github.io/";
license = licenses.mit;
maintainers = with maintainers; [ marsam mpickering ];
platforms = platforms.unix;
};
}