diff --git a/horizon.dhall b/horizon.dhall index 2cc19ecdd45fbc81ced18f746599da686c1d1d9e..79b328f2586ad73c922406a630ef3cdab01a6018 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 87d1b37db2ee8a5fe1060bd26f1eba2ad4130e5c..4314c652459a042988a1132e1ffb14caeade1a8e 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 291cb2511b921a181ddde42b643c8d00fbe56923..41517b48aff1f3b24e86204e38558c8ebdd93af6 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 0000000000000000000000000000000000000000..88e83df68e33e8ebcf59e996bb833ca06c27061f --- /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 0000000000000000000000000000000000000000..48a38f47fee4dc0cb781b1e9bf767d8212e9849c --- /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