diff --git a/.build-all.dhall b/.build-all.dhall new file mode 100644 index 0000000000000000000000000000000000000000..c8c56667e595663310489d36bd4007eb28666566 --- /dev/null +++ b/.build-all.dhall @@ -0,0 +1,22 @@ +let Prelude = + env:DHALL_PRELUDE + ? https://raw.githubusercontent.com/dhall-lang/dhall-lang/v20.1.0/Prelude/package.dhall + sha256:26b0ef498663d269e4dc6a82b0ee289ec565d683ef4c00d0ebdd25333a5a3c98 + +let H = ./horizon-spec.dhall + +let toStep + : Text → Text + = λ(x : Text) → ".#${x}" + +let input = Prelude.Map.keys Text H.HaskellPackage.Type ./horizon.dhall + +let packages = Prelude.List.map Text Text toStep (input : List Text) + +in "nix build -L" + ++ Prelude.List.fold + Text + packages + Text + (λ(x : Text) → λ(y : Text) → x ++ " " ++ y) + "" diff --git a/.gitignore b/.gitignore index 1f594a88a6fd6819a5d9c52f3112694ef04afdb4..7397c00162d14d73ca680252835a4cb0713c5ef5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -result +result* dist-newstyle diff --git a/.gitlab-ci.dhall b/.gitlab-ci.dhall index 11ded9f593caddcc28b3cf17e0e5bd6b8a8d3cf7..a35ba4f4ac847950f0eef899b92e8708503863cb 100644 --- a/.gitlab-ci.dhall +++ b/.gitlab-ci.dhall @@ -12,19 +12,15 @@ let toStep = λ(id : Text) → λ(prefix : Text) → λ(x : Text) → - { mapKey = id - , mapValue.script = [ "nix build -L .#${prefix}.${x}" ] - } + { mapKey = id, mapValue.script = [ "nix build -L .#${prefix}.${x}" ] } let input = Prelude.Map.keys Text H.HaskellPackage.Type ./horizon.dhall let packages = Prelude.List.map - (Text) + Text (H.Attr Step) - ( λ(x : Text) → - toStep "Package ${x}" "packages.x86_64-linux" x - ) + (λ(x : Text) → toStep "Package ${x}" "packages.x86_64-linux" x) (input : List Text) in packages diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d358c76fc3b70b38bf2f177749092368d2c26a37 --- /dev/null +++ b/README.md @@ -0,0 +1,22 @@ +# horizon-plutus + +horizon-plutus is an overlay for horizon-platform containing cardano and plutus +libraries + +## development with feedback + +You can get live feedback using the +[feedback](https://hackage.haskell.org/package/feedback) tool and +running the following commands in three separate terminals + +``` +feedback build +``` + +``` +feedback check +``` + +``` +feedback gen +``` diff --git a/configuration.nix b/configuration.nix index 7bf29efbf8d905e72c4c4c22a3c3656df3eb53e1..bb9493cd6d2f234fac7876e7e427ce3f5bc0ee51 100644 --- a/configuration.nix +++ b/configuration.nix @@ -10,6 +10,8 @@ final: prev: { cardano-crypto-praos = addPkgconfigDepend prev.cardano-crypto-praos pkgs.libsodium; + cardano-crypto-tests = enableCabalFlag prev.cardano-crypto-tests "development"; + cardano-prelude = enableCabalFlag prev.cardano-prelude "development"; plutus-core = setBuildTarget (dontBenchmark prev.plutus-core) "plc"; diff --git a/feedback.yaml b/feedback.yaml new file mode 100644 index 0000000000000000000000000000000000000000..eb8acb8f49f5b5cf07623d3ec8e686e75e5c2d86 --- /dev/null +++ b/feedback.yaml @@ -0,0 +1,10 @@ +loops: + build: + command: cat .build-all.dhall | dhall text | bash + filter: + find: '*.nix' + check: nix flake check -L + gen: + command: nix run .#horizon-gen-nix overlay + filter: + find: horizon.dhall diff --git a/flake.nix b/flake.nix index ccc9969c1b69646297a91aa88b1b04bd0b298a3f..af432667e9ed1d42ac5edefc65b5d2ba2beba27b 100644 --- a/flake.nix +++ b/flake.nix @@ -1,4 +1,6 @@ { + description = "horizon-plutus overlay"; + inputs = { get-flake.url = "github:ursi/get-flake"; horizon-platform.url = "git+https://gitlab.homotopic.tech/horizon/horizon-platform?rev=51ffeae6e4cb64c4c0b5c2af322990d3d4089ca2"; @@ -10,48 +12,68 @@ nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs-libR.url = "github:nixos/nixpkgs/602748c14b82a2e17078713686fe1df2824fa502"; }; - outputs = inputs@{ self, get-flake, nixpkgs, nixpkgs-libR, horizon-gen-nix, horizon-platform, flake-utils, lint-utils, ... }: + + outputs = + inputs@ + { self + , flake-utils + , get-flake + , horizon-gen-nix + , horizon-platform + , lint-utils + , nixpkgs + , nixpkgs-libR + , ... + }: flake-utils.lib.eachSystem [ "x86_64-linux" ] (system: - let - pkgs-libR = import nixpkgs-libR { inherit system; }; - pkgs = import nixpkgs { inherit system; }; + let + pkgs-libR = import nixpkgs-libR { inherit system; }; + pkgs = import nixpkgs { inherit system; }; + in + with pkgs.lib; + with pkgs.writers; + let + horizon-gen-nix-app = get-flake horizon-gen-nix; - horizon-gen-nix-app = get-flake horizon-gen-nix; + overrides = composeManyExtensions [ + (import ./overlay.nix { inherit pkgs; }) + (import ./configuration.nix { inherit pkgs pkgs-libR; }) + ]; - plutus-overlay = pkgs.lib.composeManyExtensions [ - (import ./overlay.nix { inherit pkgs; }) - (import ./configuration.nix { inherit pkgs pkgs-libR; }) - ]; + legacyPackages = horizon-platform.legacyPackages.${system}.override { + inherit overrides; + }; - legacyPackages = horizon-platform.legacyPackages.${system}.override { - overrides = plutus-overlay; - }; + packages = filterAttrs + (n: v: v != null + && builtins.typeOf v == "set" + && pkgs.lib.hasAttr "type" v + && v.type == "derivation" + && v.meta.broken == false) + legacyPackages; - packages = pkgs.lib.filterAttrs - (n: v: v != null - && builtins.typeOf v == "set" - && pkgs.lib.hasAttr "type" v - && v.type == "derivation" - && v.meta.broken == false) - legacyPackages; - horizon-gen-gitlab-ci = pkgs.writers.writeBashBin "gen-gitlab-ci" "${pkgs.dhall-json}/bin/dhall-to-yaml --file .gitlab-ci.dhall"; - in - { - apps = { - horizon-gen-nix = horizon-gen-nix-app.apps.${system}.horizon-gen-nix; - horizon-gen-gitlab-ci = { - type = "app"; - program = "${horizon-gen-gitlab-ci}/bin/gen-gitlab-ci"; - }; - }; - checks = { - dhall-format = lint-utils.outputs.linters.x86_64-linux.dhall-format ./.; - nixpkgs-fmt = lint-utils.outputs.linters.x86_64-linux.nixpkgs-fmt ./.; + horizon-gen-gitlab-ci = writeBashBin "gen-gitlab-ci" "${pkgs.dhall-json}/bin/dhall-to-yaml --file .gitlab-ci.dhall"; + + in + { + apps = { + + horizon-gen-nix = horizon-gen-nix-app.apps.${system}.horizon-gen-nix; + + horizon-gen-gitlab-ci = { + type = "app"; + program = "${horizon-gen-gitlab-ci}/bin/gen-gitlab-ci"; }; - overlays.default = plutus-overlay; + }; + + checks = { + dhall-format = lint-utils.outputs.linters.${system}.dhall-format ./.; + nixpkgs-fmt = lint-utils.outputs.linters.${system}.nixpkgs-fmt ./.; + }; - inherit legacyPackages; - inherit packages; - }); + inherit legacyPackages; + inherit overrides; + inherit packages; + }); } diff --git a/horizon.dhall b/horizon.dhall index a0bdd51b3353fa3fddfa90505e8fff03f5b4edff..c33b0ee6b5331c28634408e690d78c93a1cfdccb 100644 --- a/horizon.dhall +++ b/horizon.dhall @@ -1,236 +1,272 @@ let H = ./horizon-spec.dhall -let callCardanoLedger - : ∀(name : Text) → - ∀(subdir : Text) → - H.Attr H.HaskellPackage.Type - = λ(name : Text) → - λ(subdir : Text) → - H.callCabal2nix - name - "https://github.com/milloni/cardano-ledger" - "3aa1fd8469424778454644f0d371988fb4490b4a" - (Some subdir) - -let mods = H.Modifiers :: { enableProfiling = False } +let callRepository + : H.Url → H.Revision → H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = λ(repo : H.Url) → + λ(revision : H.Revision) → + λ(name : H.Name) → + λ(subdir : H.Subdir) → + H.callCabal2nix name repo revision (Some subdir) -in H.modPackageList mods - [ callCardanoLedger "cardano-ledger-alonzo-test" "eras/alonzo/test-suite" - , callCardanoLedger "cardano-ledger-alonzo" "eras/alonzo/impl" - , callCardanoLedger "cardano-ledger-babbage" "eras/babbage/impl" - , callCardanoLedger "cardano-ledger-babbage-test" "eras/babbage/test-suite" - , callCardanoLedger "cardano-ledger-conway" "eras/conway/impl" - , callCardanoLedger "cardano-ledger-conway-test" "eras/conway/test-suite" - , callCardanoLedger "cardano-ledger-pretty" "libs/cardano-ledger-pretty" - , callCardanoLedger "cardano-ledger-shelley" "eras/shelley/impl" - , callCardanoLedger "cardano-ledger-shelley-test" "eras/shelley/test-suite" - , callCardanoLedger "cardano-ledger-shelley-ma" "eras/shelley-ma/impl" - , callCardanoLedger "cardano-ledger-shelley-ma-test" "eras/shelley-ma/test-suite" - , callCardanoLedger "cardano-ledger-test" "libs/cardano-ledger-test" - , callCardanoLedger "cardano-protocol-tpraos" "libs/cardano-protocol-tpraos" - , H.callCabal2nix - "plutus-core" - "https://github.com/milloni/plutus" - "81cd1ada745c12af2c2c28afce1f6b6b28b38fdd" - (Some "plutus-core") - , H.callCabal2nix - "plutus-ledger-api" - "https://github.com/milloni/plutus" - "81cd1ada745c12af2c2c28afce1f6b6b28b38fdd" - (Some "plutus-ledger-api") - , H.callCabal2nix - "plutus-tx" - "https://github.com/milloni/plutus" - "81cd1ada745c12af2c2c28afce1f6b6b28b38fdd" - (Some "plutus-tx") - ] - # - [ H.callHackage "HTF" "0.15.0.0" - , H.callHackage "PyF" "0.11.0.0" - , H.callHackage "Stream" "0.4.7.2" - , H.callHackage "Unique" "0.4.7.9" - , H.callHackage "algebraic-graphs" "0.7" - , H.callHackage "base58-bytestring" "0.1.0" - , H.callHackage "base64-bytestring-type" "1.0.1" - , H.callCabal2nix - "base-deriving-via" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "base-deriving-via") - , H.callHackage "base-prelude" "1.6.1" - , H.callHackage "bech32" "1.1.2" - , H.callHackage "bin" "0.1.2" - , callCardanoLedger "byron-spec-chain" "eras/byron/chain/executable-spec" - , callCardanoLedger "byron-spec-ledger" "eras/byron/ledger/executable-spec" - , H.callHackage "canonical-json" "0.6.0.1" - , H.callCabal2nix - "cardano-binary" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "binary") - , H.callCabal2nix - "cardano-binary-test" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "binary/test") - , H.callCabal2nix - "cardano-crypto" - "https://github.com/input-output-hk/cardano-crypto" - "07397f0e50da97eaa0575d93bee7ac4b2b2576ec" - (None Text) - , H.callCabal2nix - "cardano-crypto-class" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "cardano-crypto-class") - , H.callCabal2nix - "cardano-crypto-praos" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "cardano-crypto-praos") - , callCardanoLedger "cardano-crypto-test" "eras/byron/crypto/test" - , callCardanoLedger "cardano-crypto-wrapper" "eras/byron/crypto" - , callCardanoLedger "cardano-data" "libs/cardano-data" - , callCardanoLedger "cardano-ledger-api" "libs/cardano-ledger-api" - , callCardanoLedger "cardano-ledger-byron" "eras/byron/ledger/impl" - , callCardanoLedger "cardano-ledger-byron-test" "eras/byron/ledger/impl/test" - , callCardanoLedger "cardano-ledger-core" "libs/cardano-ledger-core" - , H.callCabal2nix - "cardano-slotting" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "slotting") - , H.callCabal2nix - "cardano-strict-containers" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "cardano-strict-containers") - , H.callCabal2nix - "cardano-prelude" - "https://github.com/input-output-hk/cardano-prelude" - "b6053a23f53acd5c519cc559c3861dda3ebf8b35" - (Some "cardano-prelude") - , H.callCabal2nix - "cardano-prelude-test" - "https://github.com/input-output-hk/cardano-prelude" - "b6053a23f53acd5c519cc559c3861dda3ebf8b35" - (Some "cardano-prelude-test") - , H.callHackage "composition-prelude" "3.0.0.2" - , H.callHackage "contra-tracer" "0.2.0.0" - , H.callHackage "data-ordlist" "0.4.7.0" - , H.callHackage "dependent-sum-template" "0.1.1.1" - , H.callHackage "deriving-compat" "0.6.1" - , H.callHackage "dictionary-sharing" "0.1.0.0" - , H.callHackage "dom-lt" "0.2.3" - , H.callCabal2nix - "flat" - "https://github.com/Quid2/flat" - "2121ee96201e39764e3a6fcbc53241afb0050647" - (None Text) - , H.callHackage "generic-monoid" "0.1.0.1" - , H.callCabal2nix - "ghc-typelits-knownnat" - "https://github.com/clash-lang/ghc-typelits-knownnat" - "1bc4ee33e005e96d1f7785c715588a289707cd48" - (None Text) - , H.callCabal2nix - "ghc-typelits-natnormalise" - "https://github.com/clash-lang/ghc-typelits-natnormalise" - "e0af5b3c69a7d8e1dd402eb727631801e7d9be3d" - (None Text) - , H.callCabal2nix - "goblins" - "https://github.com/newhoggy/goblins" - "a315f41ec7250097fa6073b5ef4773e45758578f" - (None Text) - , H.callCabal2nix - "gray-code" - "https://github.com/milloni/gray-code-0.3.1" - "f310a19e44416206633cfd084f10ffb7cfea9f1d" - (None Text) - , H.callHackage "haskell-src" "1.0.4" - , H.callCabal2nix - "heapwords" - "https://github.com/input-output-hk/cardano-base" - "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "heapwords") - , H.callHackage "hedgehog-fn" "1.0" - , H.callHackage "hedgehog-quickcheck" "0.1.1" - , H.callHackage "heredoc" "0.2.0.0" - , H.callHackage "hex-text" "0.1.0.7" - , H.callHackage "hxt" "9.3.1.22" - , H.callHackage "hxt-charproperties" "9.5.0.0" - , H.callHackage "hxt-regex-xmlschema" "9.2.0.7" - , H.callHackage "hxt-unicode" "9.0.2.4" - , H.callHackage "inline-c" "0.9.1.6" - , H.callCabal2nix - "inline-r" - "https://github.com/tweag/HaskellR" - "fe9b5bd06cd4d3988e47b9933b11d83b6108e255" - (Some "inline-r") - , H.callHackage "int-cast" "0.2.0.0" - , H.callCabal2nix - "measures" +let callCardanoBase + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository "https://github.com/input-output-hk/cardano-base" "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee" - (Some "measures") - , H.callHackage "mersenne-random-pure64" "0.2.2.0" - , H.callHackage "monoidal-containers" "0.6.3.0" - , H.callCabal2nix - "moo" - "https://github.com/astanin/moo" - "dbda5e76ac3b4c72c805ec0cdb9bcdff7bb6247d" - (None Text) - , H.callHackage "mtl-prelude" "2.0.3.1" - , H.callHackage "multiset" "0.3.4.3" - , H.callHackage "lazysmallcheck" "0.6" - , H.callHackage "lazy-search" "0.1.3.0" - , H.callHackage "list-t" "1.0.5.3" - , H.callHackage "newtype" "0.2.2.0" - , H.callHackage "nonempty-vector" "0.2.1.0" - , callCardanoLedger "non-integral" "libs/non-integral" - , H.callCabal2nix - "nothunks" - "https://github.com/locallycompact/nothunks" - "0d7e3565407aa4eb21d861d075dff6f20d090f97" - (None Text) - , H.callHackage "partial-order" "0.2.0.0" - , callCardanoLedger "plutus-preprocessor" "libs/plutus-preprocessor" - , H.callCabal2nix - "prettyprinter-configurable" - "https://github.com/milloni/plutus" - "81cd1ada745c12af2c2c28afce1f6b6b28b38fdd" - (Some "prettyprinter-configurable") - , H.callHackage "protolude" "0.3.2" - , H.callHackage "quiet" "0.2" - , H.callHackage "ral" "0.1" - , H.callHackage "recursion-schemes" "5.2.2.2" - , H.callHackage "ref-tf" "0.5.0.1" - , callCardanoLedger "set-algebra" "libs/set-algebra" - , H.callHackage "singletons-th" "3.1.1" - , callCardanoLedger "small-steps" "libs/small-steps" - , callCardanoLedger "small-steps-test" "libs/small-steps-test" - , H.callHackage "streaming-binary" "0.3.0.1" - , H.callHackage "streaming-bytestring" "0.2.4" - , H.callCabal2nix - "strict-containers" - "https://github.com/milloni/strict-containers" - "9e833be00bc2c5cdb0b4e743b7a2cde00dd4f616" - (Some "strict-containers") - , H.callHackage "testing-type-modifiers" "0.1.0.1" - , H.callHackage "th-desugar" "1.14" - , H.callCabal2nix - "typerep-map" - "https://github.com/parsonsmatt/typerep-map" - "75b7cd5d45986be07420a6821d352ad2adc0b697" - (None Text) - , H.callHackage "validation-selective" "0.1.0.2" - , callCardanoLedger "vector-map" "libs/vector-map" - , H.callCabal2nix - "word-array" + +let callCardanoLedger + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/milloni/cardano-ledger" + "3aa1fd8469424778454644f0d371988fb4490b4a" + +let callCardanoNode + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/input-output-hk/cardano-node" + "4198592a7ea9c4873def316d6f80df1d20d37891" + +let callIoSim + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/input-output-hk/io-sim" + "dcafd44cdc101a3e213de6a2d5ba7f674c2bc13c" + +let callIohkMonitoringFramework + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/input-output-hk/iohk-monitoring-framework" + "1b5ae75d3186159f8175ad625db324d075450343" + +let callOuroborosNetwork + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/input-output-hk/ouroboros-network" + "3a2c7c296fa4d9748d89dbe592375bf7f60cd656" + +let callPlutusApps + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/input-output-hk/plutus-apps" + "b7ac5b2035f3675b3ceb289cf3a1551230714987" + +let callPlutus + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository "https://github.com/milloni/plutus" "81cd1ada745c12af2c2c28afce1f6b6b28b38fdd" - (Some "word-array") - , H.callHackage "xmlgen" "0.6.2.2" - , H.callHackage "size-based" "0.1.3.1" - ] + +let callTypedProtocols + : H.Name → H.Subdir → H.Attr H.HaskellPackage.Type + = callRepository + "https://github.com/input-output-hk/typed-protocols" + "ab4e0346c3215daad4c823f3ddc0eefae32091ff" + +let plutusLibraries = + H.modPackageList + H.Modifiers::{ enableProfiling = False } + [ callCardanoLedger + "cardano-ledger-alonzo-test" + "eras/alonzo/test-suite" + , callCardanoLedger "cardano-ledger-alonzo" "eras/alonzo/impl" + , callCardanoLedger "cardano-ledger-api" "libs/cardano-ledger-api" + , callCardanoLedger "cardano-ledger-babbage" "eras/babbage/impl" + , callCardanoLedger + "cardano-ledger-babbage-test" + "eras/babbage/test-suite" + , callCardanoLedger "cardano-ledger-conway" "eras/conway/impl" + , callCardanoLedger + "cardano-ledger-conway-test" + "eras/conway/test-suite" + , callCardanoLedger "cardano-ledger-pretty" "libs/cardano-ledger-pretty" + , callCardanoLedger "cardano-ledger-shelley" "eras/shelley/impl" + , callCardanoLedger + "cardano-ledger-shelley-test" + "eras/shelley/test-suite" + , callCardanoLedger "cardano-ledger-shelley-ma" "eras/shelley-ma/impl" + , callCardanoLedger + "cardano-ledger-shelley-ma-test" + "eras/shelley-ma/test-suite" + , callCardanoLedger "cardano-ledger-test" "libs/cardano-ledger-test" + , callCardanoLedger + "cardano-protocol-tpraos" + "libs/cardano-protocol-tpraos" + , callPlutus "plutus-core" "plutus-core" + , callPlutus "plutus-ledger-api" "plutus-ledger-api" + , callCardanoLedger "plutus-preprocessor" "libs/plutus-preprocessor" + , callPlutus "plutus-tx" "plutus-tx" + ] + +let otherLibraries = + [ H.callHackage "HTF" "0.15.0.0" + , H.callHackage "PyF" "0.11.0.0" + , H.callHackage "Stream" "0.4.7.2" + , H.callHackage "Unique" "0.4.7.9" + , H.callHackage "algebraic-graphs" "0.7" + , H.callHackage "base58-bytestring" "0.1.0" + , H.callHackage "base64-bytestring-type" "1.0.1" + , callCardanoBase "base-deriving-via" "base-deriving-via" + , H.callHackage "base-prelude" "1.6.1" + , H.callHackage "bech32" "1.1.2" + , H.callHackage "bin" "0.1.2" + , callCardanoLedger "byron-spec-chain" "eras/byron/chain/executable-spec" + , callCardanoLedger + "byron-spec-ledger" + "eras/byron/ledger/executable-spec" + , H.callHackage "canonical-json" "0.6.0.1" + , callCardanoBase "cardano-binary" "binary" + , callCardanoBase "cardano-binary-test" "binary/test" + , H.callCabal2nix + "cardano-crypto" + "https://github.com/input-output-hk/cardano-crypto" + "07397f0e50da97eaa0575d93bee7ac4b2b2576ec" + (None H.Subdir) + , callCardanoBase "cardano-crypto-class" "cardano-crypto-class" + , callCardanoBase "cardano-crypto-praos" "cardano-crypto-praos" + , callCardanoBase "cardano-crypto-tests" "cardano-crypto-tests" + , callCardanoLedger "cardano-crypto-test" "eras/byron/crypto/test" + , callCardanoLedger "cardano-crypto-wrapper" "eras/byron/crypto" + , callCardanoLedger "cardano-data" "libs/cardano-data" + , callCardanoLedger "cardano-ledger-byron" "eras/byron/ledger/impl" + , callCardanoLedger + "cardano-ledger-byron-test" + "eras/byron/ledger/impl/test" + , callCardanoLedger "cardano-ledger-core" "libs/cardano-ledger-core" + , callCardanoBase "cardano-slotting" "slotting" + , callCardanoBase "cardano-strict-containers" "cardano-strict-containers" + , H.callCabal2nix + "cardano-prelude" + "https://github.com/input-output-hk/cardano-prelude" + "b6053a23f53acd5c519cc559c3861dda3ebf8b35" + (Some "cardano-prelude") + , H.callCabal2nix + "cardano-prelude-test" + "https://github.com/input-output-hk/cardano-prelude" + "b6053a23f53acd5c519cc559c3861dda3ebf8b35" + (Some "cardano-prelude-test") + , H.callHackage "composition-prelude" "3.0.0.2" + , H.callHackage "contra-tracer" "0.2.0.0" + , H.callHackage "data-ordlist" "0.4.7.0" + , H.callHackage "dependent-sum-template" "0.1.1.1" + , H.callHackage "deque" "0.4.4" + , H.callHackage "deriving-compat" "0.6.1" + , H.callHackage "dictionary-sharing" "0.1.0.0" + , H.callHackage "doctest-discover" "0.2.0.0" + , H.callHackage "dom-lt" "0.2.3" + , H.callCabal2nix + "flat" + "https://github.com/Quid2/flat" + "2121ee96201e39764e3a6fcbc53241afb0050647" + (None H.Subdir) + , H.callHackage "generic-monoid" "0.1.0.1" + , H.callCabal2nix + "ghc-typelits-knownnat" + "https://github.com/clash-lang/ghc-typelits-knownnat" + "1bc4ee33e005e96d1f7785c715588a289707cd48" + (None H.Subdir) + , H.callCabal2nix + "ghc-typelits-natnormalise" + "https://github.com/clash-lang/ghc-typelits-natnormalise" + "e0af5b3c69a7d8e1dd402eb727631801e7d9be3d" + (None H.Subdir) + , H.callCabal2nix + "goblins" + "https://github.com/newhoggy/goblins" + "a315f41ec7250097fa6073b5ef4773e45758578f" + (None H.Subdir) + , H.callCabal2nix + "gray-code" + "https://github.com/milloni/gray-code-0.3.1" + "f310a19e44416206633cfd084f10ffb7cfea9f1d" + (None H.Subdir) + , H.callHackage "haskell-src" "1.0.4" + , callCardanoBase "heapwords" "heapwords" + , H.callCabal2nix + "hedgehog-extras" + "https://github.com/input-output-hk/hedgehog-extras" + "26b76bbcecfe48d0a87099f213f58e3778aa1f59" + (None H.Subdir) + , H.callHackage "hedgehog-fn" "1.0" + , H.callHackage "hedgehog-quickcheck" "0.1.1" + , H.callHackage "heredoc" "0.2.0.0" + , H.callHackage "hex-text" "0.1.0.7" + , H.callHackage "hw-aeson" "0.1.8.0" + , H.callHackage "hxt" "9.3.1.22" + , H.callHackage "hxt-charproperties" "9.5.0.0" + , H.callHackage "hxt-regex-xmlschema" "9.2.0.7" + , H.callHackage "hxt-unicode" "9.0.2.4" + , H.callHackage "inline-c" "0.9.1.6" + , H.callCabal2nix + "inline-r" + "https://github.com/tweag/HaskellR" + "fe9b5bd06cd4d3988e47b9933b11d83b6108e255" + (Some "inline-r") + , H.callHackage "int-cast" "0.2.0.0" + , callCardanoBase "measures" "measures" + , H.callHackage "mersenne-random-pure64" "0.2.2.0" + , H.callHackage "monoidal-containers" "0.6.3.0" + , H.callCabal2nix + "moo" + "https://github.com/astanin/moo" + "dbda5e76ac3b4c72c805ec0cdb9bcdff7bb6247d" + (None H.Subdir) + , H.callHackage "mtl-prelude" "2.0.3.1" + , H.callHackage "multiset" "0.3.4.3" + , H.callHackage "lazysmallcheck" "0.6" + , H.callHackage "lazy-search" "0.1.3.0" + , H.callHackage "list-t" "1.0.5.3" + , H.callHackage "newtype" "0.2.2.0" + , H.callHackage "nonempty-vector" "0.2.1.0" + , callCardanoLedger "non-integral" "libs/non-integral" + , H.callCabal2nix + "nothunks" + "https://github.com/locallycompact/nothunks" + "0d7e3565407aa4eb21d861d075dff6f20d090f97" + (None H.Subdir) + , H.callHackage "openapi3" "3.2.2" + , H.callCabal2nix + "optparse-applicative-fork" + "https://github.com/input-output-hk/optparse-applicative/" + "7497a29cb998721a9068d5725d49461f2bba0e7a" + (None H.Subdir) + , H.callHackage "optparse-generic" "1.4.8" + , H.callHackage "partial-order" "0.2.0.0" + , H.callCabal2nix + "prettyprinter-configurable" + "https://github.com/milloni/plutus" + "81cd1ada745c12af2c2c28afce1f6b6b28b38fdd" + (Some "prettyprinter-configurable") + , H.callHackage "protolude" "0.3.2" + , H.callHackage "quiet" "0.2" + , H.callHackage "ral" "0.1" + , H.callHackage "recursion-schemes" "5.2.2.2" + , H.callHackage "ref-tf" "0.5.0.1" + , callCardanoLedger "set-algebra" "libs/set-algebra" + , H.callHackage "singletons-th" "3.1.1" + , H.callHackage "size-based" "0.1.3.1" + , callCardanoLedger "small-steps" "libs/small-steps" + , callCardanoLedger "small-steps-test" "libs/small-steps-test" + , H.callHackage "streaming-binary" "0.3.0.1" + , H.callHackage "streaming-bytestring" "0.2.4" + , H.callCabal2nix + "strict-containers" + "https://github.com/milloni/strict-containers" + "9e833be00bc2c5cdb0b4e743b7a2cde00dd4f616" + (Some "strict-containers") + , H.callHackage "strict-list" "0.1.7" + , H.callHackage "testing-type-modifiers" "0.1.0.1" + , H.callHackage "th-desugar" "1.14" + , H.callHackage "time-units" "1.0.0" + , H.callHackage "transformers-except" "0.1.2" + , H.callCabal2nix + "typerep-map" + "https://github.com/parsonsmatt/typerep-map" + "75b7cd5d45986be07420a6821d352ad2adc0b697" + (None H.Subdir) + , H.callHackage "validation-selective" "0.1.0.2" + , callCardanoLedger "vector-map" "libs/vector-map" + , callPlutus "word-array" "word-array" + , H.callHackage "xmlgen" "0.6.2.2" + ] + +in plutusLibraries # otherLibraries diff --git a/overlay.nix b/overlay.nix index 8790375fde8591d06313f22df10de015bc30ff7f..e2fb45077b94fde84a77783e82fcb134dfb55a4b 100644 --- a/overlay.nix +++ b/overlay.nix @@ -41,6 +41,8 @@ final: prev: with pkgs.haskell.lib; { cardano-crypto-test = final.callPackage (./pkgs/cardano-crypto-test.nix) { }; + cardano-crypto-tests = final.callPackage (./pkgs/cardano-crypto-tests.nix) { }; + cardano-crypto-wrapper = final.callPackage (./pkgs/cardano-crypto-wrapper.nix) { }; cardano-data = final.callPackage (./pkgs/cardano-data.nix) { }; @@ -95,10 +97,14 @@ final: prev: with pkgs.haskell.lib; { dependent-sum-template = final.callPackage (./pkgs/dependent-sum-template.nix) { }; + deque = final.callPackage (./pkgs/deque.nix) { }; + deriving-compat = final.callPackage (./pkgs/deriving-compat.nix) { }; dictionary-sharing = final.callPackage (./pkgs/dictionary-sharing.nix) { }; + doctest-discover = final.callPackage (./pkgs/doctest-discover.nix) { }; + dom-lt = final.callPackage (./pkgs/dom-lt.nix) { }; flat = final.callPackage (./pkgs/flat.nix) { }; @@ -117,6 +123,8 @@ final: prev: with pkgs.haskell.lib; { heapwords = final.callPackage (./pkgs/heapwords.nix) { }; + hedgehog-extras = final.callPackage (./pkgs/hedgehog-extras.nix) { }; + hedgehog-fn = final.callPackage (./pkgs/hedgehog-fn.nix) { }; hedgehog-quickcheck = final.callPackage (./pkgs/hedgehog-quickcheck.nix) { }; @@ -125,6 +133,8 @@ final: prev: with pkgs.haskell.lib; { hex-text = final.callPackage (./pkgs/hex-text.nix) { }; + hw-aeson = final.callPackage (./pkgs/hw-aeson.nix) { }; + hxt = final.callPackage (./pkgs/hxt.nix) { }; hxt-charproperties = final.callPackage (./pkgs/hxt-charproperties.nix) { }; @@ -165,6 +175,12 @@ final: prev: with pkgs.haskell.lib; { nothunks = final.callPackage (./pkgs/nothunks.nix) { }; + openapi3 = final.callPackage (./pkgs/openapi3.nix) { }; + + optparse-applicative-fork = final.callPackage (./pkgs/optparse-applicative-fork.nix) { }; + + optparse-generic = final.callPackage (./pkgs/optparse-generic.nix) { }; + partial-order = final.callPackage (./pkgs/partial-order.nix) { }; plutus-core = final.callPackage (./pkgs/plutus-core.nix) { }; @@ -203,10 +219,16 @@ final: prev: with pkgs.haskell.lib; { strict-containers = final.callPackage (./pkgs/strict-containers.nix) { }; + strict-list = final.callPackage (./pkgs/strict-list.nix) { }; + testing-type-modifiers = final.callPackage (./pkgs/testing-type-modifiers.nix) { }; th-desugar = final.callPackage (./pkgs/th-desugar.nix) { }; + time-units = final.callPackage (./pkgs/time-units.nix) { }; + + transformers-except = final.callPackage (./pkgs/transformers-except.nix) { }; + typerep-map = final.callPackage (./pkgs/typerep-map.nix) { }; validation-selective = final.callPackage (./pkgs/validation-selective.nix) { }; diff --git a/pkgs/cardano-crypto-tests.nix b/pkgs/cardano-crypto-tests.nix new file mode 100644 index 0000000000000000000000000000000000000000..68082b4d403f30a9637a77ea6f687593af469c3b --- /dev/null +++ b/pkgs/cardano-crypto-tests.nix @@ -0,0 +1,71 @@ +{ mkDerivation +, QuickCheck +, base +, bytestring +, cardano-binary +, cardano-crypto-class +, cardano-crypto-praos +, cborg +, criterion +, cryptonite +, deepseq +, fetchgit +, formatting +, lib +, nothunks +, pretty-show +, quickcheck-instances +, tasty +, tasty-hunit +, tasty-quickcheck +}: +mkDerivation { + pname = "cardano-crypto-tests"; + version = "2.0.0.1"; + src = fetchgit { + url = "https://github.com/input-output-hk/cardano-base"; + sha256 = "0qn56ahqmy79riwyaq5m0d4vpamdjkkk04b0x8zwlyd5y3pg58xd"; + rev = "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee"; + fetchSubmodules = true; + }; + postUnpack = "sourceRoot+=/cardano-crypto-tests/; echo source root reset to $sourceRoot"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + base + bytestring + cardano-binary + cardano-crypto-class + cardano-crypto-praos + cborg + criterion + cryptonite + deepseq + formatting + nothunks + pretty-show + QuickCheck + quickcheck-instances + tasty + tasty-hunit + tasty-quickcheck + ]; + testHaskellDepends = [ + base + cardano-crypto-class + tasty + tasty-quickcheck + ]; + benchmarkHaskellDepends = [ base cardano-crypto-class criterion ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + description = "Tests for cardano-crypto-class and -praos"; + license = lib.licenses.asl20; + broken = false; +} diff --git a/pkgs/cardano-ledger-api.nix b/pkgs/cardano-ledger-api.nix index e53b9fcd9fa412bc6a663fbc079d03c1b505e2a7..40f91488d394ef96587b12323a5aca60ba8ff5da 100644 --- a/pkgs/cardano-ledger-api.nix +++ b/pkgs/cardano-ledger-api.nix @@ -53,8 +53,8 @@ mkDerivation { tasty tasty-quickcheck ]; - enableLibraryProfiling = true; - enableExecutableProfiling = true; + enableLibraryProfiling = false; + enableExecutableProfiling = false; doHaddock = false; jailbreak = true; doCheck = false; diff --git a/pkgs/deque.nix b/pkgs/deque.nix new file mode 100644 index 0000000000000000000000000000000000000000..7f659138afd09ab4ed66f7893624e13a91ddc83c --- /dev/null +++ b/pkgs/deque.nix @@ -0,0 +1,42 @@ +{ mkDerivation +, QuickCheck +, base +, deepseq +, hashable +, lib +, mtl +, quickcheck-instances +, rerebase +, strict-list +, tasty +, tasty-hunit +, tasty-quickcheck +}: +mkDerivation { + pname = "deque"; + version = "0.4.4"; + sha256 = "d646d82001cc6b1f17a969ab1d479c2f65f31547c1741dfd7d7c12f7709319f4"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ base deepseq hashable mtl strict-list ]; + testHaskellDepends = [ + QuickCheck + quickcheck-instances + rerebase + tasty + tasty-hunit + tasty-quickcheck + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/nikita-volkov/deque"; + description = "Double-ended queues"; + license = lib.licenses.mit; + broken = false; +} diff --git a/pkgs/doctest-discover.nix b/pkgs/doctest-discover.nix new file mode 100644 index 0000000000000000000000000000000000000000..58a61a454920bba09aacc438878f7552473d3825 --- /dev/null +++ b/pkgs/doctest-discover.nix @@ -0,0 +1,45 @@ +{ mkDerivation +, aeson +, base +, bytestring +, directory +, doctest +, filepath +, lib +}: +mkDerivation { + pname = "doctest-discover"; + version = "0.2.0.0"; + sha256 = "a953aa50837e52efc766a77e382c2be2acbc887fa6dadbc54b756f59d6c49ec8"; + isLibrary = true; + isExecutable = true; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + base + bytestring + directory + doctest + filepath + ]; + executableHaskellDepends = [ + aeson + base + bytestring + directory + doctest + filepath + ]; + testHaskellDepends = [ base doctest ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://github.com/karun012/doctest-discover"; + description = "Easy way to run doctests via cabal"; + license = lib.licenses.publicDomain; + broken = false; +} diff --git a/pkgs/hedgehog-extras.nix b/pkgs/hedgehog-extras.nix new file mode 100644 index 0000000000000000000000000000000000000000..358c2cc2e773e118cf0b3306c369f7dd26497898 --- /dev/null +++ b/pkgs/hedgehog-extras.nix @@ -0,0 +1,77 @@ +{ mkDerivation +, aeson +, aeson-pretty +, async +, base +, bytestring +, deepseq +, directory +, exceptions +, fetchgit +, filepath +, hedgehog +, hw-aeson +, lib +, mmorph +, mtl +, network +, process +, resourcet +, stm +, temporary +, text +, time +, transformers +, unliftio +, unordered-containers +, yaml +}: +mkDerivation { + pname = "hedgehog-extras"; + version = "0.2.0.0"; + src = fetchgit { + url = "https://github.com/input-output-hk/hedgehog-extras"; + sha256 = "14fq596n48jx2yys7pzz2rfdssd6hj28z6wb7dl4pjzpkznbwj3a"; + rev = "26b76bbcecfe48d0a87099f213f58e3778aa1f59"; + fetchSubmodules = true; + }; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + aeson-pretty + async + base + bytestring + deepseq + directory + exceptions + filepath + hedgehog + hw-aeson + mmorph + mtl + network + process + resourcet + stm + temporary + text + time + transformers + unliftio + unordered-containers + yaml + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + description = "Supplemental library for hedgehog"; + license = lib.licenses.asl20; + broken = false; +} diff --git a/pkgs/hw-aeson.nix b/pkgs/hw-aeson.nix new file mode 100644 index 0000000000000000000000000000000000000000..fe08b280825059e75ffc5669927c1c7f090a7f7a --- /dev/null +++ b/pkgs/hw-aeson.nix @@ -0,0 +1,56 @@ +{ mkDerivation +, aeson +, base +, bytestring +, containers +, doctest +, doctest-discover +, hashable +, hedgehog +, hspec +, hspec-discover +, lib +, text +, text-short +, unordered-containers +}: +mkDerivation { + pname = "hw-aeson"; + version = "0.1.8.0"; + sha256 = "a20a8e21a2bf49fb33cefd09ab0fd521757280ab15603e837d9b5188df6d07f4"; + revision = "2"; + editedCabalFile = "04vjq54xc354scgzgf863px9fadvw4dr6kgli9rp4plw3sh4k3qg"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + base + bytestring + containers + hashable + text + text-short + unordered-containers + ]; + testHaskellDepends = [ + aeson + base + doctest + doctest-discover + hedgehog + hspec + ]; + testToolDepends = [ doctest-discover hspec-discover ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/haskell-works/hw-aeson#readme"; + description = "Convenience functions for Aeson"; + license = lib.licenses.bsd3; + broken = false; +} diff --git a/pkgs/openapi3.nix b/pkgs/openapi3.nix new file mode 100644 index 0000000000000000000000000000000000000000..09f22ae22bc697acfdcfa85f8768a8abfda8179d --- /dev/null +++ b/pkgs/openapi3.nix @@ -0,0 +1,111 @@ +{ mkDerivation +, Cabal +, Glob +, HUnit +, QuickCheck +, aeson +, aeson-pretty +, base +, base-compat-batteries +, bytestring +, cabal-doctest +, containers +, cookie +, doctest +, generics-sop +, hashable +, hspec +, hspec-discover +, http-media +, insert-ordered-containers +, lens +, lib +, mtl +, network +, optics-core +, optics-th +, quickcheck-instances +, scientific +, template-haskell +, text +, time +, transformers +, unordered-containers +, utf8-string +, uuid-types +, vector +}: +mkDerivation { + pname = "openapi3"; + version = "3.2.2"; + sha256 = "325d491e305de60510f5267b3eccdc2719d4a8e5784577d7e79aef28368d6134"; + revision = "2"; + editedCabalFile = "1yc3wlc8j84glav3hzx1l4yq33k05bll252a8yl6ld275jjswn8p"; + isLibrary = true; + isExecutable = true; + enableSeparateDataOutput = false; + setupHaskellDepends = [ base Cabal cabal-doctest ]; + libraryHaskellDepends = [ + aeson + aeson-pretty + base + base-compat-batteries + bytestring + containers + cookie + generics-sop + hashable + http-media + insert-ordered-containers + lens + mtl + network + optics-core + optics-th + QuickCheck + scientific + template-haskell + text + time + transformers + unordered-containers + uuid-types + vector + ]; + executableHaskellDepends = [ aeson base lens text ]; + testHaskellDepends = [ + aeson + base + base-compat-batteries + bytestring + containers + doctest + Glob + hashable + hspec + HUnit + insert-ordered-containers + lens + mtl + QuickCheck + quickcheck-instances + template-haskell + text + time + unordered-containers + utf8-string + vector + ]; + testToolDepends = [ hspec-discover ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/biocad/openapi3"; + description = "OpenAPI 3.0 data model"; + license = lib.licenses.bsd3; + broken = false; +} diff --git a/pkgs/optparse-applicative-fork.nix b/pkgs/optparse-applicative-fork.nix new file mode 100644 index 0000000000000000000000000000000000000000..d10ca08a91f0791fa5d72f6c436183f43a91e5d8 --- /dev/null +++ b/pkgs/optparse-applicative-fork.nix @@ -0,0 +1,46 @@ +{ mkDerivation +, QuickCheck +, ansi-terminal +, base +, fetchgit +, lib +, prettyprinter +, process +, text +, transformers +, transformers-compat +}: +mkDerivation { + pname = "optparse-applicative-fork"; + version = "0.16.1.0"; + src = fetchgit { + url = "https://github.com/input-output-hk/optparse-applicative/"; + sha256 = "1gvsrg925vynwgqwplgjmp53vj953qyh3wbdf34pw21c8r47w35r"; + rev = "7497a29cb998721a9068d5725d49461f2bba0e7a"; + fetchSubmodules = true; + }; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + ansi-terminal + base + prettyprinter + process + text + transformers + transformers-compat + ]; + testHaskellDepends = [ base QuickCheck ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/pcapriotti/optparse-applicative-fork"; + description = "Utilities and combinators for parsing command line options"; + license = lib.licenses.bsd3; + broken = false; +} diff --git a/pkgs/optparse-generic.nix b/pkgs/optparse-generic.nix new file mode 100644 index 0000000000000000000000000000000000000000..0b79016a6cad47d118f3a5bad7acd54f53a80ccf --- /dev/null +++ b/pkgs/optparse-generic.nix @@ -0,0 +1,45 @@ +{ mkDerivation +, Only +, base +, bytestring +, lib +, optparse-applicative +, system-filepath +, text +, time +, transformers +, transformers-compat +, void +}: +mkDerivation { + pname = "optparse-generic"; + version = "1.4.8"; + sha256 = "aa45862d5c59b21403fbd6f6771fa8047b7c82043efbd38bbe59e08ae5961a81"; + revision = "1"; + editedCabalFile = "0rgh8sy2w7rh5n1sz0jxcq892myplbli15snggi77dflv00ic7zd"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + base + bytestring + Only + optparse-applicative + system-filepath + text + time + transformers + transformers-compat + void + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + description = "Auto-generate a command-line parser for your datatype"; + license = lib.licenses.bsd3; + broken = false; +} diff --git a/pkgs/plutus-preprocessor.nix b/pkgs/plutus-preprocessor.nix index 3643a20976cbe628af7cc30c5d1d63768b9e389e..9bfefda9b76f96a1033b5a187e8e595356d02eaa 100644 --- a/pkgs/plutus-preprocessor.nix +++ b/pkgs/plutus-preprocessor.nix @@ -13,8 +13,8 @@ mkDerivation { isExecutable = true; enableSeparateDataOutput = false; executableHaskellDepends = [ base cardano-ledger-alonzo ]; - enableLibraryProfiling = true; - enableExecutableProfiling = true; + enableLibraryProfiling = false; + enableExecutableProfiling = false; doHaddock = false; jailbreak = true; doCheck = false; diff --git a/pkgs/strict-list.nix b/pkgs/strict-list.nix new file mode 100644 index 0000000000000000000000000000000000000000..5df276ea9d218a42e4a953b04a2396eb7ed3b40d --- /dev/null +++ b/pkgs/strict-list.nix @@ -0,0 +1,41 @@ +{ mkDerivation +, QuickCheck +, base +, deepseq +, hashable +, lib +, quickcheck-instances +, rerebase +, semigroupoids +, tasty +, tasty-hunit +, tasty-quickcheck +}: +mkDerivation { + pname = "strict-list"; + version = "0.1.7"; + sha256 = "70cd8accb5e1f68273b07c6cfe64e27f08815df59e2606bc5ed6f2fdcbb20e36"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ base deepseq hashable semigroupoids ]; + testHaskellDepends = [ + QuickCheck + quickcheck-instances + rerebase + tasty + tasty-hunit + tasty-quickcheck + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/nikita-volkov/strict-list"; + description = "Strict linked list"; + license = lib.licenses.mit; + broken = false; +} diff --git a/pkgs/time-units.nix b/pkgs/time-units.nix new file mode 100644 index 0000000000000000000000000000000000000000..98f0308ebb1e29f3db674c237a84e8b5de7f257a --- /dev/null +++ b/pkgs/time-units.nix @@ -0,0 +1,21 @@ +{ mkDerivation, base, lib }: +mkDerivation { + pname = "time-units"; + version = "1.0.0"; + sha256 = "e181997dd05321f09b21c5e0bf38524ccab51ecc588a6017253cc96db289e099"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ base ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://github.com/acw/time-units"; + description = "A basic library for defining units of time as types"; + license = lib.licenses.bsd3; + broken = false; +} diff --git a/pkgs/transformers-except.nix b/pkgs/transformers-except.nix new file mode 100644 index 0000000000000000000000000000000000000000..7528a39b5be4cd6a8ee75f1e20c5cbd130c4fb27 --- /dev/null +++ b/pkgs/transformers-except.nix @@ -0,0 +1,21 @@ +{ mkDerivation, base, exceptions, lib, text, transformers }: +mkDerivation { + pname = "transformers-except"; + version = "0.1.2"; + sha256 = "9925f82037b9aa9d382e98cff91a6ca12009093b7aaa1f583c91429b6ebcfd03"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ base exceptions text transformers ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://github.com/tmcgilchrist/transformers-either/"; + description = "An Except monad transformer with"; + license = lib.licenses.bsd3; + broken = false; +}