From dfc7a7a6df60bee748567d155f02c0f88f1ce7e0 Mon Sep 17 00:00:00 2001
From: Daniel Firth <dan.firth@homotopic.tech>
Date: Thu, 20 Oct 2022 22:58:15 +0100
Subject: [PATCH] typerep-map: init at 75b7cd5d45986be07420a6821d352ad2adc0b697

---
 manifest.dhall       |  5 +++++
 overlay.nix          |  2 ++
 pkgs/typerep-map.nix | 31 +++++++++++++++++++++++++++++++
 3 files changed, 38 insertions(+)
 create mode 100644 pkgs/typerep-map.nix

diff --git a/manifest.dhall b/manifest.dhall
index c9cb0bb3..842a8bcc 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -404,6 +404,11 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "type-errors-pretty" "0.0.1.2"
     , callHackage "type-errors" "0.2.0.0"
     , callHackage "type-equality" "1"
+    , callCabal2nix
+        "typerep-map"
+        "https://github.com/parsonsmatt/typerep-map"
+        (Some "75b7cd5d45986be07420a6821d352ad2adc0b697")
+        (None Text)
     , callHackage "unicode-collation" "0.1.3.2"
     , callHackage "unicode-data" "0.4.0"
     , callHackage "unicode-transforms" "0.4.0.1"
diff --git a/overlay.nix b/overlay.nix
index 36cd0cf9..404e0e11 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -505,6 +505,8 @@ final: prev: with pkgs.haskell.lib; {
 
     type-errors-pretty = prev.callPackage (./pkgs/type-errors-pretty.nix) { };
 
+    typerep-map = prev.callPackage (./pkgs/typerep-map.nix) { };
+
     unicode-collation = prev.callPackage (./pkgs/unicode-collation.nix) { };
 
     unicode-data = prev.callPackage (./pkgs/unicode-data.nix) { };
diff --git a/pkgs/typerep-map.nix b/pkgs/typerep-map.nix
new file mode 100644
index 00000000..8670f918
--- /dev/null
+++ b/pkgs/typerep-map.nix
@@ -0,0 +1,31 @@
+{ mkDerivation, base, containers, criterion, deepseq, dependent-map
+, dependent-sum, fetchgit, ghc-prim, ghc-typelits-knownnat
+, hedgehog, hspec, hspec-hedgehog, lib, primitive, vector
+}:
+mkDerivation {
+  pname = "typerep-map";
+  version = "0.5.0.0";
+  src = fetchgit {
+    url = "https://github.com/parsonsmatt/typerep-map";
+    sha256 = "023f2rrak7kmpfxxpfcdv5bb1llksk2cxmdgvs08qx3l821d016w";
+    rev = "75b7cd5d45986be07420a6821d352ad2adc0b697";
+    fetchSubmodules = true;
+  };
+  libraryHaskellDepends = [
+    base containers deepseq ghc-prim primitive vector
+  ];
+  testHaskellDepends = [
+    base ghc-typelits-knownnat hedgehog hspec hspec-hedgehog
+  ];
+  benchmarkHaskellDepends = [
+    base criterion deepseq dependent-map dependent-sum
+    ghc-typelits-knownnat
+  ];
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/kowainik/typerep-map";
+  description = "Efficient implementation of a dependent map with types as keys";
+  license = lib.licenses.mpl20;
+}
\ No newline at end of file
-- 
GitLab