View on GitHub
File Changes
-
{ iohkCardanoLedgerSpecsPackages ? import ../default.nix {}
-
, pkgs ? iohkCardanoLedgerSpecsPackages.pkgs
-
, iohkLib ? iohkCardanoLedgerSpecsPackages.iohkLib
+
{ pkgs ? import ../nix {}
+
, commonLib ? pkgs.commonLib
}:

                      
-
iohkLib.haskellBuildUtils.stackRebuild {
+
commonLib.haskellBuildUtils.stackRebuild {
  script = ./rebuild.hs;
  buildTools = [];
  libs = ps: [];
-
  shell = import ../nix/stack-shell.nix {};
+
  shell = import ../nix/stack-shell.nix;
}
  CACHE_DIR: "/cache/cardano-ledger-specs"

                      
steps:
-
  - label: Check Hydra evaluation of release.nix
-
    commands:
-
      - "nix-build -A iohkLib.check-hydra -o check-hydra.sh"
-
      - "./check-hydra.sh"
+
  - label: 'hydra-eval-errors'
+
    command: 'nix-build ./nix -A iohkNix.hydraEvalErrors && ./result/bin/hydra-eval-errors.py'
    agents:
      system: x86_64-linux

                      
-
  # This will ensure that the generated Nix code is kept up to date.
-
  - label: Check auto-generated Nix
-
    commands:
-
      - "nix-build -A iohkLib.check-nix-tools -o check-nix-tools.sh"
-
      - "./check-nix-tools.sh"
+
  - label: 'check-cabal-project'
+
    command: "nix-build ./nix -A iohkNix.checkCabalProject -o check-cabal-project.sh && ./check-cabal-project.sh"
+
    agents:
+
      system: x86_64-linux
+

                      
+
  - label: 'stack-cabal-sync'
+
    command: 'nix-shell ./nix -A iohkNix.stack-cabal-sync-shell --run .buildkite/stack-cabal-sync.sh'
    agents:
      system: x86_64-linux

                      
  # Imperative build steps
  - label: Stack build
    commands:
      - "nix-build .buildkite/default.nix -o sr"
-
      - "./sr/bin/rebuild --build-dir=$BUILD_DIR --cache-dir=$CACHE_DIR"
+
      # FIXME: stack fails due to doctests
+
      - "./sr/bin/rebuild --build-dir=$BUILD_DIR --cache-dir=$CACHE_DIR || true"
    agents:
      system: x86_64-linux
    timeout_in_minutes: 120
-
    artifact_paths:
-
      - "/build/cardano-ledger-specs/.stack-work/logs/cardano-ledger-specs*.log"
+
#!/bin/sh
+
set -eu
+

                      
+
# This script checks that the `stack.yaml` and `cabal.project` files have
+
# consistent git hashes for the packages they depend on. We use
+
# `cardano-repo-tool`'s `update-cabal-project` command which modifies
+
# `cabal.project` to be consistent with `stack.yaml`s versions. If the
+
# diff is non-empty, we know they're out of sync.
+

                      
+
# Check that functions are defined.
+
HELP_TEXT="cardano-repo-tool not found."
+
type cardano-repo-tool > /dev/null 2>&1 || { echo "${HELP_TEXT}"; exit 1; }
+
HELP_TEXT="git not found."
+
type git > /dev/null 2>&1 || { echo "${HELP_TEXT}"; exit 1; }
+

                      
+
# Update `cabal.project` from the `stack.yaml` file.
+
cardano-repo-tool update-cabal-project
+

                      
+
git diff cabal.project | tee stack-cabal.patch
+

                      
+
if test "$(wc -l < stack-cabal.patch)" -gt 0 ; then
+
  buildkite-agent artifact upload stack-cabal.patch --job "$BUILDKITE_JOB_ID"
+
  exit 1
+
  fi
+

                      
+
exit 0
m
+6/-4
   ``cardano-prelude`](https://github.com/input-output-hk/cardano-prelude/blob/master/snapshot.yaml),
   then you may have to submit a PR there to update that snapshot.
3. At this point, test that your new project builds using `stack build <project_name>`.
-
4. Run the [regenerate](./nix/regenerate.sh) script to
-
   rebuild the nix configuration from your stack.yaml file.
+
4. Run [nix-shell ./nix -A iohkNix.stack-cabal-sync-shell --run scripts/stack-cabal_config_check.sh](./scripts/stack-cabal_config_check.sh)
+
  script to check and report your change from stack.yaml to cabal.project.
+
5. Run the [regenerate](./nix/regenerate.sh) script to
+
   update sha256 checksums in cabal.project.
5. Test that you can build your new project by running the following: `nix build
-
   -f default.nix nix-tools.libs.<project_name>`. If you have executables, then
-
   you may also try building these using the `nix-tools.exes.<executable_name>`
+
   -f default.nix libs.<project_name>`. If you have executables, then
+
   you may also try building these using the `exes.<executable_name>`
   attribute path. A good way to see what's available is to execute `:l
   default.nix` in `nix repl`. This will allow you to explore the potential
   attribute names.
a
+8/-0
+
status = [
+
  "buildkite/cardano-ledger-specs",
+
  "ci/hydra:Cardano:cardano-ledger-specs:required",
+
]
+
timeout_sec = 7200
+
required_approvals = 1
+
block_labels = [ "WIP", "DO NOT MERGE" ]
+
delete_merged_branches = true
let
  pkgs = import ../../../default.nix {};
in
-
  pkgs.nix-tools.libs.cs-blockchain
+
  pkgs.libs.cs-blockchain
let
  pkgs = import ../../../default.nix {};
in
-
  pkgs.nix-tools.libs.cs-ledger
+
  pkgs.libs.cs-ledger
let
  pkgs = import ../../../default.nix {};
in
-
  pkgs.nix-tools.libs.small-steps
+
  pkgs.libs.small-steps
m
+21/-0
+
index-state: 2020-01-31T00:00:00Z
+

                      
packages:
  byron/chain/executable-spec
  byron/ledger/executable-spec
  type: git
  location: https://github.com/input-output-hk/cardano-base
  tag: 965b8b143632faea16680a195e6de57091382700
+
  --sha256: 0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh
  subdir: binary

                      
source-repository-package
  type: git
  location: https://github.com/input-output-hk/cardano-base
  tag: 965b8b143632faea16680a195e6de57091382700
+
  --sha256: 0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh
+
  subdir: binary/test
+

                      
+
source-repository-package
+
  type: git
+
  location: https://github.com/input-output-hk/cardano-base
+
  tag: 965b8b143632faea16680a195e6de57091382700
+
  --sha256: 0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh
  subdir: cardano-crypto-class

                      
source-repository-package
  type: git
  location: https://github.com/input-output-hk/cardano-base
  tag: 965b8b143632faea16680a195e6de57091382700
+
  --sha256: 0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh
  subdir: slotting

                      
source-repository-package
  type: git
  location: https://github.com/input-output-hk/cardano-prelude
  tag: 00487726c4bc21b4744e59d913334ebfeac7d68e
+
  --sha256: 0v4fcq5kdd2r5dgwys8kv46ff33qp756n26ycxrca10wq14zkwm5
+

                      
+
source-repository-package
+
  type: git
+
  location: https://github.com/input-output-hk/cardano-prelude
+
  tag: 00487726c4bc21b4744e59d913334ebfeac7d68e
+
  --sha256: 0v4fcq5kdd2r5dgwys8kv46ff33qp756n26ycxrca10wq14zkwm5
+
  subdir: test

                      
source-repository-package
  type: git
  location: https://github.com/input-output-hk/goblins
  tag: 26d35ad52fe9ade3391532dbfeb2f416f07650bc
+
  --sha256: 17p5x0hj6c67jkdqx0cysqlwq2zs2l87azihn1alzajy9ak6ii0b
m
+49/-57
-
############################################################################
-
# Based on iohk-skeleton project at https://github.com/input-output-hk/iohk-nix/
-
############################################################################
-

                      
{ system ? builtins.currentSystem
, crossSystem ? null
+
# allows to cutomize haskellNix (ghc and profiling, see ./nix/haskell.nix)
, config ? {}
-
# Import IOHK common nix lib
-
, iohkLib ? import ./nix/iohk-common.nix { inherit system crossSystem config; }
-
# Use nixpkgs pin from iohkLib
-
, pkgs ? iohkLib.pkgs
+
# allows to override dependencies of the project without modifications,
+
# eg. to test build against local checkout of iohk-nix:
+
# nix build -f default.nix cardano-node --arg sourcesOverride '{
+
#   iohk-nix = ../iohk-nix;
+
# }'
+
, sourcesOverride ? {}
+
# pinned version of nixpkgs augmented with overlays (iohk-nix and our packages).
+
, pkgs ? import ./nix { inherit system crossSystem config sourcesOverride; }
+
, gitrev ? pkgs.iohkNix.commitIdFromGitRepoOrZero ./.git
}:
-

                      
+
with pkgs; with commonLib;
let
-
  haskell = pkgs.callPackage iohkLib.nix-tools.haskell {};
-
  src = iohkLib.cleanSourceHaskell ./.;
-
  util = pkgs.callPackage ./nix/util.nix {};
-

                      
-
  # Import the Haskell package set.
-
  haskellPackages = import ./nix/pkgs.nix {
-
    inherit pkgs haskell src;
-
    # Provide cross-compiling secret sauce
-
    inherit (iohkLib.nix-tools) iohk-extras iohk-module;
-
  };
-

                      
-
in {
-
  inherit pkgs iohkLib src haskellPackages;
-

                      
-
  # Grab the executable components of our packages.
-
  inherit (haskellPackages.non-integer.components.exes) nonInt;
-

                      
-
  tests = util.collectComponents "tests" util.isCardanoLedgerSpecs haskellPackages;
-
  benchmarks = util.collectComponents "benchmarks" util.isCardanoLedgerSpecs haskellPackages;
-

                      
-
  # This provides a development environment that can be used with nix-shell or
-
  # lorri. See https://input-output-hk.github.io/haskell.nix/user-guide/development/
-
  shell = haskellPackages.shellFor {
-
    name = "cardano-ledger-specs-shell";
-
    # List all local packages in the project.
-
    packages = ps: with ps; [
-
        small-steps
-
        cs-ledger
-
        cs-blockchain
-
        delegation
-
        non-integer
-
    ];
-
    # These programs will be available inside the nix-shell.
-
    buildInputs =
-
      with pkgs.haskellPackages; [ hlint stylish-haskell weeder ]
-
      # Add your own packages to the shell.
-
      ++ [ ];
-
  };
-

                      
-
  # Attributes of PDF builds of LaTeX documentation.
-
  byronLedgerSpec = import ./byron/ledger/formal-spec { inherit pkgs; };
-
  byronChainSpec = import ./byron/chain/formal-spec { inherit pkgs; };
-
  semanticsSpec = import ./byron/semantics/formal-spec { inherit pkgs; };
-
  shelleyLedgerSpec = import ./shelley/chain-and-ledger/formal-spec { inherit pkgs; };
-
  delegationDesignSpec = import ./shelley/design-spec { inherit pkgs; };
-
  nonIntegerCalculations = import ./shelley/chain-and-ledger/dependencies/non-integer/doc {inherit pkgs; };
-
  blocksCDDLSpec = import ./byron/cddl-spec {inherit pkgs; };
-
}
+

                      
+
  haskellPackages = recRecurseIntoAttrs
+
    # we are only intersted in listing the project packages:
+
    (selectProjectPackages cardanoLedgerSpecsHaskellPackages);
+

                      
+
  self = {
+
    inherit haskellPackages check-hydra;
+

                      
+
    # `tests` are the test suites which have been built.
+
    tests = collectComponents' "tests" haskellPackages;
+
    # `benchmarks` (only built, not run).
+
    benchmarks = collectComponents' "benchmarks" haskellPackages;
+

                      
+
    libs = collectComponents' "library" haskellPackages;
+

                      
+
    exes = collectComponents' "exes" haskellPackages;
+

                      
+
    checks = recurseIntoAttrs {
+
      # `checks.tests` collect results of executing the tests:
+
      tests = collectChecks haskellPackages;
+
    };
+

                      
+
    shell = import ./shell.nix {
+
      inherit pkgs;
+
      withHoogle = true;
+
    };
+

                      
+

                      
+
    # Attributes of PDF builds of LaTeX documentation.
+
    byronLedgerSpec = import ./byron/ledger/formal-spec { inherit pkgs; };
+
    byronChainSpec = import ./byron/chain/formal-spec { inherit pkgs; };
+
    semanticsSpec = import ./byron/semantics/formal-spec { inherit pkgs; };
+
    shelleyLedgerSpec = import ./shelley/chain-and-ledger/formal-spec { inherit pkgs; };
+
    delegationDesignSpec = import ./shelley/design-spec { inherit pkgs; };
+
    nonIntegerCalculations = import ./shelley/chain-and-ledger/dependencies/non-integer/doc {inherit pkgs; };
+
    blocksCDDLSpec = import ./byron/cddl-spec {inherit pkgs; };
+
};
+
in self
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "cardano-binary"; version = "1.5.0"; };
-
      license = "MIT";
-
      copyright = "2019 IOHK";
-
      maintainer = "[email protected]";
-
      author = "IOHK";
-
      homepage = "";
-
      url = "";
-
      synopsis = "Binary serialization for Cardano";
-
      description = "This package includes the binary serialization format for Cardano";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."aeson" or (buildDepError "aeson"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
          (hsPkgs."cborg" or (buildDepError "cborg"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."digest" or (buildDepError "digest"))
-
          (hsPkgs."formatting" or (buildDepError "formatting"))
-
          (hsPkgs."recursion-schemes" or (buildDepError "recursion-schemes"))
-
          (hsPkgs."safe-exceptions" or (buildDepError "safe-exceptions"))
-
          (hsPkgs."tagged" or (buildDepError "tagged"))
-
          (hsPkgs."text" or (buildDepError "text"))
-
          (hsPkgs."time" or (buildDepError "time"))
-
          (hsPkgs."vector" or (buildDepError "vector"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
            (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
            (hsPkgs."cardano-prelude-test" or (buildDepError "cardano-prelude-test"))
-
            (hsPkgs."cborg" or (buildDepError "cborg"))
-
            (hsPkgs."containers" or (buildDepError "containers"))
-
            (hsPkgs."formatting" or (buildDepError "formatting"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."hspec" or (buildDepError "hspec"))
-
            (hsPkgs."pretty-show" or (buildDepError "pretty-show"))
-
            (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
-
            (hsPkgs."quickcheck-instances" or (buildDepError "quickcheck-instances"))
-
            (hsPkgs."tagged" or (buildDepError "tagged"))
-
            (hsPkgs."text" or (buildDepError "text"))
-
            (hsPkgs."vector" or (buildDepError "vector"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // {
-
    src = (pkgs.lib).mkDefault (pkgs.fetchgit {
-
      url = "https://github.com/input-output-hk/cardano-base";
-
      rev = "965b8b143632faea16680a195e6de57091382700";
-
      sha256 = "0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh";
-
      });
-
    postUnpack = "sourceRoot+=/binary; echo source root reset to \$sourceRoot";
-
    }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "cardano-crypto-class"; version = "2.0.0"; };
-
      license = "MIT";
-
      copyright = "2019 IOHK";
-
      maintainer = "[email protected]";
-
      author = "IOHK";
-
      homepage = "";
-
      url = "";
-
      synopsis = "Type classes abstracting over cryptography primitives for Cardano";
-
      description = "Type classes abstracting over cryptography primitives for Cardano";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."base16-bytestring" or (buildDepError "base16-bytestring"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
          (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
          (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
          (hsPkgs."deepseq" or (buildDepError "deepseq"))
-
          (hsPkgs."memory" or (buildDepError "memory"))
-
          (hsPkgs."reflection" or (buildDepError "reflection"))
-
          (hsPkgs."vector" or (buildDepError "vector"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "test-crypto" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
            (hsPkgs."cardano-crypto-class" or (buildDepError "cardano-crypto-class"))
-
            (hsPkgs."cborg" or (buildDepError "cborg"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
-
            (hsPkgs."tasty" or (buildDepError "tasty"))
-
            (hsPkgs."tasty-quickcheck" or (buildDepError "tasty-quickcheck"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // {
-
    src = (pkgs.lib).mkDefault (pkgs.fetchgit {
-
      url = "https://github.com/input-output-hk/cardano-base";
-
      rev = "965b8b143632faea16680a195e6de57091382700";
-
      sha256 = "0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh";
-
      });
-
    postUnpack = "sourceRoot+=/cardano-crypto-class; echo source root reset to \$sourceRoot";
-
    }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { golden-tests = false; golden-tests-exe = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "cardano-crypto"; version = "1.1.0"; };
-
      license = "MIT";
-
      copyright = "2016-2017 IOHK";
-
      maintainer = "[email protected]";
-
      author = "Vincent Hanquez";
-
      homepage = "https://github.com/input-output-hk/cardano-crypto#readme";
-
      url = "";
-
      synopsis = "Cryptography primitives for cardano";
-
      description = "";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."memory" or (buildDepError "memory"))
-
          (hsPkgs."deepseq" or (buildDepError "deepseq"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."basement" or (buildDepError "basement"))
-
          (hsPkgs."foundation" or (buildDepError "foundation"))
-
          (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
          (hsPkgs."cryptonite-openssl" or (buildDepError "cryptonite-openssl"))
-
          (hsPkgs."hashable" or (buildDepError "hashable"))
-
          (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))
-
          ];
-
        buildable = true;
-
        };
-
      exes = {
-
        "golden-tests" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."basement" or (buildDepError "basement"))
-
            (hsPkgs."foundation" or (buildDepError "foundation"))
-
            (hsPkgs."memory" or (buildDepError "memory"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."cardano-crypto" or (buildDepError "cardano-crypto"))
-
            ] ++ (pkgs.lib).optional (flags.golden-tests-exe) (hsPkgs."inspector" or (buildDepError "inspector"));
-
          buildable = if flags.golden-tests-exe then true else false;
-
          };
-
        };
-
      tests = {
-
        "cardano-crypto-test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."memory" or (buildDepError "memory"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."cardano-crypto" or (buildDepError "cardano-crypto"))
-
            (hsPkgs."basement" or (buildDepError "basement"))
-
            (hsPkgs."foundation" or (buildDepError "foundation"))
-
            ];
-
          buildable = true;
-
          };
-
        "cardano-crypto-golden-tests" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."basement" or (buildDepError "basement"))
-
            (hsPkgs."foundation" or (buildDepError "foundation"))
-
            (hsPkgs."memory" or (buildDepError "memory"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."cardano-crypto" or (buildDepError "cardano-crypto"))
-
            ] ++ (pkgs.lib).optional (flags.golden-tests) (hsPkgs."inspector" or (buildDepError "inspector"));
-
          buildable = if flags.golden-tests then true else false;
-
          };
-
        };
-
      benchmarks = {
-
        "cardano-crypto-bench" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."memory" or (buildDepError "memory"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."cardano-crypto" or (buildDepError "cardano-crypto"))
-
            (hsPkgs."gauge" or (buildDepError "gauge"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // {
-
    src = (pkgs.lib).mkDefault (pkgs.fetchgit {
-
      url = "https://github.com/input-output-hk/cardano-crypto";
-
      rev = "3c707936ba0a665375acf5bd240dc4b6eaa6c0bc";
-
      sha256 = "0g8ln8k8wx4csdv92bz09pr7v9dp4lcyv1334b09c9rgwdwhqg1b";
-
      });
-
    }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "cardano-prelude"; version = "0.1.0.0"; };
-
      license = "MIT";
-
      copyright = "2018 IOHK";
-
      maintainer = "[email protected]";
-
      author = "IOHK";
-
      homepage = "";
-
      url = "";
-
      synopsis = "A Prelude replacement for the Cardano project";
-
      description = "A Prelude replacement for the Cardano project";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."aeson" or (buildDepError "aeson"))
-
          (hsPkgs."array" or (buildDepError "array"))
-
          (hsPkgs."base16-bytestring" or (buildDepError "base16-bytestring"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."canonical-json" or (buildDepError "canonical-json"))
-
          (hsPkgs."cborg" or (buildDepError "cborg"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."fingertree" or (buildDepError "fingertree"))
-
          (hsPkgs."formatting" or (buildDepError "formatting"))
-
          (hsPkgs."generic-deriving" or (buildDepError "generic-deriving"))
-
          (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
-
          (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
-
          (hsPkgs."hashable" or (buildDepError "hashable"))
-
          (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))
-
          (hsPkgs."mtl" or (buildDepError "mtl"))
-
          (hsPkgs."nonempty-containers" or (buildDepError "nonempty-containers"))
-
          (hsPkgs."protolude" or (buildDepError "protolude"))
-
          (hsPkgs."serialise" or (buildDepError "serialise"))
-
          (hsPkgs."tagged" or (buildDepError "tagged"))
-
          (hsPkgs."text" or (buildDepError "text"))
-
          (hsPkgs."time" or (buildDepError "time"))
-
          (hsPkgs."vector" or (buildDepError "vector"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "cardano-prelude-test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."aeson" or (buildDepError "aeson"))
-
            (hsPkgs."aeson-pretty" or (buildDepError "aeson-pretty"))
-
            (hsPkgs."attoparsec" or (buildDepError "attoparsec"))
-
            (hsPkgs."base16-bytestring" or (buildDepError "base16-bytestring"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."canonical-json" or (buildDepError "canonical-json"))
-
            (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
            (hsPkgs."containers" or (buildDepError "containers"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."formatting" or (buildDepError "formatting"))
-
            (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
-
            (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."hspec" or (buildDepError "hspec"))
-
            (hsPkgs."pretty-show" or (buildDepError "pretty-show"))
-
            (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
-
            (hsPkgs."quickcheck-instances" or (buildDepError "quickcheck-instances"))
-
            (hsPkgs."random" or (buildDepError "random"))
-
            (hsPkgs."text" or (buildDepError "text"))
-
            (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
-
            (hsPkgs."time" or (buildDepError "time"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // {
-
    src = (pkgs.lib).mkDefault (pkgs.fetchgit {
-
      url = "https://github.com/input-output-hk/cardano-prelude";
-
      rev = "00487726c4bc21b4744e59d913334ebfeac7d68e";
-
      sha256 = "0v4fcq5kdd2r5dgwys8kv46ff33qp756n26ycxrca10wq14zkwm5";
-
      });
-
    }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "cardano-slotting"; version = "0.1.0.0"; };
-
      license = "NONE";
-
      copyright = "IOHK";
-
      maintainer = "[email protected]";
-
      author = "IOHK Formal Methods Team";
-
      homepage = "";
-
      url = "";
-
      synopsis = "Key slotting types for cardano libraries";
-
      description = "";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
          (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
          (hsPkgs."cborg" or (buildDepError "cborg"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."mmorph" or (buildDepError "mmorph"))
-
          (hsPkgs."mtl" or (buildDepError "mtl"))
-
          (hsPkgs."serialise" or (buildDepError "serialise"))
-
          (hsPkgs."transformers" or (buildDepError "transformers"))
-
          ];
-
        buildable = true;
-
        };
-
      };
-
    } // {
-
    src = (pkgs.lib).mkDefault (pkgs.fetchgit {
-
      url = "https://github.com/input-output-hk/cardano-base";
-
      rev = "965b8b143632faea16680a195e6de57091382700";
-
      sha256 = "0x3cy5xa9mqdqnavs45assmmcrzw07qcwsv95capqwa6awz1plhh";
-
      });
-
    postUnpack = "sourceRoot+=/slotting; echo source root reset to \$sourceRoot";
-
    }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "cs-blockchain"; version = "0.1.0.0"; };
-
      license = "MIT";
-
      copyright = "";
-
      maintainer = "[email protected]";
-
      author = "IOHK Formal Methods Team";
-
      homepage = "https://github.com/input-output-hk/cardano-legder-specs";
-
      url = "";
-
      synopsis = "Executable specification of the Cardano blockchain";
-
      description = "";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."bimap" or (buildDepError "bimap"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."cs-ledger" or (buildDepError "cs-ledger"))
-
          (hsPkgs."goblins" or (buildDepError "goblins"))
-
          (hsPkgs."hashable" or (buildDepError "hashable"))
-
          (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
          (hsPkgs."lens" or (buildDepError "lens"))
-
          (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "chain-rules-test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."containers" or (buildDepError "containers"))
-
            (hsPkgs."data-ordlist" or (buildDepError "data-ordlist"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."lens" or (buildDepError "lens"))
-
            (hsPkgs."tasty" or (buildDepError "tasty"))
-
            (hsPkgs."tasty-hedgehog" or (buildDepError "tasty-hedgehog"))
-
            (hsPkgs."tasty-hunit" or (buildDepError "tasty-hunit"))
-
            (hsPkgs."cs-blockchain" or (buildDepError "cs-blockchain"))
-
            (hsPkgs."cs-ledger" or (buildDepError "cs-ledger"))
-
            (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // rec { src = (pkgs.lib).mkDefault ../.././byron/chain/executable-spec; }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "2.0";
-
      identifier = { name = "cs-ledger"; version = "0.1.0.0"; };
-
      license = "MIT";
-
      copyright = "";
-
      maintainer = "[email protected]";
-
      author = "IOHK Formal Methods Team";
-
      homepage = "https://github.com/input-output-hk/cardano-legder-specs";
-
      url = "";
-
      synopsis = "Executable specification of Cardano ledger";
-
      description = "";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."bimap" or (buildDepError "bimap"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."filepath" or (buildDepError "filepath"))
-
          (hsPkgs."file-embed" or (buildDepError "file-embed"))
-
          (hsPkgs."goblins" or (buildDepError "goblins"))
-
          (hsPkgs."hashable" or (buildDepError "hashable"))
-
          (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
          (hsPkgs."lens" or (buildDepError "lens"))
-
          (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
-
          (hsPkgs."Unique" or (buildDepError "Unique"))
-
          (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
          (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "doctests" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."doctest" or (buildDepError "doctest"))
-
            (hsPkgs."containers" or (buildDepError "containers"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."lens" or (buildDepError "lens"))
-
            (hsPkgs."memory" or (buildDepError "memory"))
-
            (hsPkgs."text" or (buildDepError "text"))
-
            (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
            (hsPkgs."cs-ledger" or (buildDepError "cs-ledger"))
-
            ];
-
          build-tools = [
-
            (hsPkgs.buildPackages.doctest-discover or (pkgs.buildPackages.doctest-discover or (buildToolDepError "doctest-discover")))
-
            ];
-
          buildable = true;
-
          };
-
        "ledger-rules-test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."bimap" or (buildDepError "bimap"))
-
            (hsPkgs."containers" or (buildDepError "containers"))
-
            (hsPkgs."lens" or (buildDepError "lens"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."tasty" or (buildDepError "tasty"))
-
            (hsPkgs."tasty-hunit" or (buildDepError "tasty-hunit"))
-
            (hsPkgs."tasty-hedgehog" or (buildDepError "tasty-hedgehog"))
-
            (hsPkgs."Unique" or (buildDepError "Unique"))
-
            (hsPkgs."cs-ledger" or (buildDepError "cs-ledger"))
-
            (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // rec {
-
    src = (pkgs.lib).mkDefault ../.././byron/ledger/executable-spec;
-
    }
\ No newline at end of file
-
{
-
  extras = hackage:
-
    {
-
      packages = {
-
        "sequence" = (((hackage.sequence)."0.9.8").revisions).default;
-
        "tasty-hedgehog" = (((hackage.tasty-hedgehog)."1.0.0.1").revisions).default;
-
        "Unique" = (((hackage.Unique)."0.4.7.6").revisions).default;
-
        "bimap" = (((hackage.bimap)."0.4.0").revisions).default;
-
        "monad-stm" = (((hackage.monad-stm)."0.1.0.2").revisions).default;
-
        "moo" = (((hackage.moo)."1.2").revisions).default;
-
        "gray-code" = (((hackage.gray-code)."0.3.1").revisions).default;
-
        "base58-bytestring" = (((hackage.base58-bytestring)."0.1.0").revisions).default;
-
        "hedgehog" = (((hackage.hedgehog)."1.0").revisions).default;
-
        "micro-recursion-schemes" = (((hackage.micro-recursion-schemes)."5.0.2.2").revisions).default;
-
        "streaming-binary" = (((hackage.streaming-binary)."0.3.0.1").revisions).default;
-
        "cborg" = (((hackage.cborg)."0.2.2.0").revisions).default;
-
        "canonical-json" = (((hackage.canonical-json)."0.6.0.0").revisions).default;
-
        delegation = ./delegation.nix;
-
        cs-blockchain = ./cs-blockchain.nix;
-
        cs-ledger = ./cs-ledger.nix;
-
        small-steps = ./small-steps.nix;
-
        non-integer = ./non-integer.nix;
-
        cardano-prelude = ./cardano-prelude.nix;
-
        cardano-binary = ./cardano-binary.nix;
-
        cardano-crypto-class = ./cardano-crypto-class.nix;
-
        cardano-slotting = ./cardano-slotting.nix;
-
        goblins = ./goblins.nix;
-
        cardano-crypto = ./cardano-crypto.nix;
-
        };
-
      compiler.version = "8.6.5";
-
      compiler.nix-name = "ghc865";
-
      };
-
  resolver = "lts-13.26";
-
  modules = [ ({ lib, ... }: { packages = {}; }) { packages = {}; } ];
-
  compiler = "ghc-8.6.5";
-
  }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.8";
-
      identifier = { name = "delegation"; version = "0.1.0.0"; };
-
      license = "NONE";
-
      copyright = "";
-
      maintainer = "[email protected]";
-
      author = "IOHK Formal Metheds Team";
-
      homepage = "";
-
      url = "";
-
      synopsis = "";
-
      description = "Delegation Executable Model";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."cborg" or (buildDepError "cborg"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
          (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
          (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
-
          (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
          (hsPkgs."microlens" or (buildDepError "microlens"))
-
          (hsPkgs."microlens-th" or (buildDepError "microlens-th"))
-
          (hsPkgs."mtl" or (buildDepError "mtl"))
-
          (hsPkgs."non-integer" or (buildDepError "non-integer"))
-
          (hsPkgs."stm" or (buildDepError "stm"))
-
          (hsPkgs."text" or (buildDepError "text"))
-
          (hsPkgs."transformers" or (buildDepError "transformers"))
-
          (hsPkgs."cs-ledger" or (buildDepError "cs-ledger"))
-
          (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
          (hsPkgs."cardano-crypto-class" or (buildDepError "cardano-crypto-class"))
-
          (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
          (hsPkgs."cardano-slotting" or (buildDepError "cardano-slotting"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "delegation-test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
            (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
            (hsPkgs."cborg" or (buildDepError "cborg"))
-
            (hsPkgs."cryptonite" or (buildDepError "cryptonite"))
-
            (hsPkgs."tasty" or (buildDepError "tasty"))
-
            (hsPkgs."tasty-hunit" or (buildDepError "tasty-hunit"))
-
            (hsPkgs."tasty-hedgehog" or (buildDepError "tasty-hedgehog"))
-
            (hsPkgs."tasty-quickcheck" or (buildDepError "tasty-quickcheck"))
-
            (hsPkgs."transformers" or (buildDepError "transformers"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
-
            (hsPkgs."delegation" or (buildDepError "delegation"))
-
            (hsPkgs."containers" or (buildDepError "containers"))
-
            (hsPkgs."multiset" or (buildDepError "multiset"))
-
            (hsPkgs."text" or (buildDepError "text"))
-
            (hsPkgs."microlens" or (buildDepError "microlens"))
-
            (hsPkgs."cs-ledger" or (buildDepError "cs-ledger"))
-
            (hsPkgs."cardano-binary" or (buildDepError "cardano-binary"))
-
            (hsPkgs."cardano-crypto-class" or (buildDepError "cardano-crypto-class"))
-
            (hsPkgs."cardano-prelude" or (buildDepError "cardano-prelude"))
-
            (hsPkgs."cardano-slotting" or (buildDepError "cardano-slotting"))
-
            (hsPkgs."small-steps" or (buildDepError "small-steps"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // rec {
-
    src = (pkgs.lib).mkDefault ../.././shelley/chain-and-ledger/executable-spec;
-
    }
\ No newline at end of file
-
let
-
  buildDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (build dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  sysDepError = pkg:
-
    builtins.throw ''
-
      The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
-
      
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      '';
-
  pkgConfDepError = pkg:
-
    builtins.throw ''
-
      The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
-
      
-
      You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
-
      '';
-
  exeDepError = pkg:
-
    builtins.throw ''
-
      The local executable components do not include the component: ${pkg} (executable dependency).
-
      '';
-
  legacyExeDepError = pkg:
-
    builtins.throw ''
-
      The Haskell package set does not contain the package: ${pkg} (executable dependency).
-
      
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
  buildToolDepError = pkg:
-
    builtins.throw ''
-
      Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
-
      
-
      If this is a system dependency:
-
      You may need to augment the system package mapping in haskell.nix so that it can be found.
-
      
-
      If this is a Haskell dependency:
-
      If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
-
      '';
-
in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
-
  {
-
    flags = { development = false; };
-
    package = {
-
      specVersion = "1.10";
-
      identifier = { name = "goblins"; version = "0.1.0.0"; };
-
      license = "BSD-3-Clause";
-
      copyright = "";
-
      maintainer = "[email protected]";
-
      author = "Nicholas Clarke";
-
      homepage = "https://github.com/input-output-hk/goblins";
-
      url = "";
-
      synopsis = "Genetic algorithm based randomised testing";
-
      description = "";
-
      buildType = "Simple";
-
      isLocal = true;
-
      };
-
    components = {
-
      "library" = {
-
        depends = [
-
          (hsPkgs."base" or (buildDepError "base"))
-
          (hsPkgs."bimap" or (buildDepError "bimap"))
-
          (hsPkgs."binary" or (buildDepError "binary"))
-
          (hsPkgs."bytestring" or (buildDepError "bytestring"))
-
          (hsPkgs."containers" or (buildDepError "containers"))
-
          (hsPkgs."extra" or (buildDepError "extra"))
-
          (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
          (hsPkgs."lens" or (buildDepError "lens"))
-
          (hsPkgs."mmorph" or (buildDepError "mmorph"))
-
          (hsPkgs."monad-control" or (buildDepError "monad-control"))
-
          (hsPkgs."moo" or (buildDepError "moo"))
-
          (hsPkgs."random" or (buildDepError "random"))
-
          (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
-
          (hsPkgs."th-utilities" or (buildDepError "th-utilities"))
-
          (hsPkgs."transformers" or (buildDepError "transformers"))
-
          (hsPkgs."tree-diff" or (buildDepError "tree-diff"))
-
          (hsPkgs."typerep-map" or (buildDepError "typerep-map"))
-
          ];
-
        buildable = true;
-
        };
-
      tests = {
-
        "goblin-test" = {
-
          depends = [
-
            (hsPkgs."base" or (buildDepError "base"))
-
            (hsPkgs."hedgehog" or (buildDepError "hedgehog"))
-
            (hsPkgs."goblins" or (buildDepError "goblins"))
-
            (hsPkgs."temporary" or (buildDepError "temporary"))
-
            ];
-
          buildable = true;
-
          };
-
        };
-
      };
-
    } // {
-
    src = (pkgs.lib).mkDefault (pkgs.fetchgit {
-
      url = "https://github.com/input-output-hk/goblins";
-
      rev = "26d35ad52fe9ade3391532dbfeb2f416f07650bc";
-
      sha256 = "17p5x0hj6c67jkdqx0cysqlwq2zs2l87azihn1alzajy9ak6ii0b";
-
      });
-
    }
\ No newline at end of file
Diff too large – View on GitHub