From 48a49fc12e0b6e28c46fcb0a7c52bac26f8bc05d Mon Sep 17 00:00:00 2001 From: Langston Barrett Date: Thu, 21 Sep 2017 23:08:34 +0000 Subject: [PATCH] coqPackages.HoTT: init at 20170921 --- pkgs/development/coq-modules/HoTT/default.nix | 59 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 60 insertions(+) create mode 100644 pkgs/development/coq-modules/HoTT/default.nix diff --git a/pkgs/development/coq-modules/HoTT/default.nix b/pkgs/development/coq-modules/HoTT/default.nix new file mode 100644 index 000000000000..cb77ac3deac9 --- /dev/null +++ b/pkgs/development/coq-modules/HoTT/default.nix @@ -0,0 +1,59 @@ +{ stdenv, fetchFromGitHub, autoconf, automake, coq }: + +if !stdenv.lib.versionAtLeast coq.coq-version "8.6" +then throw "This version of HoTT requires Coq 8.6" +else stdenv.mkDerivation rec { + name = "coq${coq.coq-version}-HoTT-${version}"; + version = "20170921"; + + src = fetchFromGitHub { + owner = "HoTT"; + repo = "HoTT"; + rev = "e3557740a699167e6adb1a65855509d55a392fa1"; + sha256 = "0zwfp8g62b50vmmbb2kmskj3v6w7qx1pbf43yw0hr7asdz2zbx5v"; + }; + + buildInputs = [ autoconf automake coq ]; + enableParallelBuilding = true; + + preConfigure = '' + patchShebangs ./autogen.sh + ./autogen.sh + + mkdir -p "$out/bin" + ''; + + configureFlags = [ + "--bindir=$(out)/bin" + ]; + + patchPhase = '' + patchShebangs etc + patchShebangs hoqc hoqchk hoqdep hoqide hoqtop + ''; + + postBuild = '' + patchShebangs hoq-config + ''; + + # Currently, all the scripts like hoqc and hoqtop assume that the *.vo files are + # either (1) in the same directory as the scripts, or (2) in /usr/share/hott. + # We fulfill (1), which means that these files are only accessible via hoqtop, + # hoqc, etc and not via coqtop, coqc, etc. + postInstall = '' + mv $out/share/hott/* "$out/bin" + rmdir $out/share/hott + rmdir $out/share + ''; + + installFlags = [ + "COQBIN=${coq}/bin" + ]; + + meta = with stdenv.lib; { + homepage = http://homotopytypetheory.org/; + description = "Homotopy type theory"; + maintainers = with maintainers; [ siddharthist ]; + platforms = coq.meta.platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c0662629f1d6..e5bce94d2ab6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18526,6 +18526,7 @@ with pkgs; dpdgraph = callPackage ../development/coq-modules/dpdgraph {}; flocq = callPackage ../development/coq-modules/flocq {}; heq = callPackage ../development/coq-modules/heq {}; + HoTT = callPackage ../development/coq-modules/HoTT {}; interval = callPackage ../development/coq-modules/interval {}; mathcomp = callPackage ../development/coq-modules/mathcomp { }; paco = callPackage ../development/coq-modules/paco {};