From 0644e37a92fed5e917d28c63339bfcfe4c604c7a Mon Sep 17 00:00:00 2001
From: Daniel Firth <dan.firth@homotopic.tech>
Date: Wed, 24 May 2023 11:23:53 +0000
Subject: [PATCH] dependent-sum-template: init at 0.1.1.1

---
 horizon.dhall                   |  3 +++
 horizon.lock                    |  8 ++++++++
 overlay.nix                     |  4 ++++
 pkgs/dependent-sum-template.nix | 26 ++++++++++++++++++++++++++
 pkgs/th-extras.nix              | 25 +++++++++++++++++++++++++
 5 files changed, 66 insertions(+)
 create mode 100644 pkgs/dependent-sum-template.nix
 create mode 100644 pkgs/th-extras.nix

diff --git a/horizon.dhall b/horizon.dhall
index 2cc19ec..79b328f 100644
--- a/horizon.dhall
+++ b/horizon.dhall
@@ -8,6 +8,8 @@ let packages =
       , constraints-extras = H.callHackage "constraints-extras" "0.4.0.0"
       , cpphs = H.callHackage "cpphs" "1.20.9.1"
       , dependent-sum = H.callHackage "dependent-sum" "0.7.2.0"
+      , dependent-sum-template =
+          H.callHackage "dependent-sum-template" "0.1.1.1"
       , formatting = H.callHackage "formatting" "7.2.0"
       , haskell-src = H.callHackage "haskell-src" "1.0.4"
       , hxt = H.callHackage "hxt" "9.3.1.22"
@@ -19,6 +21,7 @@ let packages =
       , quiet = H.callHackage "quiet" "0.2"
       , recursion-schemes = H.callHackage "recursion-schemes" "5.2.2.4"
       , regex-compat = H.callHackage "regex-compat" "0.95.2.1"
+      , th-extras = H.callHackage "th-extras" "0.0.0.6"
       , type-errors = H.callHackage "type-errors" "0.2.0.2"
       , unagi-chan = H.callHackage "unagi-chan" "0.4.1.4"
       , vty = H.callHackage "vty" "5.38"
diff --git a/horizon.lock b/horizon.lock
index 87d1b37..4314c65 100644
--- a/horizon.lock
+++ b/horizon.lock
@@ -22,6 +22,10 @@
   , mapValue =
       "7528702c4e9cd688f85868176134a904936f993075d74892370b6ee2adf9bd52"
   }
+, { mapKey = "dependent-sum-template"
+  , mapValue =
+      "5b2206ab4b1ddfff4ef6d8d66f4ea157c951d00a56454b87d31c39d56a85e3df"
+  }
 , { mapKey = "formatting"
   , mapValue =
       "798772075a051e9047335c38e89059caaa8518e68387e324abca4e36979339ca"
@@ -66,6 +70,10 @@
   , mapValue =
       "0b384fc5c7d44f762a315e6a5db0b79ad2d94170ce78099ef2e3166233c5a124"
   }
+, { mapKey = "th-extras"
+  , mapValue =
+      "c92ed4131b334a9a9bd2fe738996e086bcfbdaa40d156843daebaa36a2f18f74"
+  }
 , { mapKey = "type-errors"
   , mapValue =
       "9a6f7b5c1c3b6f5641d84da2df9661c507251df438da179a9926941422e31bc1"
diff --git a/overlay.nix b/overlay.nix
index 291cb25..41517b4 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -13,6 +13,8 @@ final: prev: with pkgs.haskell.lib; {
 
   dependent-sum = final.callPackage (./pkgs/dependent-sum.nix) { };
 
+  dependent-sum-template = final.callPackage (./pkgs/dependent-sum-template.nix) { };
+
   formatting = final.callPackage (./pkgs/formatting.nix) { };
 
   haskell-src = final.callPackage (./pkgs/haskell-src.nix) { };
@@ -35,6 +37,8 @@ final: prev: with pkgs.haskell.lib; {
 
   regex-compat = final.callPackage (./pkgs/regex-compat.nix) { };
 
+  th-extras = final.callPackage (./pkgs/th-extras.nix) { };
+
   type-errors = final.callPackage (./pkgs/type-errors.nix) { };
 
   unagi-chan = final.callPackage (./pkgs/unagi-chan.nix) { };
diff --git a/pkgs/dependent-sum-template.nix b/pkgs/dependent-sum-template.nix
new file mode 100644
index 0000000..88e83df
--- /dev/null
+++ b/pkgs/dependent-sum-template.nix
@@ -0,0 +1,26 @@
+{ mkDerivation, base, constraints-extras, dependent-sum, lib
+, template-haskell, th-abstraction, th-extras
+}:
+mkDerivation {
+  pname = "dependent-sum-template";
+  version = "0.1.1.1";
+  sha256 = "d46fc18d5c2f5d385f901777e982e8a1ae9094ba7e68f7e4997a82036375ae0f";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base dependent-sum template-haskell th-abstraction th-extras
+  ];
+  testHaskellDepends = [ base constraints-extras dependent-sum ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/obsidiansystems/dependent-sum";
+  description = "Template Haskell code to generate instances of classes in dependent-sum package";
+  license = lib.licenses.publicDomain;
+  broken = false;
+}
\ No newline at end of file
diff --git a/pkgs/th-extras.nix b/pkgs/th-extras.nix
new file mode 100644
index 0000000..48a38f4
--- /dev/null
+++ b/pkgs/th-extras.nix
@@ -0,0 +1,25 @@
+{ mkDerivation, base, containers, lib, syb, template-haskell
+, th-abstraction
+}:
+mkDerivation {
+  pname = "th-extras";
+  version = "0.0.0.6";
+  sha256 = "02bf23940c0233a6ef6f61868e827ebd4554afe8d71cef2a1eb8e286a7f07c4a";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base containers syb template-haskell th-abstraction
+  ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/mokus0/th-extras";
+  description = "A grab bag of functions for use with Template Haskell";
+  license = lib.licenses.publicDomain;
+  broken = false;
+}
\ No newline at end of file
-- 
GitLab