From 6e0c7fe534c34134f25f83a59f610a05ab68bfb1 Mon Sep 17 00:00:00 2001 From: Kayvan Kazeminejad Date: Mon, 27 Mar 2023 14:07:03 -0700 Subject: [PATCH] Orig. marconi migration from plutus-apps Migrating marconi related modules and corresponding git history from plutus-apps repository. This effort does not address CI related tasks. Additionally adding: - docs related files - nix standard related files/directories - remove legacy nix folder --- CONTRIBUTING.adoc | 62 +- README.adoc | 77 +- __std__/README.md | 42 +- __std__/cells/automation/hydra-jobs.nix | 14 +- __std__/cells/marconi/devcontainer/README.md | 26 + .../cells/marconi/devcontainer/default.nix | 6 + .../devcontainer-docker-image.nix | 149 + .../devcontainer-push-docker-image.nix | 32 + __std__/cells/marconi/devshells/default.nix | 6 + .../cells/marconi/devshells/marconi-shell.nix | 148 + .../library/cabal-project-index-state.nix | 5 + .../cells/marconi/library/cardano-node.nix | 15 + .../cells/marconi/library/combine-haddock.nix | 112 + __std__/cells/marconi/library/default.nix | 24 + .../marconi/library/ghc-compiler-nix-name.nix | 5 + .../marconi/library/gitignore-source.nix | 5 + .../haskell-language-server-project.nix | 32 + .../marconi/library/make-marconi-project.nix | 148 + .../cells/marconi/library/marconi-project.nix | 6 + __std__/cells/marconi/library/pkgs.nix | 31 + __std__/cells/marconi/packages/cabal-fmt.nix | 27 + .../cells/marconi/packages/cabal-install.nix | 19 + .../cells/marconi/packages/cardano-wallet.nix | 32 + .../marconi/packages/check-the-flake.nix | 43 + .../packages/combined-plutus-apps-haddock.nix | 37 + __std__/cells/marconi/packages/default.nix | 69 + .../cells/marconi/packages/fix-cabal-fmt.nix | 22 + .../marconi/packages/fix-png-optimization.nix | 17 + .../marconi/packages/fix-stylish-haskell.nix | 22 + __std__/cells/marconi/packages/ghc.nix | 5 + .../haskell-language-server-wrapper.nix | 19 + __std__/cells/marconi/packages/hie-bios.nix | 5 + __std__/cells/marconi/packages/hlint.nix | 5 + .../marconi/packages/marconi-chain-index.nix | 4 + .../marconi/packages/marconi-sidechain.nix | 3 + .../cells/marconi/packages/nixpkgs-fmt.nix | 29 + .../marconi/packages/pre-commit-check.nix | 43 + __std__/cells/marconi/packages/repo-root.nix | 9 + __std__/cells/marconi/packages/scriv.nix | 35 + .../packages/sphinx-markdown-tables.nix | 29 + .../marconi/packages/sphinx-toolchain.nix | 18 + .../marconi/packages/sphinxcontrib-bibtex.nix | 14 + .../packages/sphinxcontrib-haddock.nix | 7 + .../cells/marconi/packages/sphinxemoji.nix | 29 + .../marconi/packages/stylish-haskell.nix | 5 + cabal.project | 65 +- flake.lock | 4229 ++++++++++++++--- flake.nix | 23 +- 48 files changed, 4850 insertions(+), 959 deletions(-) create mode 100644 __std__/cells/marconi/devcontainer/README.md create mode 100644 __std__/cells/marconi/devcontainer/default.nix create mode 100644 __std__/cells/marconi/devcontainer/devcontainer-docker-image.nix create mode 100644 __std__/cells/marconi/devcontainer/devcontainer-push-docker-image.nix create mode 100644 __std__/cells/marconi/devshells/default.nix create mode 100644 __std__/cells/marconi/devshells/marconi-shell.nix create mode 100644 __std__/cells/marconi/library/cabal-project-index-state.nix create mode 100644 __std__/cells/marconi/library/cardano-node.nix create mode 100644 __std__/cells/marconi/library/combine-haddock.nix create mode 100644 __std__/cells/marconi/library/default.nix create mode 100644 __std__/cells/marconi/library/ghc-compiler-nix-name.nix create mode 100644 __std__/cells/marconi/library/gitignore-source.nix create mode 100644 __std__/cells/marconi/library/haskell-language-server-project.nix create mode 100644 __std__/cells/marconi/library/make-marconi-project.nix create mode 100644 __std__/cells/marconi/library/marconi-project.nix create mode 100644 __std__/cells/marconi/library/pkgs.nix create mode 100644 __std__/cells/marconi/packages/cabal-fmt.nix create mode 100644 __std__/cells/marconi/packages/cabal-install.nix create mode 100644 __std__/cells/marconi/packages/cardano-wallet.nix create mode 100644 __std__/cells/marconi/packages/check-the-flake.nix create mode 100644 __std__/cells/marconi/packages/combined-plutus-apps-haddock.nix create mode 100644 __std__/cells/marconi/packages/default.nix create mode 100644 __std__/cells/marconi/packages/fix-cabal-fmt.nix create mode 100644 __std__/cells/marconi/packages/fix-png-optimization.nix create mode 100644 __std__/cells/marconi/packages/fix-stylish-haskell.nix create mode 100644 __std__/cells/marconi/packages/ghc.nix create mode 100644 __std__/cells/marconi/packages/haskell-language-server-wrapper.nix create mode 100644 __std__/cells/marconi/packages/hie-bios.nix create mode 100644 __std__/cells/marconi/packages/hlint.nix create mode 100644 __std__/cells/marconi/packages/marconi-chain-index.nix create mode 100644 __std__/cells/marconi/packages/marconi-sidechain.nix create mode 100644 __std__/cells/marconi/packages/nixpkgs-fmt.nix create mode 100644 __std__/cells/marconi/packages/pre-commit-check.nix create mode 100644 __std__/cells/marconi/packages/repo-root.nix create mode 100644 __std__/cells/marconi/packages/scriv.nix create mode 100644 __std__/cells/marconi/packages/sphinx-markdown-tables.nix create mode 100644 __std__/cells/marconi/packages/sphinx-toolchain.nix create mode 100644 __std__/cells/marconi/packages/sphinxcontrib-bibtex.nix create mode 100644 __std__/cells/marconi/packages/sphinxcontrib-haddock.nix create mode 100644 __std__/cells/marconi/packages/sphinxemoji.nix create mode 100644 __std__/cells/marconi/packages/stylish-haskell.nix diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc index cf16efdb32..368d8fed44 100644 --- a/CONTRIBUTING.adoc +++ b/CONTRIBUTING.adoc @@ -1,4 +1,4 @@ -= Contributing to Plutus Apps += Contributing to Marconi :toc: left :reproducible: @@ -10,7 +10,7 @@ Thanks to Nix we ensure that everyone has consistent versions of the tools that Please use Nix since problems due to mismatched versions of tools are particularly annoying to fix! -If you _really_ cannot use Nix and still want to contribute to Plutus then xref:develop-without-nix[skip to the relevant section]. +If you _really_ cannot use Nix and still want to contribute to Marconi then xref:develop-without-nix[skip to the relevant section]. === Installing and setting up Nix @@ -98,7 +98,7 @@ On NixOS, add the user/group name to the list under [`nix.settings.trusted-users === What to do once inside the `nix develop` shell -Your prompt will change to `[plutus-shell]` and you will be presented with a menu of available commands. +Your prompt will change to `[marconi]` and you will be presented with a menu of available commands. Please read that menu carefully. @@ -109,7 +109,7 @@ From here you can build the project packages directly with `cabal`. NOTE: You may need to run `cabal update` so that `cabal` knows about the index state xref:update-index-state[we have pinned]. -Run `cabal build plutus-core` from the root to build the Plutus Core library. +Run `cabal build all` from the root to build all marconi modules. See the link:./cabal.project[cabal project file] for a list of other packages that you can build with `cabal`. @@ -126,9 +126,9 @@ We don't have a `hie.yaml`, the implicit cradle support in HLS seems to work fin Haskell components are provisioned by Nix via link:https://github.com/input-output-hk/haskell.nix[Haskell.nix] -In general you can run `nix build .#SYSTEM.plutus.library.plutus-project.hsPkgs.PACKAGE.components.COMPONENT` +In general you can run `nix build .#SYSTEM.marconi.library.marconi-project.hsPkgs.PACKAGE.components.COMPONENT` -For example `nix build .#x86_64-linux.plutus.library.plutus-project.hsPkgs.plutus-core.components.library` +For example `nix build .#x86_64-linux.marconi.library.marconi-project.hsPkgs.marconi-sidechain.components.library` to build marconi-sidechain. For full documentation about the Nix code see the link:nix/README.md[Nix README]. @@ -196,7 +196,7 @@ In particular, we should not release our packages while we depend on a `source-r If we are stuck in a situation where we need a long-running fork of a package, we should release it to CHaP instead (see the https://github.com/input-output-hk/cardano-haskell-packages[CHaP README] for more). -If you do add a `source-repository-package`, you need to update the `sha256` mapping in `nix/cells/plutus/library/make-plutus-project.nix`. +If you do add a `source-repository-package`, you need to update the `sha256` mapping in `nix/cells/marconi/library/make-marconi-project.nix`. For the moment you have to do this by hand, using the following command to get the sha: `nix-prefetch-git --quiet | jq .sha256`, or by just getting it wrong and trying to build it, in which case Nix will give you the right value. [[update-nix-pins]] @@ -215,7 +215,6 @@ Do *not* use `nix flake update`, as that will update all the inputs, which we ty TODO: Currently not available, coming soon -If you launch `nix develop .#profiled-plutus-apps` you will get a shell where all the dependencies have been built with profiling. [WARNING] ==== @@ -308,51 +307,10 @@ allows us to remove the ``source-repository-package`` stanza. === How to work with a local copy of source dependencies -Sometimes you may want to make a change that spans both `plutus-apps` *and* some of its dependencies (most commonly, the packages in `plutus`). -The obvious workflow is to make changes in the `plutus` repository, update the pin in `plutus-apps` to point to the new commit, test, repeat. +Sometimes you may want to make a change that spans both `marconi` *and* some of its dependencies (most commonly, the packages in `plutus-apps`). +The obvious workflow is to make changes in the `plutus-apps` repository, update the pin in `marconi` to point to the new commit, test, repeat. But this is very tedious and it's much nicer to work with a local checkout where cabal can incrementally rebuild the whole thing. - -Here's an example of doing this for some packages in `plutus`. -You may need to adapt this example depending on what exactly you're trying to do. - -First of all, we add some lines to `cabal.project.local` (we do this to avoid modifying `cabal.project`, which is tracked by git, as much as possible). -``` --- Add the packages that we want to pull in locally as "local" packages --- (assuming a `plutus-core` checkout in `../plutus`) -packages: - ../plutus/plutus-core - ../plutus/plutus-tx - ../plutus/plutus-tx-plugin - ../plutus/plutus-ledger-api - --- Sometimes cabal may get upset about dependencies, you can make its life easier --- by turning off unnecessary features for the altered packages. -package plutus-core - benchmarks: false - tests: false -package plutus-tx - benchmarks: false - tests: false -package plutus-tx-plugin - benchmarks: false - tests: false -``` - -Then we unfortunately do need to modify the main `cabal.project`, to comment out the packages that we are replacing with local ones. -``` -source-repository-package - ... - subdir: - --plutus-core - --plutus-ledger-api - --plutus-tx - --plutus-tx-plugin - word-array - prettyprinter-configurable - stubs/plutus-ghc-stub -``` - -After this, a `cabal build` should build with the local checkouts of `plutus` for the packages you specified. +https://github.com/input-output-hk/plutus-apps/blob/main/CONTRIBUTING.adoc#how-to-work-with-a-local-copy-of-source-dependencies[Plutus-apps repository] has a nice example of such workflow. == Working conventions diff --git a/README.adoc b/README.adoc index 8583fd9010..005fb4cb94 100644 --- a/README.adoc +++ b/README.adoc @@ -1,4 +1,4 @@ -= https://github.com/input-output-hk/plutus-apps[The Plutus Application Framework] += https://github.com/input-output-hk/marconi[Cardano Blockchain Indexer Framework] :email: plutus@iohk.io :author: Input Output HK Limited :toc: left @@ -6,21 +6,18 @@ image:https://img.shields.io/badge/policy-Cardano%20Engineering%20Handbook-informational[link=https://input-output-hk.github.io/cardano-engineering-handbook] -The Plutus Application Framework, part of the Plutus Platform, is a framework for developing distributed applications using the Cardano blockchain. -For more information about the projects, see the <>. +## Introduction -This repository contains: +Marconi is A lightweight customizable solution for indexing and querying the Cardano blockchain. -* Plutus Platform -** Libraries which implement the Plutus Application Framework, a framework for writing applications that work with Cardano. -** A selection of end-to-end usecases written with the Plutus Application Framework +[[Architecture]] +== Architecture -[IMPORTANT] -==== -The rest of this README is focussed on people who want to develop or contribute to the Framework. +Marconi consists of a set of compomentes: -For people who want to *use* the Framework, please consult the <>. -==== +- link:./marconi-core[marconi-core] +- link:./marconi-chain-index[marconi-chain-indexer] +- link:./marconi-sidechain[marconi-sidechain] == Development @@ -35,26 +32,14 @@ Run `nix develop` to enter the development shell and you will be presented with === User documentation -The main documentation is located https://plutus-apps.readthedocs.io/en/latest/[here]. +User documentations are work in progress. You may generate Haskell API documenations (haddocks) directly from the `nix shell` for each of marconi compoments: -The generated Haskell API documentation (haddocks) are here: -. +``` +cabal haddock marconi-core +cabal haddock marconi-chain-index +cabal haddock marconi-sidechain - -=== Talks - -- https://www.youtube.com/watch?v=MpWeg6Fg0t8[Functional Smart Contracts on Cardano] -- https://www.youtube.com/watch?v=usMPt8KpBeI[The Plutus Platform] - -=== Specifications and design - -- https://ci.zw3rk.com/job/input-output-hk-plutus/master/x86_64-linux.plutus-report/latest/download/1[Plutus Technical Report (draft)] - -== Branching, Versioning and Releases - -There are two protected development branches in `plutus-apps`: `main` and `next-node`. -We adopt the PVP versioning scheme. -Check out link:doc/BRANCHING-AND-RELEASE.adoc[Branching Policy and Release Process] to learn more. +``` === Dependency update @@ -76,47 +61,21 @@ Independently of the protected branch: * It should not update `cardano-node` to a new major-version. In other words, it should use a `cardano-node` version which is compatible with the current Cardano mainnet * It should use a `cardano-wallet` version which is compatible with the current `cardano-node` version -`next-node` branch: - -* It may update the `cardano-node` to a new major-version. In other words, it may use a `cardano-node` version which is incompatible with the current Cardano mainnet -* It may use a `cardano-wallet` version which is incompatible with the current `cardano-node` version - -=== Version ranges - -Packages which depend on `plutus-apps` packages should use version ranges to control which version of those packages they build against. - -* Packages in `plutus-apps` which are used downstream should pin the major-version of each other (e.g. `plutus-pab-1.0.1` should depend on `plutus-contract ^>= 1.0`). -* Downstream packages should pin at least the first-major-version of `plutus-apps` packages. -** Upgrading to a new second-major-version should always be safe for working on the current mainnet, with at most code breakage (following the PVP). Users may of course want to pin this version as well to avoid such breakage. -* Downstream packages pulling in `plutus-apps` packages via `source-repository-package` stanzas should always take tagged commits. - == Working with the project === How to submit an issue -Issues can be filed in the https://github.com/input-output-hk/plutus-apps/issues[GitHub Issue tracker]. +Issues can be filed in the https://github.com/input-output-hk/marconi/issues[GitHub Issue tracker]. However, note that this is pre-release software, so we will not usually be providing support. [[how-to-develop]] === How to develop and contribute to the project -See link:CONTRIBUTING{outfilesuffix}[CONTRIBUTING], which describes our processes in more detail including development environments; and link:ARCHITECTURE{outfilesuffix}[ARCHITECTURE], which describes the structure of the repository. - -=== How to depend on the project from another Haskell project - -None of our libraries are on Hackage, unfortunately (many of our dependencies aren't either). -So for the time being, you need to: - -. Add `plutus-apps` as a `source-repository-package` to your `cabal.project`. -. Copy the `source-repository-package` stanzas from our `cabal.project` to yours. -. Copy additional stanzas from our `cabal.project` as you need, e.g. you may need some of the `allow-newer` stanzas. - -The https://github.com/input-output-hk/plutus-starter[plutus-starter] project -(deprecated) provides an example. +See link:CONTRIBUTING{outfilesuffix}[CONTRIBUTING], which describes our processes in more detail including development environments; and <>, which describes the structure of the repository. == Licensing -You are free to copy, modify, and distribute the Plutus Platform with +You are free to copy, modify, and distribute the Marconi Platform with under the terms of the Apache 2.0 license. See the link:./LICENSE[LICENSE] and link:./NOTICE[NOTICE] files for details. diff --git a/__std__/README.md b/__std__/README.md index 104f1f14b0..eb9f738b07 100644 --- a/__std__/README.md +++ b/__std__/README.md @@ -28,9 +28,9 @@ A description of the arguments follows: Remember that a cell is named after its folder.\ The full format is: `inputs.cells...value`.\ Examples: - - `inputs.cells.plutus-apps.packages.read-the-docs-site` - - `inputs.cells.plutus-apps.devshells.plutus-apps-shell` - - `inputs.cells.plutus-apps.library.cardano-node` + - `inputs.cells.marconi.packages.read-the-docs-site` + - `inputs.cells.marconi.devshells.marconi-shell` + - `inputs.cells.marconi.library.cardano-node` - `inputs.`\ The flake inputs proper.\ @@ -40,10 +40,10 @@ A description of the arguments follows: Provides access to the cell's blocks.\ This is a shorthand for `inputs.cells..`, where `` evaluates to the cell housing this nix file.\ Examples: - - `cell.library.cardano-node` only works for code in `/cells/plutus-apps`\ - Alternatively `inputs.cells.plutus-apps.library.agda-cardano-node` works everywhere - - `cell.packages.hlint` only works for code in `/cells/plutus-apps`\ - Alternatively `inputs.cells.plutus-apps.packages.hlint` works everywhere + - `cell.library.cardano-node` only works for code in `/cells/marconi`\ + Alternatively `inputs.cells.marconi.library.agda-cardano-node` works everywhere + - `cell.packages.hlint` only works for code in `/cells/marconi`\ + Alternatively `inputs.cells.marconi.packages.hlint` works everywhere ## One derivation per nix file @@ -75,33 +75,33 @@ While these blocks are not exposed directly to the flake (they are not "harveste `nix (develop|build|run) .#...` For example: -`nix build .#x86_64-linux.plutus-apps.library.plutus-apps-project.hsPkgs.marconi-sidechain.components.exes.marconi-sidechain` +`nix build .#x86_64-linux.marconi.library.marconi-project.hsPkgs.marconi-sidechain.components.exes.marconi-sidechain` ## Reference example -As an example, consider the file `./__std__/cells/plutus-apps/packages/marconi-chain-index.nix`: +As an example, consider the file `./__std__/cells/marconi/packages/marconi-chain-index.nix`: - `./__std__/cells` is the `cellsFrom` value in `flake.nix` -- `/plutus-apps` is the cell name -- `/plutus-apps/*` are accessible via `cell.*` from `{ inputs, cell }` (while inside `cells/plutus-apps`) -- `/plutus-apps/*` are accessible via `inputs.cells.plutus-apps.*` (everywhere) +- `/marconi` is the cell name +- `/marconi/*` are accessible via `cell.*` from `{ inputs, cell }` (while inside `cells/marconi`) +- `/marconi/*` are accessible via `inputs.cells.marconi.*` (everywhere) - `/packages` is the cell block name -- `/packages/*` are accessible via `cell.packages.*` (while inside `cells/plutus-apps`) -- `/packages/*` are accessible via `inputs.cells.plutus-apps.packages.*` (everywhere) +- `/packages/*` are accessible via `cell.packages.*` (while inside `cells/marconi`) +- `/packages/*` are accessible via `inputs.cells.marconi.packages.*` (everywhere) - `/marconi-chain-index.nix` contains a *single derivation* - `marconi-chain-index` is the name of the flake fragment -- A derivation named `marconi-chain-index` is accessible via `cell.packages.marconi-chain-index` (while inside `cells/plutus-apps`) -- And also accessible via `inputs.cells.plutus-apps.packages.marconi-chain-index` (everywhere) +- A derivation named `marconi-chain-index` is accessible via `cell.packages.marconi-chain-index` (while inside `cells/marconi`) +- And also accessible via `inputs.cells.marconi.packages.marconi-chain-index` (everywhere) - And also buildable via `nix build .#marconi-chain-index` -As another example, consider the file `./__std__/cells/plutus-apps/library/default.nix` +As another example, consider the file `./__std__/cells/marconi/library/default.nix` - `./__std__/cells` is the `cellsFrom` value in `flake.nix` -- `/plutus-apps` is the cell name -- `/plutus-apps/*` are accessible via `cell.*` from `{ inputs, cell }` (while inside `cells/plutus-apps`) -- `/plutus-apps/*` are accessible via `inputs.cells.plutus-apps.*` (everywhere) +- `/marconi` is the cell name +- `/marconi/*` are accessible via `cell.*` from `{ inputs, cell }` (while inside `cells/marconi`) +- `/marconi/*` are accessible via `inputs.cells.marconi.*` (everywhere) - `/library` is the cell block name -- `/library/*` are accessible via `cell.library.*` (while inside `cells/plutus-apps`) +- `/library/*` are accessible via `cell.library.*` (while inside `cells/marconi`) - `/library/*` are accessible via `inputs.cells.library.*` (everywhere) - `/default.nix` imports every file in its directory - `/default.nix` contains a derivation for each file in its directory diff --git a/__std__/cells/automation/hydra-jobs.nix b/__std__/cells/automation/hydra-jobs.nix index 228cb60b38..34987bac71 100644 --- a/__std__/cells/automation/hydra-jobs.nix +++ b/__std__/cells/automation/hydra-jobs.nix @@ -2,7 +2,7 @@ let - inherit (inputs.cells.plutus-apps.library) plutus-apps-project pkgs; + inherit (inputs.cells.marconi.library) marconi-project pkgs; inherit (pkgs.stdenv) system; make-haskell-jobs = project: @@ -19,18 +19,18 @@ let plan-nix = project.plan-nix; }; - native-plutus-apps-jobs = make-haskell-jobs plutus-apps-project; + native-marconi-jobs = make-haskell-jobs marconi-project; - windows-plutus-apps-jobs = make-haskell-jobs plutus-apps-project.projectCross.mingwW64; + windows-marconi-jobs = make-haskell-jobs marconi-project.projectCross.mingwW64; - other-jobs = inputs.cells.plutus-apps.devshells // inputs.cells.plutus-apps.packages; + other-jobs = inputs.cells.marconi.devshells // inputs.cells.marconi.packages; jobs = - { native = native-plutus-apps-jobs; } // + { native = native-marconi-jobs; } // # Only cross-compile to windows from linux - pkgs.lib.optionalAttrs (system == "x86_64-linux") { mingwW64 = windows-plutus-apps-jobs; } // + pkgs.lib.optionalAttrs (system == "x86_64-linux") { mingwW64 = windows-marconi-jobs; } // # Devcontainer is only available on linux - pkgs.lib.optionalAttrs (system == "x86_64-linux") inputs.cells.plutus-apps.devcontainer // + pkgs.lib.optionalAttrs (system == "x86_64-linux") inputs.cells.marconi.devcontainer // other-jobs; # Hydra doesn't like these attributes hanging around in "jobsets": it thinks they're jobs! diff --git a/__std__/cells/marconi/devcontainer/README.md b/__std__/cells/marconi/devcontainer/README.md new file mode 100644 index 0000000000..d1df249db6 --- /dev/null +++ b/__std__/cells/marconi/devcontainer/README.md @@ -0,0 +1,26 @@ +Skeleton of a devcontainer for working on Plutus projects, based on https://github.com/hamishmack/docker-nixpkgs/blob/hkm/nix-devcontainer/images/devcontainer with some tweaks. + +Usage: +1. `docker load < $(nix build .#devcontainer-docker-image)` +2. Create `.devcontainer/devcontainer.json` in your project as below, the "image" property is most important +3. Install the Remote Development extension pack in VSCode +4. Open the folder "in the container" + +Example `devcontainer.json`: +``` +{ + "name": "My Plutus Project", + "image": "plutus-devcontainer:latest", + + // Use 'settings' to set *default* container specific settings.json values on container create. + // You can edit these settings after create using File > Preferences > Settings > Remote. + "settings": { + "terminal.integrated.shell.linux": "/bin/bash" + }, + + // IDs of extensions inside container. + "extensions": [ + "haskell.haskell" + ], +} +``` diff --git a/__std__/cells/marconi/devcontainer/default.nix b/__std__/cells/marconi/devcontainer/default.nix new file mode 100644 index 0000000000..e505aeaed1 --- /dev/null +++ b/__std__/cells/marconi/devcontainer/default.nix @@ -0,0 +1,6 @@ +{ inputs, cell }@block: +{ + devcontainer-docker-image = import ./devcontainer-docker-image.nix block; + + devcontainer-push-docker-image = import ./devcontainer-push-docker-image.nix block; +} diff --git a/__std__/cells/marconi/devcontainer/devcontainer-docker-image.nix b/__std__/cells/marconi/devcontainer/devcontainer-docker-image.nix new file mode 100644 index 0000000000..26dc5cf022 --- /dev/null +++ b/__std__/cells/marconi/devcontainer/devcontainer-docker-image.nix @@ -0,0 +1,149 @@ +# This is a vscode devcontainer that can be used with the plutus-starter project (or probably the plutus project itself). +{ inputs, cell }: +let + inherit (cell.library) pkgs; + + marconi-shell = cell.library.marconi-project.shellFor { withHoogle = false; }; + + # This is an evil hack to allow us to have a docker container with a "similar" environment to + # our haskell.nix shell without having it actually run nix develop. In particular, we need some + # of the flags that the stdenv setup hooks set based on the build inputs, like NIX_LDFLAGS. + # The result of this derivation is a file that can be sourced to set the variables we need. + horrible-env-vars-hack = pkgs.runCommand "exfiltrate-env-vars" + { + inherit (marconi-shell) buildInputs nativeBuildInputs propagatedBuildInputs; + } + '' + set | grep -v -E '^BASHOPTS=|^BASH_VERSINFO=|^EUID=|^PPID=|^SHELLOPTS=|^UID=|^HOME=|^TEMP=|^TMP=|^TEMPDIR=|^TMPDIR=|^NIX_ENFORCE_PURITY=' >> $out + ''; + + bashrc = pkgs.writeText "bashrc" '' + # interactive session + if [[ $- == *i* ]]; then + PS1='\[\033[0;32;40m\][devcontainer]$\[\033[0m\] ' + fi + source /etc/profile.d/env.sh + ''; + + # See: https://github.com/NixOS/docker/issues/7 + nsswitch-conf = pkgs.writeTextFile { + name = "nsswitch.conf"; + text = "hosts: dns files"; + destination = "/etc/nsswitch.conf"; + }; + + nonRootUser = "plutus"; + nonRootUserId = "1000"; + + # I think we should be able to use buildLayeredImage, but for some reason it + # produces a nonfunctional image + image = pkgs.dockerTools.buildImage { + + name = "plutus-devcontainer"; + tag = "latest"; + + contents = [ + nsswitch-conf + + pkgs.coreutils + pkgs.procps + pkgs.gnugrep + pkgs.gnused + pkgs.less + pkgs.binutils + pkgs.pkg-config + + # add /bin/sh + pkgs.bashInteractive + + # runtime dependencies of nix + pkgs.cacert + pkgs.git + pkgs.gnutar + pkgs.gzip + pkgs.xz + + # for haskell binaries + pkgs.iana-etc + + # for user management + pkgs.shadow + + # for the vscode extension + pkgs.gcc-unwrapped + pkgs.iproute + pkgs.findutils + # yes, it breaks without `which`! + pkgs.which + + # nice-to-have tools + pkgs.curl + pkgs.jq + + # Plutus Stuff + marconi-shell.ghc + cell.packages.haskell-language-server-wrapper + cell.packages.cabal-install + ]; + + extraCommands = '' + # for /usr/bin/env + mkdir usr + ln -s ../bin usr/bin + + # make sure /tmp exists + mkdir -m 1777 tmp + + # allow ubuntu ELF binaries to run. VSCode copies it's own. + chmod +w lib64 + ln -s ${pkgs.glibc}/lib64/ld-linux-x86-64.so.2 lib64/ld-linux-x86-64.so.2 + ln -s ${pkgs.gcc-unwrapped.lib}/lib64/libstdc++.so.6 lib64/libstdc++.so.6 + chmod -w lib64 + '' + '' + # Put the environment stuff somewhere convenient + chmod +w etc + mkdir -p etc/profile.d + echo 'set -o allexport' >> etc/profile.d/env.sh + echo 'source ${horrible-env-vars-hack}' >> etc/profile.d/env.sh + echo 'set +o allexport' >> etc/profile.d/env.sh + + # We just clobbered this, put it back + echo 'export PATH=$PATH:/usr/bin:/bin' >> etc/profile.d/env.sh + echo 'export NIX_BUILD_TOP=$(mktemp -d)' >> etc/profile.d/env.sh + ''; + + runAsRoot = '' + ${pkgs.dockerTools.shadowSetup} + groupadd --gid ${nonRootUserId} ${nonRootUser} + useradd --uid ${nonRootUserId} --gid ${nonRootUserId} ${nonRootUser} + + mkdir -p /home/${nonRootUser} + cat ${bashrc} > /home/${nonRootUser}/.bashrc + + # Because we map in the `./.cabal` folder from the users home directory, + # (see: https://github.com/input-output-hk/plutus-starter/blob/main/.devcontainer/devcontainer.json) + # and because docker won't let us map a volume not as root + # (see: https://github.com/moby/moby/issues/2259 link), we have to make the + # folder first and chown it ... + mkdir -p /home/${nonRootUser}/.cabal/packages + + chown -R ${nonRootUser}:${nonRootUser} /home/${nonRootUser} + ''; + + config = { + Cmd = [ "/bin/bash" ]; + User = nonRootUser; + Env = [ + "BASH_ENV=/etc/profile.d/env.sh" + "GIT_SSL_CAINFO=/etc/ssl/certs/ca-bundle.crt" + "LD_LIBRARY_PATH=${pkgs.gcc-unwrapped.lib}/lib64" + "PAGER=less" + "PATH=/usr/bin:/bin" + "SSL_CERT_FILE=${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt" + "USER=${nonRootUser}" + "LANG=C.UTF-8" + ]; + }; + }; +in +image // { meta = pkgs.nix.meta // image.meta; } diff --git a/__std__/cells/marconi/devcontainer/devcontainer-push-docker-image.nix b/__std__/cells/marconi/devcontainer/devcontainer-push-docker-image.nix new file mode 100644 index 0000000000..c631a98c4a --- /dev/null +++ b/__std__/cells/marconi/devcontainer/devcontainer-push-docker-image.nix @@ -0,0 +1,32 @@ +{ inputs, cell }: +let + inherit (cell.library) pkgs; + + dockerImage = cell.devcontainer.devcontainer-docker-image; + + imageRef = dockerImage.imageName + ":" + dockerImage.imageTag; + + dockerHubRepoName = "inputoutput/plutus-starter-devcontainer"; +in +pkgs.writeScript "docker-build-push-devcontainer" '' + #!${pkgs.runtimeShell} + set -euo pipefail + + echo "Loading the docker image ..." + docker load -i ${dockerImage} + + tag="''${BUILDKITE_TAG:-}" + echo "Git tag: ''${tag}." + + # Pick out only the version component of a tag like: + # "plutus-starter-devcontainer/v1.0" -> "v1.0" + # "v1.0" -> "v1.0" + version="$(echo $tag | sed -e 's/.*[\/]//')" + + # Construct a tag to push up to dockerHub + docker tag "${imageRef}" "${dockerHubRepoName}:''${version}" + docker tag "${imageRef}" "${dockerHubRepoName}:latest" + + docker push "${dockerHubRepoName}:''${version}" + docker push "${dockerHubRepoName}:latest" +'' diff --git a/__std__/cells/marconi/devshells/default.nix b/__std__/cells/marconi/devshells/default.nix new file mode 100644 index 0000000000..de676e4353 --- /dev/null +++ b/__std__/cells/marconi/devshells/default.nix @@ -0,0 +1,6 @@ +{ inputs, cell }@block: rec +{ + default = marconi-shell; + + marconi-shell = import ./marconi-shell.nix block; +} diff --git a/__std__/cells/marconi/devshells/marconi-shell.nix b/__std__/cells/marconi/devshells/marconi-shell.nix new file mode 100644 index 0000000000..bb3cd89f3c --- /dev/null +++ b/__std__/cells/marconi/devshells/marconi-shell.nix @@ -0,0 +1,148 @@ +# TODO(std) DUP(very similar to plutus shell but unlikely that we can reuse it) + +{ inputs, cell }: + +let + inherit (cell.library) pkgs; + + marconi-project = cell.library.marconi-project; + + marconi-devshell = pkgs.haskell-nix.haskellLib.devshellFor marconi-project.shell; +in + +inputs.std.lib.dev.mkShell { + + name = "marconi"; + + imports = [ marconi-devshell ]; + + commands = [ + { + package = cell.packages.scriv; + category = "general commands"; + help = "Manage changelogs"; + } + { + package = cell.packages.fix-png-optimization; + category = "general commands"; + help = "Fix all PNG files in-place"; + } + { + package = pkgs.shellcheck; + category = "general commands"; + help = "Shell file checker"; + } + { + package = pkgs.editorconfig-checker; + category = "general commands"; + help = "Checker for editorconfig conformance"; + } + { + package = cell.packages.fix-cabal-fmt; + category = "haskell"; + help = "Format all cabal files in-place"; + } + { + package = cell.packages.fix-stylish-haskell; + category = "haskell"; + help = "Run stylish-haskell on all haskell files in-place"; + } + { + package = cell.packages.check-the-flake; + category = "nix"; + help = "For nix maintainers: build everything in the flake"; + } + { + package = cell.packages.cabal-install; + name = "cabal"; + category = "haskell"; + help = "Haskell build tool"; + } + { + package = cell.packages.haskell-language-server-wrapper; + name = "haskell-language-server-wrapper"; + category = "haskell"; + help = "Haskell Language Server Wrapper"; + } + { + package = cell.packages.hlint; + name = "hlint"; + category = "haskell"; + help = "Haskell linting tool"; + } + { + package = cell.packages.stylish-haskell; + name = "stylish-haskell"; + category = "haskell"; + help = "Haskell code formatter"; + } + { + package = cell.packages.cabal-fmt; + name = "cabal-fmt"; + category = "haskell"; + help = "Cabal file formatter"; + } + { + package = cell.packages.nixpkgs-fmt; + category = "nix"; + help = "Nix code formatter"; + } + ]; + + packages = [ + cell.packages.hie-bios + cell.packages.sphinx-toolchain + cell.packages.hlint + cell.packages.stylish-haskell + cell.packages.haskell-language-server-wrapper + cell.packages.cabal-install + cell.packages.cabal-fmt + cell.packages.cardano-wallet + + cell.library.cardano-node.cardano-node + cell.library.cardano-node.cardano-cli + + pkgs.plantuml + pkgs.shellcheck + pkgs.sqlite-interactive + pkgs.stack + pkgs.wget + pkgs.yq + pkgs.jq + pkgs.z3 + pkgs.ghcid + pkgs.editorconfig-core-c + pkgs.jq + pkgs.pre-commit + pkgs.yq + pkgs.gnused + pkgs.awscli2 + pkgs.bzip2 + pkgs.zlib + pkgs.cacert + pkgs.dateutils + pkgs.act + ]; + + devshell.startup."pre-commit-check".text = cell.packages.pre-commit-check.shellHook; + + env = [ + # This is no longer set automatically as of more recent `haskell.nix` revisions, + # but is useful for users with LANG settings. + { + name = "LOCALE_ARCHIVE"; + value = pkgs.lib.optionalString + (pkgs.stdenv.hostPlatform.libc == "glibc") "${pkgs.glibcLocales}/lib/locale/locale-archive"; + } + # These environemnt variables are rquired by marconi-chain-index tets + { + name = "CARDANO_CLI"; + value = "${cell.library.cardano-node.cardano-cli}/bin/cardano-cli"; + } + { + name = "CARDANO_NODE"; + value = "${cell.library.cardano-node.cardano-node}/bin/cardano-node"; + } + + ]; +} diff --git a/__std__/cells/marconi/library/cabal-project-index-state.nix b/__std__/cells/marconi/library/cabal-project-index-state.nix new file mode 100644 index 0000000000..73362ddb74 --- /dev/null +++ b/__std__/cells/marconi/library/cabal-project-index-state.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP(kinda similar but not quite) + +{ inputs, cell }: + +cell.library.marconi-project.index-state diff --git a/__std__/cells/marconi/library/cardano-node.nix b/__std__/cells/marconi/library/cardano-node.nix new file mode 100644 index 0000000000..19440d1bee --- /dev/null +++ b/__std__/cells/marconi/library/cardano-node.nix @@ -0,0 +1,15 @@ +{ inputs, cell }: + +let + cardano-node-compat = import inputs.flake-compat { + inherit (cell.library) pkgs; + src = builtins.fetchTree { + type = "github"; + owner = "input-output-hk"; + repo = "cardano-node"; + rev = "ebc7be471b30e5931b35f9bbc236d21c375b91bb"; + narHash = "sha256-WRRzfpDc+YVmTNbN9LNYY4dS8o21p/6NoKxtcZmoAcg="; + }; + }; +in +cardano-node-compat.defaultNix.packages.${cell.library.pkgs.system} diff --git a/__std__/cells/marconi/library/combine-haddock.nix b/__std__/cells/marconi/library/combine-haddock.nix new file mode 100644 index 0000000000..2e380daec2 --- /dev/null +++ b/__std__/cells/marconi/library/combine-haddock.nix @@ -0,0 +1,112 @@ +# TODO(std) DUP +{ inputs, cell }: + +{ ghc + # Haskell packages to make documentation for. Only those with a "doc" output will be used. + # Note: we do not provide arbitrary additional Haddock options, as these would not be + # applied consistently, since we're reusing the already built Haddock for the packages. +, hspkgs + # Optionally, a file to be used for the Haddock "--prologue" option. +, prologue ? null +}: + +let + lib = cell.library.pkgs.lib; + + hsdocs = builtins.map (x: x.doc) (builtins.filter (x: x ? doc) hspkgs); +in + +cell.library.pkgs.runCommand "combine-haddock" +{ + buildInputs = [ hsdocs ]; + + # For each package in hsdocs, this will create a file `graph-N` (where N is the index in the list) + # which contains information about which nix paths are referenced by the package. This will allow + # us to resolve hyperlinks to haddocks elsewhere in the store. + # + # See also https://nixos.org/manual/nix/stable/expressions/advanced-attributes.html#adv-attr-exportReferencesGraph # editorconfig-checker-disable-line + exportReferencesGraph = lib.concatLists + (lib.imap0 (i: pkg: [ "graph-${toString i}" pkg ]) hsdocs); +} '' + hsdocsRec="$(cat graph* | grep -F /nix/store | sort | uniq)" + + # Merge all the docs from the packages and their doc dependencies. + # We don't use symlinkJoin because: + # - We are going to want to redistribute this, so we don't want any symlinks. + # - We want to be selective about what we copy (we don't need the hydra + # tarballs from the other packages, for example. + mkdir -p "$out/share/doc" + + for pkg in $hsdocsRec; do + if [ -d "$pkg/share/doc/ghc" ]; then + echo "Skipping GHC :'(" + elif [ -d "$pkg/share/doc" ]; then + cp -r "$pkg/share/doc/." "$out/share/doc" + fi + done + + # We're going to sed all the files so they'd better be writable! + chmod -R +w $out/share/doc + + # We're now going to rewrite all the pre-generated Haddock HTML output + # so that links point to the appropriate place within our combined output, + # rather than into the store. + root=$out/share/doc + for f in $(find $out -name "*.html"); do + # Replace all links to the docs we're processing with relative links + # to the root of the doc directory we're creating - the rest of the link is + # the same. + # Also, it's not a a file:// link now because it's a relative URL instead + # of an absolute one. + relpath=$(realpath --relative-to=$(dirname $f) --no-symlinks $root) + pkgsRegex="${"file:///nix/store/[^/]*/share/doc"}" + sed -i -r "s,$pkgsRegex,$relpath,g" "$f" + done + + # Move to the docdir. We do this so that we can give relative docpaths to + # Haddock so it will generate relative (relocatable) links in the index. + cd $out/share/doc + # Non-recursively collect all the interface files and their docpaths + # (in this case we can just use the enclosing directory). + interfaceOpts=() + for pkg in ${lib.concatStringsSep " " hsdocs}; do + pushd $pkg/share/doc + for interfaceFile in $(find . -name "*.haddock"); do + # this is '$PACKAGE/html' + docdir=$(dirname $interfaceFile) + interfaceOpts+=("--read-interface=$docdir,$interfaceFile") + # Jam this in here for now + pushd $out/share/doc + ${cell.packages.sphinxcontrib-haddock}/bin/haddock_inventory $docdir + popd + done + popd + done + + # Generate the contents and index + ${ghc}/bin/haddock \ + --gen-contents \ + --gen-index \ + --quickjump \ + ${lib.optionalString (prologue != null) "--prologue ${prologue}"} \ + "''${interfaceOpts[@]}" + + # TODO: remove patch when haddock > 2.24.0 + # patch quick-jump.css to fix scrolling in search for chromium + for f in $(find $out -name "quick-jump.css"); do + sed -i -r "s,^\#search-results \{,\#search-results \{ max-height:80%;overflow-y:scroll;," "$f" + done + + # Following: https://github.com/input-output-hk/ouroboros-network/blob/2068d091bc7dcd3f4538fb76f1b598f219d1e0c8/scripts/haddocs.sh#L87 # editorconfig-checker-disable-line + # Assemble a toplevel `doc-index.json` from package level ones. + shopt -s globstar + echo "[]" > "doc-index.json" + for file in $(ls **/doc-index.json); do + project=$(dirname $file); + ${cell.library.pkgs.jq}/bin/jq -s ".[0] + [.[1][] | (. + {link: (\"$project/\" + .link)}) ]" \ + "doc-index.json" "$file" > doc-index.tmp.json + mv doc-index.tmp.json "doc-index.json" + done + + echo "Done Combining Haddock" +'' diff --git a/__std__/cells/marconi/library/default.nix b/__std__/cells/marconi/library/default.nix new file mode 100644 index 0000000000..0ed5042c5d --- /dev/null +++ b/__std__/cells/marconi/library/default.nix @@ -0,0 +1,24 @@ +{ inputs, cell }@block: +{ + pkgs = import ./pkgs.nix block; + + combine-haddock = import ./combine-haddock.nix block; + + easy-ps = import ./easy-ps.nix block; + + marconi-project = import ./marconi-project.nix block; + + make-marconi-project = import ./make-marconi-project.nix block; + + gitignore-source = import ./gitignore-source.nix block; + + haskell-language-server-project = import ./haskell-language-server-project.nix block; + + ghc-compiler-nix-name = import ./ghc-compiler-nix-name.nix block; + + cabal-project-index-state = import ./cabal-project-index-state.nix block; + + cardano-node = import ./cardano-node.nix block; + + bitte-packages = import ./bitte-packages.nix block; +} diff --git a/__std__/cells/marconi/library/ghc-compiler-nix-name.nix b/__std__/cells/marconi/library/ghc-compiler-nix-name.nix new file mode 100644 index 0000000000..bb8ff99fa7 --- /dev/null +++ b/__std__/cells/marconi/library/ghc-compiler-nix-name.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP(kinda similar but not quite) + +{ inputs, cell }: + +"ghc8107" diff --git a/__std__/cells/marconi/library/gitignore-source.nix b/__std__/cells/marconi/library/gitignore-source.nix new file mode 100644 index 0000000000..2542e5d8bc --- /dev/null +++ b/__std__/cells/marconi/library/gitignore-source.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP + +{ inputs, cell }: + +inputs.gitignore-nix.lib.gitignoreSource diff --git a/__std__/cells/marconi/library/haskell-language-server-project.nix b/__std__/cells/marconi/library/haskell-language-server-project.nix new file mode 100644 index 0000000000..4fab048126 --- /dev/null +++ b/__std__/cells/marconi/library/haskell-language-server-project.nix @@ -0,0 +1,32 @@ +# TODO(std) DUP(except the constraints and the actual version) + +{ inputs, cell }: + +cell.library.pkgs.haskell-nix.cabalProject' { + # See https://github.com/haskell/haskell-language-server/issues/411. + # We want to use stylish-haskell, hlint, and implicit-hie as standalone tools + # *and* through HLS. But we need to have consistent versions in both cases, + # otherwise e.g. you could format the code in HLS and then have the CI + # complain that it's wrong + # + # The solution we use here is to: + # a) Where we care (mostly just formatters), constrain the versions of + # tools which HLS uses explicitly + # b) Pull out the tools themselves from the HLS project so we can use + # them elsewhere + cabalProjectLocal = '' + constraints: stylish-haskell==0.13.0.0, hlint==3.2.8 + ''; + + src = inputs.haskell-language-server; + sha256map = { + "https://github.com/pepeiborra/ekg-json"."7a0af7a8fd38045fd15fb13445bdcc7085325460" = "sha256-fVwKxGgM0S4Kv/4egVAAiAjV7QB5PBqMVMCfsv7otIQ="; # editorconfig-checker-disable-line + }; + + compiler-nix-name = cell.library.ghc-compiler-nix-name; + + modules = [{ + # See https://github.com/haskell/haskell-language-server/pull/1382#issuecomment-780472005 + packages.ghcide.flags.ghc-patched-unboxed-bytecode = true; + }]; +} diff --git a/__std__/cells/marconi/library/make-marconi-project.nix b/__std__/cells/marconi/library/make-marconi-project.nix new file mode 100644 index 0000000000..91078d4b2e --- /dev/null +++ b/__std__/cells/marconi/library/make-marconi-project.nix @@ -0,0 +1,148 @@ +{ inputs, cell }: + +# Whether to set the `defer-plugin-errors` flag on those packages that need +# it. If set to true, we will also build the haddocks for those packages. +{ deferPluginErrors ? false + +, enableHaskellProfiling ? false +}: + +let + project = cell.library.pkgs.haskell-nix.cabalProject' ({ pkgs, config, lib, ... }: { + + compiler-nix-name = cell.library.ghc-compiler-nix-name; + + src = cell.library.pkgs.haskell-nix.haskellLib.cleanSourceWith { + src = inputs.self.outPath; + name = "marconi"; + }; + + shell.withHoogle = false; + + # source-repository-packages + sha256map = { + "https://github.com/input-output-hk/cardano-addresses"."b7273a5d3c21f1a003595ebf1e1f79c28cd72513" = "129r5kyiw10n2021bkdvnr270aiiwyq58h472d151ph0r7wpslgp"; + "https://github.com/input-output-hk/cardano-config"."1646e9167fab36c0bff82317743b96efa2d3adaa" = "sha256-TNbpnR7llUgBN2WY7CryMxNVupBIUH01h1hRNHoxboY="; + "https://github.com/input-output-hk/cardano-ledger"."da3e9ae10cf9ef0b805a046c84745f06643583c2" = "sha256-3VUZKkLu1R43GUk9IwgsGQ55O0rnu8NrCkFX9gqA4ck="; + "https://github.com/input-output-hk/cardano-wallet"."18a931648550246695c790578d4a55ee2f10463e" = "0i40hp1mdbljjcj4pn3n6zahblkb2jmpm8l4wnb36bya1pzf66fx"; + "https://github.com/sevanspowell/hw-aeson"."b5ef03a7d7443fcd6217ed88c335f0c411a05408" = "1dwx90wqavdl4d0npbzbxyh2pzi9zs1qz7nvsrb3n1cm2xbv4i5z"; + "https://github.com/input-output-hk/plutus-apps"."9d90900d049f2333960fbc349cc816d2b163cda5" = "0cqm86z73k54rcnnplcwxl8v0l96pnmwlq4hgn9fjmlj01j2v3bv"; + }; + + inputMap = { + "https://input-output-hk.github.io/cardano-haskell-packages" = inputs.CHaP; + }; + + # Configuration settings needed for cabal configure to work when cross compiling + # for windows. We can't use `modules` for these as `modules` are only applied + # after cabal has been configured. + cabalProjectLocal = lib.optionalString pkgs.stdenv.hostPlatform.isWindows '' + -- When cross compiling for windows we don't have a `ghc` package, so use + -- the `plutus-ghc-stub` package instead. + package plutus-tx-plugin + flags: +use-ghc-stub + + -- Exlcude test that use `doctest`. They will not work for windows + -- cross compilation and `cabal` will not be able to make a plan. + package prettyprinter-configurable + tests: False + ''; + modules = + let + inherit (config) src; + in + [ + ({ pkgs, ... }: lib.mkIf (pkgs.stdenv.hostPlatform != pkgs.stdenv.buildPlatform) { + packages = { + # Things that need plutus-tx-plugin + freer-extras.package.buildable = false; + cardano-node-emulator.package.buildable = false; + cardano-streaming.package.buildable = false; + marconi-chain-index.package.buildable = false; + marconi-core.package.buildable = false; + marconi-sidechain.package.buildable = false; + # These need R + plutus-core.components.benchmarks.cost-model-test.buildable = lib.mkForce false; + plutus-core.components.benchmarks.update-cost-model.buildable = lib.mkForce false; + }; + }) + ({ pkgs, ... }: + let + # Add symlinks to the DLLs used by executable code to the `bin` directory + # of the components with we are going to run. + # We should try to find a way to automate this will in haskell.nix. + symlinkDlls = '' + ln -s ${pkgs.libsodium-vrf}/bin/libsodium-23.dll $out/bin/libsodium-23.dll + ln -s ${pkgs.buildPackages.gcc.cc}/x86_64-w64-mingw32/lib/libgcc_s_seh-1.dll $out/bin/libgcc_s_seh-1.dll + ln -s ${pkgs.buildPackages.gcc.cc}/x86_64-w64-mingw32/lib/libstdc++-6.dll $out/bin/libstdc++-6.dll + ln -s ${pkgs.windows.mcfgthreads}/bin/mcfgthread-12.dll $out/bin/mcfgthread-12.dll + ''; + in + lib.mkIf (pkgs.stdenv.hostPlatform.isWindows) { } + ) + (lib.mkIf pkgs.stdenv.hostPlatform.isDarwin { + packages = { + plutus-pab-executables.components.tests.plutus-pab-test-full-long-running.buildable = lib.mkForce false; + }; + }) + ({ pkgs, config, ... }: { + packages = { + marconi-core.doHaddock = deferPluginErrors; + marconi-core.flags.defer-plugin-errors = deferPluginErrors; + + marconi-chain-index.doHaddock = deferPluginErrors; + marconi-chain-index.flags.defer-plugin-errors = deferPluginErrors; + + # The lines `export CARDANO_NODE=...` and `export CARDANO_CLI=...` + # is necessary to prevent the error + # `../dist-newstyle/cache/plan.json: openBinaryFile: does not exist (No such file or directory)`. + # See https://github.com/input-output-hk/cardano-node/issues/4194. + # + # The line 'export CARDANO_NODE_SRC=...' is used to specify the + # root folder used to fetch the `configuration.yaml` file (in + # marconi, it's currently in the + # `configuration/defaults/byron-mainnet` directory. + # Else, we'll get the error + # `/nix/store/ls0ky8x6zi3fkxrv7n4vs4x9czcqh1pb-marconi/marconi/test/configuration.yaml: openFile: does not exist (No such file or directory)` + marconi-chain-index.preCheck = " + export CARDANO_CLI=${config.hsPkgs.cardano-cli.components.exes.cardano-cli}/bin/cardano-cli${pkgs.stdenv.hostPlatform.extensions.executable} + export CARDANO_NODE=${config.hsPkgs.cardano-node.components.exes.cardano-node}/bin/cardano-node${pkgs.stdenv.hostPlatform.extensions.executable} + export CARDANO_NODE_SRC=${src} + "; + + marconi-sidechain.doHaddock = deferPluginErrors; + marconi-sidechain.flags.defer-plugin-errors = deferPluginErrors; + # FIXME: Haddock mysteriously gives a spurious missing-home-modules warning + plutus-tx-plugin.doHaddock = false; + + # Relies on cabal-doctest, just turn it off in the Nix build + prettyprinter-configurable.components.tests.prettyprinter-configurable-doctest.buildable = lib.mkForce false; + + # Broken due to warnings, unclear why the setting that fixes this for the build doesn't work here. + iohk-monitoring.doHaddock = false; + cardano-wallet.doHaddock = false; + + # Werror everything. This is a pain, see https://github.com/input-output-hk/haskell.nix/issues/519 + cardano-streaming.ghcOptions = [ "-Werror" ]; + marconi-chain-index.ghcOptions = [ "-Werror" ]; + marconi-core.ghcOptions = [ "-Werror" ]; + marconi-sidechain.ghcOptions = [ "-Werror" ]; + pab-blockfrost.ghcOptions = [ "-Werror" ]; + + # Honestly not sure why we need this, it has a mysterious unused dependency on "m" + # This will go away when we upgrade nixpkgs and things use ieee754 anyway. + ieee.components.library.libs = lib.mkForce [ ]; + + # See https://github.com/input-output-hk/iohk-nix/pull/488 + cardano-crypto-praos.components.library.pkgconfig = lib.mkForce [ [ pkgs.libsodium-vrf ] ]; + cardano-crypto-class.components.library.pkgconfig = lib.mkForce [ [ pkgs.libsodium-vrf pkgs.secp256k1 ] ]; + }; + }) + ] ++ lib.optional enableHaskellProfiling { + enableLibraryProfiling = true; + enableProfiling = true; + }; + }); + +in +project diff --git a/__std__/cells/marconi/library/marconi-project.nix b/__std__/cells/marconi/library/marconi-project.nix new file mode 100644 index 0000000000..f4ce4bb487 --- /dev/null +++ b/__std__/cells/marconi/library/marconi-project.nix @@ -0,0 +1,6 @@ +{ inputs, cell }: + +cell.library.make-marconi-project { + deferPluginErrors = false; + enableHaskellProfiling = false; +} diff --git a/__std__/cells/marconi/library/pkgs.nix b/__std__/cells/marconi/library/pkgs.nix new file mode 100644 index 0000000000..00b484a059 --- /dev/null +++ b/__std__/cells/marconi/library/pkgs.nix @@ -0,0 +1,31 @@ +# TODO(std) DUP(almost -- no r-overlay) + +{ inputs, cell }: + +# Our nixpkgs comes from haskell-nix and is overlaid with iohk-nix. +# This means that this file is the *only* place where we reference +# `inputs.nixpkgs` directly -- more precisely we reference `inputs.nixpkgs.path` +# because std treats nixpkgs specially, and already `import`s it under the hood. +# This also means that *everywhere else* in nix code we use +# `cell.library.pkgs` to access our overlaid nixpkgs. +# Attempting to maintain two nixpkgs -- one coming from inputs.nixpkgs and one +# coming from haskell-nix -- has resulted in segfaults. + +let + + pkgs = import inputs.nixpkgs.path { + + config = inputs.haskell-nix.config; + + system = inputs.nixpkgs.system; + + overlays = [ + inputs.haskell-nix.overlay + inputs.iohk-nix.overlays.crypto + ]; + + }; + +in + +pkgs diff --git a/__std__/cells/marconi/packages/cabal-fmt.nix b/__std__/cells/marconi/packages/cabal-fmt.nix new file mode 100644 index 0000000000..227355b5c5 --- /dev/null +++ b/__std__/cells/marconi/packages/cabal-fmt.nix @@ -0,0 +1,27 @@ +# TODO(std) DUP + +{ inputs, cell }: + +# TODO(std) Remove this patch once the PR makes it into a hackage release. +# See https://github.com/phadej/cabal-fmt/pull/68 +let + project = cell.library.pkgs.haskell-nix.cabalProject' { + + src = cell.library.pkgs.fetchgit { + url = "https://github.com/zeme-iohk/cabal-fmt.git"; + rev = "22ee9ffcad6735a8b913fbc211816a55e67a9205"; + sha256 = "sha256-+1pGc3agcAeOhQxe3zOZbx/z2++5pzdSoVlfdl1CBvQ="; + }; + + # Cabal is a boot library, so haskell.nix would normally use the one coming + # from the compiler-nix-name (currently 3.2). However cabal-fmt depends on + # Cabal library version 3.6, hence we add this line. + modules = [{ reinstallableLibGhc = true; }]; + + # Doesn't build with 9.2.4 + compiler-nix-name = "ghc8107"; + + index-state = cell.library.cabal-project-index-state; + }; +in +project.hsPkgs.cabal-fmt.components.exes.cabal-fmt diff --git a/__std__/cells/marconi/packages/cabal-install.nix b/__std__/cells/marconi/packages/cabal-install.nix new file mode 100644 index 0000000000..90c595a48a --- /dev/null +++ b/__std__/cells/marconi/packages/cabal-install.nix @@ -0,0 +1,19 @@ +# TODO(std) DUP(except the version) + +{ inputs, cell }: + +let + project = cell.library.pkgs.haskell-nix.hackage-project { + name = "cabal-install"; + + version = "3.6.2.0"; + + compiler-nix-name = cell.library.ghc-compiler-nix-name; + + index-state = cell.library.cabal-project-index-state; + + # The test suite depends on a nonexistent package... + configureArgs = "--disable-tests"; + }; +in +project.hsPkgs.cabal-install.components.exes.cabal diff --git a/__std__/cells/marconi/packages/cardano-wallet.nix b/__std__/cells/marconi/packages/cardano-wallet.nix new file mode 100644 index 0000000000..3d21807d56 --- /dev/null +++ b/__std__/cells/marconi/packages/cardano-wallet.nix @@ -0,0 +1,32 @@ +{ inputs, cell }: + +let + + cardano-wallet-compat = import inputs.flake-compat { + inherit (cell.library) pkgs; + src = builtins.fetchTree { + type = "github"; + owner = "input-output-hk"; + repo = "cardano-wallet"; + rev = "18a931648550246695c790578d4a55ee2f10463e"; + narHash = "sha256-3Rnj/g3KLzOW5YSieqsUa9IF1Td22Eskk5KuVsOFgEQ="; + }; + }; + + cardano-wallet = cardano-wallet-compat.defaultNix.packages.${cell.library.pkgs.system}.cardano-wallet; + + # FIXME Both cardano-node and cardano-wallet put a bunch of .dynlib files inside their respective + # derivation's /bin folder! So when the devshell merges all the bin folders, it detects a collision + # for the shared subset of common .dynlib files. It's unclear why the default shell doesn't have + # the same behaviour. + fixed-cardano-wallet = cell.library.pkgs.stdenv.mkDerivation { + name = "fixed-cardano-wallet"; + phases = [ "installPhase" ]; + installPhase = '' + mkdir -p $out/bin + ln -s ${cardano-wallet}/bin/cardano-wallet $out/bin/cardano-wallet + ''; + }; + +in +fixed-cardano-wallet diff --git a/__std__/cells/marconi/packages/check-the-flake.nix b/__std__/cells/marconi/packages/check-the-flake.nix new file mode 100644 index 0000000000..8ebca863f2 --- /dev/null +++ b/__std__/cells/marconi/packages/check-the-flake.nix @@ -0,0 +1,43 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.writeShellApplication { + name = "check-the-flake"; + runtimeInputs = [ + cell.library.pkgs.nix + cell.packages.repo-root + ]; + text = '' + set +e + + root="$(repo-root)" + + shell_fragments=$( + # TODO(std) rename to $root/nix when std'ization finished + find "$root/__std__/cells" \ + -name "*.nix" \ + -and -not -name "*default.nix" \ + -and -path "*/devshells*" \ + -exec basename {} .nix \; + ) + + for fragment in $shell_fragments; do + echo building "$fragment" + GC_DONT_GC=1 nix develop ".#$fragment" --build --no-warn-dirty --accept-flake-config + done + + derivation_fragments=$( + find "$root/__std__/cells" \ + -name "*.nix" \ + -and -not -name "*default.nix" \ + -and -path "*/packages*" \ + -exec basename {} .nix \; + ) + + for fragment in $derivation_fragments; do + echo building "$fragment" + GC_DONT_GC=1 nix build ".#$fragment" --no-warn-dirty --accept-flake-config + done + ''; +} diff --git a/__std__/cells/marconi/packages/combined-plutus-apps-haddock.nix b/__std__/cells/marconi/packages/combined-plutus-apps-haddock.nix new file mode 100644 index 0000000000..fa7c4055ab --- /dev/null +++ b/__std__/cells/marconi/packages/combined-plutus-apps-haddock.nix @@ -0,0 +1,37 @@ +# TODO(std) DUP + +{ inputs, cell }: + +let + + inherit (cell.library.pkgs.haskell-nix) haskellLib; + + toHaddock = haskellLib.collectComponents' "library" + (haskellLib.selectProjectPackages cell.library.marconi-project.hsPkgs); + +in + +cell.library.combine-haddock { + + ghc = cell.packages.ghc; + + hspkgs = builtins.attrValues toHaddock; + + prologue = cell.library.pkgs.writeTextFile { + name = "prologue"; + text = '' + = Combined documentation for all the public Plutus libraries + + == Handy module entrypoints + + * "PlutusTx": Compiling Haskell to PLC (Plutus Core; on-chain code). + * "PlutusTx.Prelude": Haskell prelude replacement compatible with PLC. + * "Plutus.Contract": Writing Plutus apps (off-chain code). + * "Ledger.Constraints": Constructing and validating Plutus + transactions. Built on "PlutusTx" and "Plutus.Contract". + * "Ledger.Typed.Scripts": A type-safe interface for spending and + producing script outputs. Built on "PlutusTx". + * "Plutus.Trace.Emulator": Testing Plutus contracts in the emulator. + ''; + }; +} diff --git a/__std__/cells/marconi/packages/default.nix b/__std__/cells/marconi/packages/default.nix new file mode 100644 index 0000000000..159c79d600 --- /dev/null +++ b/__std__/cells/marconi/packages/default.nix @@ -0,0 +1,69 @@ +{ inputs, cell }@block: +{ + combined-plutus-apps-haddock = import ./combined-plutus-apps-haddock.nix block; + + # read-the-docs-site = import ./read-the-docs-site.nix block; + + # serve-readthedocs-site = import ./serve-readthedocs-site.nix block; + + sphinx-markdown-tables = import ./sphinx-markdown-tables.nix block; + + sphinx-toolchain = import ./sphinx-toolchain.nix block; + + sphinxcontrib-bibtex = import ./sphinxcontrib-bibtex.nix block; + + sphinxemoji = import ./sphinxemoji.nix block; + + cabal-install = import ./cabal-install.nix block; + + check-the-flake = import ./check-the-flake.nix block; + + cabal-fmt = import ./cabal-fmt.nix block; + + fix-cabal-fmt = import ./fix-cabal-fmt.nix block; + + fix-png-optimization = import ./fix-png-optimization.nix block; + + fix-stylish-haskell = import ./fix-stylish-haskell.nix block; + + ghc = import ./ghc.nix block; + + haskell-language-server-wrapper = import ./haskell-language-server-wrapper.nix block; + + hie-bios = import ./hie-bios.nix block; + + hlint = import ./hlint.nix block; + + nixpkgs-fmt = import ./nixpkgs-fmt.nix block; + + pre-commit-check = import ./pre-commit-check.nix block; + + repo-root = import ./repo-root.nix block; + + stylish-haskell = import ./stylish-haskell.nix block; + + # sphinx-autobuild-readthedocs-site = import ./sphinx-autobuild-readthedocs-site.nix block; + + # sphinx-build-readthedocs-site = import ./sphinx-build-readthedocs-site.nix block; + + marconi-chain-index = import ./marconi-chain-index.nix block; + + marconi-sidechain = import ./marconi-sidechain.nix block; + + plutus-chain-index = import ./plutus-chain-index.nix block; + + create-script-context = import ./create-script-context.nix block; + + cardano-wallet = import ./cardano-wallet.nix block; + + scriv = import ./scriv.nix block; + + inherit (import ./sphinxcontrib-haddock.nix block) + + sphinxcontrib-domaintools + + sphinxcontrib-haddock + + sphobjinv; + +} diff --git a/__std__/cells/marconi/packages/fix-cabal-fmt.nix b/__std__/cells/marconi/packages/fix-cabal-fmt.nix new file mode 100644 index 0000000000..eb68a0ee40 --- /dev/null +++ b/__std__/cells/marconi/packages/fix-cabal-fmt.nix @@ -0,0 +1,22 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.writeShellApplication { + + name = "fix-cabal-fmt"; + + runtimeInputs = [ + cell.library.pkgs.fd + cell.packages.cabal-fmt + ]; + + text = '' + fd \ + --extension cabal \ + --exclude 'dist-newstyle/*' \ + --exclude 'dist/*' \ + --exclude '.stack-work/*' \ + --exec bash -c "cabal-fmt --inplace {}" + ''; +} diff --git a/__std__/cells/marconi/packages/fix-png-optimization.nix b/__std__/cells/marconi/packages/fix-png-optimization.nix new file mode 100644 index 0000000000..c86ceea013 --- /dev/null +++ b/__std__/cells/marconi/packages/fix-png-optimization.nix @@ -0,0 +1,17 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.writeShellApplication { + + name = "fix-png-optimization"; + + runtimeInputs = [ + cell.library.pkgs.fd + cell.library.pkgs.optipng + ]; + + text = '' + fd --extension png --exec "optipng" {} + ''; +} diff --git a/__std__/cells/marconi/packages/fix-stylish-haskell.nix b/__std__/cells/marconi/packages/fix-stylish-haskell.nix new file mode 100644 index 0000000000..ffb8035ce1 --- /dev/null +++ b/__std__/cells/marconi/packages/fix-stylish-haskell.nix @@ -0,0 +1,22 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.writeShellApplication { + + name = "fix-stylish-haskell"; + + runtimeInputs = [ + cell.library.pkgs.fd + cell.packages.stylish-haskell + ]; + + text = '' + fd \ + --extension hs \ + --exclude 'dist-newstyle/*' \ + --exclude 'dist/*' \ + --exclude '.stack-work/*' \ + --exec bash -c "stylish-haskell -i {}" + ''; +} diff --git a/__std__/cells/marconi/packages/ghc.nix b/__std__/cells/marconi/packages/ghc.nix new file mode 100644 index 0000000000..efc57be75f --- /dev/null +++ b/__std__/cells/marconi/packages/ghc.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.marconi-project.pkg-set.config.ghc.package diff --git a/__std__/cells/marconi/packages/haskell-language-server-wrapper.nix b/__std__/cells/marconi/packages/haskell-language-server-wrapper.nix new file mode 100644 index 0000000000..7da4ea32bb --- /dev/null +++ b/__std__/cells/marconi/packages/haskell-language-server-wrapper.nix @@ -0,0 +1,19 @@ +# TODO(std) DUP + +{ inputs, cell }: + +let + haskell-language-server = cell.library.haskell-language-server-project.hsPkgs.haskell-language-server.components.exes.haskell-language-server; # editorconfig-checker-disable-line + + pkgs = cell.library.pkgs; +in +pkgs.stdenv.mkDerivation { + name = "haskell-language-server-wrapper"; + phases = [ "installPhase" ]; + installPhase = '' + mkdir -p $out/bin + echo '#!${pkgs.bash}/bin/bash' > $out/bin/haskell-language-server-wrapper + echo '${haskell-language-server}/bin/haskell-language-server "$@"' >> $out/bin/haskell-language-server-wrapper + chmod u+x $out/bin/haskell-language-server-wrapper + ''; +} diff --git a/__std__/cells/marconi/packages/hie-bios.nix b/__std__/cells/marconi/packages/hie-bios.nix new file mode 100644 index 0000000000..feeb23e77f --- /dev/null +++ b/__std__/cells/marconi/packages/hie-bios.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.haskell-language-server-project.hsPkgs.hie-bios.components.exes.hie-bios diff --git a/__std__/cells/marconi/packages/hlint.nix b/__std__/cells/marconi/packages/hlint.nix new file mode 100644 index 0000000000..89beda6013 --- /dev/null +++ b/__std__/cells/marconi/packages/hlint.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.haskell-language-server-project.hsPkgs.hlint.components.exes.hlint diff --git a/__std__/cells/marconi/packages/marconi-chain-index.nix b/__std__/cells/marconi/packages/marconi-chain-index.nix new file mode 100644 index 0000000000..f6fe6da198 --- /dev/null +++ b/__std__/cells/marconi/packages/marconi-chain-index.nix @@ -0,0 +1,4 @@ +{ inputs, cell }: + +cell.library.marconi-project.hsPkgs.marconi-chain-index.components.exes.marconi-chain-index + diff --git a/__std__/cells/marconi/packages/marconi-sidechain.nix b/__std__/cells/marconi/packages/marconi-sidechain.nix new file mode 100644 index 0000000000..fc40bcbe0a --- /dev/null +++ b/__std__/cells/marconi/packages/marconi-sidechain.nix @@ -0,0 +1,3 @@ +{ inputs, cell }: + +cell.library.marconi-project.hsPkgs.marconi-sidechain.components.exes.marconi-sidechain diff --git a/__std__/cells/marconi/packages/nixpkgs-fmt.nix b/__std__/cells/marconi/packages/nixpkgs-fmt.nix new file mode 100644 index 0000000000..215a9e7759 --- /dev/null +++ b/__std__/cells/marconi/packages/nixpkgs-fmt.nix @@ -0,0 +1,29 @@ +# TODO(std) DUP + +{ inputs, cell }: + +let pkgs = cell.library.pkgs; in + +pkgs.rustPlatform.buildRustPackage rec { + + pname = "nixpkgs-fmt"; + + # nixpkgs-fmt 1.2.0 breaks indentation of code examples in comments + version = "1.1.0"; + + src = pkgs.fetchFromGitHub { + owner = "nix-community"; + repo = pname; + rev = "v${version}"; + sha256 = "1fb2mm1y2qb3imc48g2ad3rdbjlj326cggrc4hvdc0fb41vxinpp"; + }; + + cargoSha256 = "1lsw6dwkjdwdqcx7gjsg2ndi4r79m8qyxgx7yz3al0iscwm7i645"; + + meta = with pkgs.lib; { + description = "Nix code formatter for nixpkgs"; + homepage = "https://nix-community.github.io/nixpkgs-fmt"; + license = licenses.asl20; + maintainers = with maintainers; [ zimbatm ]; + }; +} diff --git a/__std__/cells/marconi/packages/pre-commit-check.nix b/__std__/cells/marconi/packages/pre-commit-check.nix new file mode 100644 index 0000000000..42b0d1ebde --- /dev/null +++ b/__std__/cells/marconi/packages/pre-commit-check.nix @@ -0,0 +1,43 @@ +{ inputs, cell }: + +let + inherit (cell.library) pkgs; +in + +inputs.pre-commit-hooks-nix.lib.run { + + src = pkgs.lib.cleanSource inputs.self; + + tools = { + shellcheck = pkgs.shellcheck; + stylish-haskell = cell.packages.stylish-haskell; + nixpkgs-fmt = cell.packages.nixpkgs-fmt; + cabal-fmt = cell.packages.cabal-fmt; + }; + + hooks = { + stylish-haskell.enable = true; + cabal-fmt.enable = true; + shellcheck.enable = true; + + nixpkgs-fmt = { + enable = true; + # While nixpkgs-fmt does exclude patterns specified in `.ignore` this + # does not appear to work inside the hook. For now we have to thus + # maintain excludes here *and* in `./.ignore` and *keep them in sync*. + excludes = + [ + ".*nix/pkgs/haskell/materialized.*/.*" + ".*/packages.nix$" + ]; + }; + + png-optimization = { + enable = true; + name = "png-optimization"; + description = "Ensure that PNG files are optimized"; + entry = "${pkgs.optipng}/bin/optipng"; + files = "\\.png$"; + }; + }; +} diff --git a/__std__/cells/marconi/packages/repo-root.nix b/__std__/cells/marconi/packages/repo-root.nix new file mode 100644 index 0000000000..6a3f5f12c7 --- /dev/null +++ b/__std__/cells/marconi/packages/repo-root.nix @@ -0,0 +1,9 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.writeShellApplication { + name = "repo-root"; + text = "git rev-parse --show-toplevel"; + runtimeInputs = [ cell.library.pkgs.git ]; +} diff --git a/__std__/cells/marconi/packages/scriv.nix b/__std__/cells/marconi/packages/scriv.nix new file mode 100644 index 0000000000..bf2292d81c --- /dev/null +++ b/__std__/cells/marconi/packages/scriv.nix @@ -0,0 +1,35 @@ +# TODO(std) DUP + +{ inputs, cell }: + +let + package = { lib, buildPythonPackage, fetchPypi, attrs, click, click-log, jinja2, requests }: + buildPythonPackage rec { + + pname = "scriv"; + + version = "0.17.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-jyOIPvg9/FDwn3au8I/zBz8nUsclXbFdJM2L/swyN5w="; + }; + + propagatedBuildInputs = [ + attrs + click + click-log + jinja2 + requests + ]; + + doCheck = false; + + meta = with lib; { + homepage = "https://github.com/nedbat/scriv"; + description = ""; + maintainers = with maintainers; [ michaelpj ]; + }; + }; +in +cell.library.pkgs.python3Packages.callPackage package { } diff --git a/__std__/cells/marconi/packages/sphinx-markdown-tables.nix b/__std__/cells/marconi/packages/sphinx-markdown-tables.nix new file mode 100644 index 0000000000..59520a7fac --- /dev/null +++ b/__std__/cells/marconi/packages/sphinx-markdown-tables.nix @@ -0,0 +1,29 @@ +# TODO(std) DUP + +{ inputs, cell }: + +let + package = { lib, buildPythonPackage, fetchPypi, markdown }: + buildPythonPackage rec { + + pname = "sphinx-markdown-tables"; + + version = "0.0.17"; + + src = fetchPypi { + inherit pname version; + sha256 = "a8bT1ADqzP7r0ohEa8CN2DCDNnxYuF1A/mwS1371kvE="; + }; + + propagatedBuildInputs = [ markdown ]; + + doCheck = false; + + meta = with lib; { + homepage = "https://github.com/ryanfox/sphinx-markdown-tables"; + description = ""; + maintainers = with maintainers; [ michaelpj ]; + }; + }; +in +cell.library.pkgs.python3Packages.callPackage package { } diff --git a/__std__/cells/marconi/packages/sphinx-toolchain.nix b/__std__/cells/marconi/packages/sphinx-toolchain.nix new file mode 100644 index 0000000000..0247edd506 --- /dev/null +++ b/__std__/cells/marconi/packages/sphinx-toolchain.nix @@ -0,0 +1,18 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.python3.withPackages (pkgs: [ + + cell.packages.sphinxcontrib-haddock + cell.packages.sphinxcontrib-domaintools + cell.packages.sphinxcontrib-bibtex + cell.packages.sphinx-markdown-tables + cell.packages.sphinxemoji + + pkgs.sphinxcontrib_plantuml + pkgs.sphinx-autobuild + pkgs.sphinx + pkgs.sphinx_rtd_theme + pkgs.recommonmark +]) diff --git a/__std__/cells/marconi/packages/sphinxcontrib-bibtex.nix b/__std__/cells/marconi/packages/sphinxcontrib-bibtex.nix new file mode 100644 index 0000000000..a4e7d0f52d --- /dev/null +++ b/__std__/cells/marconi/packages/sphinxcontrib-bibtex.nix @@ -0,0 +1,14 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.python3Packages.sphinxcontrib-bibtex.overrideAttrs (oldAttrs: rec { + + version = "2.2.0"; + + src = cell.library.pkgs.python3Packages.fetchPypi { + inherit (oldAttrs) pname; + inherit version; + sha256 = "1cp3dj5bbl122d64i3vbqhjhfplnh1rwm9dw4cy9hxjd2lz8803m"; + }; +}) diff --git a/__std__/cells/marconi/packages/sphinxcontrib-haddock.nix b/__std__/cells/marconi/packages/sphinxcontrib-haddock.nix new file mode 100644 index 0000000000..cb041b2e79 --- /dev/null +++ b/__std__/cells/marconi/packages/sphinxcontrib-haddock.nix @@ -0,0 +1,7 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.pkgs.callPackage inputs.sphinxcontrib-haddock { + pythonPackages = cell.library.pkgs.python3Packages; +} diff --git a/__std__/cells/marconi/packages/sphinxemoji.nix b/__std__/cells/marconi/packages/sphinxemoji.nix new file mode 100644 index 0000000000..1d5e4271ef --- /dev/null +++ b/__std__/cells/marconi/packages/sphinxemoji.nix @@ -0,0 +1,29 @@ +# TODO(std) DUP + +{ inputs, cell }: + +let + package = { lib, buildPythonPackage, fetchPypi, sphinx }: + buildPythonPackage rec { + pname = "sphinxemoji"; + + version = "0.1.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "1s2w8hn9kfcg371l9msn8vnmdjmhih9pc1mhr9i4l0j54xsrgrwf"; + }; + + propagatedBuildInputs = [ sphinx ]; + + doCheck = false; + + meta = with lib; { + homepage = "https://github.com/sphinx-contrib/emojicodes"; + description = ""; + maintainers = with maintainers; [ michaelpj ]; + }; + }; +in +cell.library.pkgs.python3Packages.callPackage package { } + diff --git a/__std__/cells/marconi/packages/stylish-haskell.nix b/__std__/cells/marconi/packages/stylish-haskell.nix new file mode 100644 index 0000000000..0a46d73daa --- /dev/null +++ b/__std__/cells/marconi/packages/stylish-haskell.nix @@ -0,0 +1,5 @@ +# TODO(std) DUP + +{ inputs, cell }: + +cell.library.haskell-language-server-project.hsPkgs.stylish-haskell.components.exes.stylish-haskell diff --git a/cabal.project b/cabal.project index 788e908e26..b64c8b0c44 100644 --- a/cabal.project +++ b/cabal.project @@ -16,28 +16,11 @@ index-state: 2023-02-28T00:00:00Z -- See CONTRIBUTING.adoc for how to update index-state index-state: , hackage.haskell.org 2023-02-28T00:00:00Z - , cardano-haskell-packages 2023-02-28T00:00:00Z - -packages: cardano-node-emulator - cardano-streaming - doc - freer-extras - marconi-chain-index + , cardano-haskell-packages 2023-03-13T07:15:21Z +packages: marconi-chain-index marconi-core marconi-sidechain - pab-blockfrost - plutus-chain-index - plutus-chain-index-core - plutus-contract - plutus-contract-certification - plutus-e2e-tests - plutus-example - plutus-ledger - plutus-pab - plutus-pab-executables - plutus-script-utils - plutus-tx-constraints - plutus-use-cases + cardano-streaming -- We never, ever, want this. write-ghc-environment-files: never @@ -64,6 +47,14 @@ allow-newer: , servant-foreign:lens , blockfrost-api:lens +allow-older: + -- freer-extras works with lens-5.2 (rather than 5.2.1) + , freer-extras:lens + -- freer-extras works with resource-pool-0.3.1.0 (rather than 0.4.0.0) + , freer-extras:resource-pool + -- plutus-ledger works with lens-5.2 (rather than 5.2.1) + , plutus-ledger:lens + constraints: -- cardano-prelude-0.1.0.0 needs , protolude <0.3.1 @@ -98,19 +89,6 @@ constraints: -- ouroboros-consensus-shelley-0.1.0.1 needs , ouroboros-consensus-protocol==0.1.0.1 --- The plugin will typically fail when producing Haddock documentation. However, --- in this instance you can simply tell it to defer any errors to runtime (which --- will never happen since you're building documentation). --- --- So, any package using 'PlutusTx.compile' in the code for which you need to --- generate haddock documentation should use the following 'haddock-options'. -package plutus-ledger - haddock-options: "--optghc=-fplugin-opt PlutusTx.Plugin:defer-errors" -package plutus-script-utils - haddock-options: "--optghc=-fplugin-opt PlutusTx.Plugin:defer-errors" -package plutus-contract - haddock-options: "--optghc=-fplugin-opt PlutusTx.Plugin:defer-errors" - -- These packages appear in our dependency tree and are very slow to build. -- Empirically, turning off optimization shaves off ~50% build time. -- It also mildly improves recompilation avoidance. @@ -139,7 +117,7 @@ package cardano-wallet-core-integration -- Making it a good place to start when bumping dependencies. -- As, for example, bumping the node first highly risks breaking API with the wallet. -- Unless early bug fixes are required, this is fine as the wallet tracks stable releases of the node. --- And it is indeed nice for plutus-apps to track stable releases of the node too. +-- And it is indeed nice for marconi track stable releases of the node too. -- -- The current version is dated 2022/08/10 source-repository-package @@ -147,15 +125,6 @@ source-repository-package location: https://github.com/input-output-hk/cardano-wallet tag: 18a931648550246695c790578d4a55ee2f10463e subdir: - lib/cli - lib/core - lib/core-integration - lib/dbvar - lib/launcher - lib/numeric - lib/shelley - lib/strict-non-empty-containers - lib/test-utils lib/text-class -- Should follow cardano-wallet. @@ -202,3 +171,13 @@ source-repository-package libs/small-steps libs/small-steps-test libs/non-integral + +-- This is needed because we rely on an unreleased branch of +-- plutus-apps. The feature we need +source-repository-package + type: git + location: https://github.com/input-output-hk/plutus-apps + tag: 9d90900d049f2333960fbc349cc816d2b163cda5 + subdir: + plutus-chain-index-core + cardano-node-emulator diff --git a/flake.lock b/flake.lock index 9e587219a9..f7cc2f380b 100644 --- a/flake.lock +++ b/flake.lock @@ -1,6 +1,23 @@ { "nodes": { "CHaP": { + "flake": false, + "locked": { + "lastModified": 1678700984, + "narHash": "sha256-HzXVzCPJSnJGxatqOmbcLc23qDHvF4itTkqk4oxi3dk=", + "owner": "input-output-hk", + "repo": "cardano-haskell-packages", + "rev": "81f266cd592aa855cc07b410cc1c16f7ae031da7", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "repo", + "repo": "cardano-haskell-packages", + "type": "github" + } + }, + "CHaP_2": { "flake": false, "locked": { "lastModified": 1678160279, @@ -17,7 +34,24 @@ "type": "github" } }, - "CHaP_2": { + "CHaP_3": { + "flake": false, + "locked": { + "lastModified": 1677170904, + "narHash": "sha256-StgKSKwxIPoumenTIc5seygIWzBVwcDFt2KO5QU5oK4=", + "owner": "input-output-hk", + "repo": "cardano-haskell-packages", + "rev": "3db1f9f235b25ad6fc41c555c167912ceead5164", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "repo", + "repo": "cardano-haskell-packages", + "type": "github" + } + }, + "CHaP_4": { "flake": false, "locked": { "lastModified": 1677170904, @@ -66,6 +100,38 @@ "type": "github" } }, + "HTTP_3": { + "flake": false, + "locked": { + "lastModified": 1451647621, + "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", + "owner": "phadej", + "repo": "HTTP", + "rev": "9bc0996d412fef1787449d841277ef663ad9a915", + "type": "github" + }, + "original": { + "owner": "phadej", + "repo": "HTTP", + "type": "github" + } + }, + "HTTP_4": { + "flake": false, + "locked": { + "lastModified": 1451647621, + "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=", + "owner": "phadej", + "repo": "HTTP", + "rev": "9bc0996d412fef1787449d841277ef663ad9a915", + "type": "github" + }, + "original": { + "owner": "phadej", + "repo": "HTTP", + "type": "github" + } + }, "blank": { "locked": { "lastModified": 1625557891, @@ -126,6 +192,66 @@ "type": "github" } }, + "blank_5": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, + "blank_6": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, + "blank_7": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, + "blank_8": { + "locked": { + "lastModified": 1625557891, + "narHash": "sha256-O8/MWsPBGhhyPoPLHZAuoZiiHo9q6FLlEeIDEXuj6T4=", + "owner": "divnix", + "repo": "blank", + "rev": "5a5d2684073d9f563072ed07c871d577a6c614a8", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "blank", + "type": "github" + } + }, "cabal-32": { "flake": false, "locked": { @@ -160,6 +286,40 @@ "type": "github" } }, + "cabal-32_3": { + "flake": false, + "locked": { + "lastModified": 1603716527, + "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "owner": "haskell", + "repo": "cabal", + "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "3.2", + "repo": "cabal", + "type": "github" + } + }, + "cabal-32_4": { + "flake": false, + "locked": { + "lastModified": 1603716527, + "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=", + "owner": "haskell", + "repo": "cabal", + "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "3.2", + "repo": "cabal", + "type": "github" + } + }, "cabal-34": { "flake": false, "locked": { @@ -194,6 +354,40 @@ "type": "github" } }, + "cabal-34_3": { + "flake": false, + "locked": { + "lastModified": 1640353650, + "narHash": "sha256-N1t6M3/wqj90AEdRkeC8i923gQYUpzSr8b40qVOZ1Rk=", + "owner": "haskell", + "repo": "cabal", + "rev": "942639c18c0cd8ec53e0a6f8d120091af35312cd", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "3.4", + "repo": "cabal", + "type": "github" + } + }, + "cabal-34_4": { + "flake": false, + "locked": { + "lastModified": 1640353650, + "narHash": "sha256-N1t6M3/wqj90AEdRkeC8i923gQYUpzSr8b40qVOZ1Rk=", + "owner": "haskell", + "repo": "cabal", + "rev": "942639c18c0cd8ec53e0a6f8d120091af35312cd", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "3.4", + "repo": "cabal", + "type": "github" + } + }, "cabal-36": { "flake": false, "locked": { @@ -228,6 +422,40 @@ "type": "github" } }, + "cabal-36_3": { + "flake": false, + "locked": { + "lastModified": 1641652457, + "narHash": "sha256-BlFPKP4C4HRUJeAbdembX1Rms1LD380q9s0qVDeoAak=", + "owner": "haskell", + "repo": "cabal", + "rev": "f27667f8ec360c475027dcaee0138c937477b070", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "3.6", + "repo": "cabal", + "type": "github" + } + }, + "cabal-36_4": { + "flake": false, + "locked": { + "lastModified": 1641652457, + "narHash": "sha256-BlFPKP4C4HRUJeAbdembX1Rms1LD380q9s0qVDeoAak=", + "owner": "haskell", + "repo": "cabal", + "rev": "f27667f8ec360c475027dcaee0138c937477b070", + "type": "github" + }, + "original": { + "owner": "haskell", + "ref": "3.6", + "repo": "cabal", + "type": "github" + } + }, "cardano-shell": { "flake": false, "locked": { @@ -260,6 +488,38 @@ "type": "github" } }, + "cardano-shell_3": { + "flake": false, + "locked": { + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "cardano-shell", + "type": "github" + } + }, + "cardano-shell_4": { + "flake": false, + "locked": { + "lastModified": 1608537748, + "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=", + "owner": "input-output-hk", + "repo": "cardano-shell", + "rev": "9392c75087cb9a3d453998f4230930dea3a95725", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "cardano-shell", + "type": "github" + } + }, "devshell": { "inputs": { "flake-utils": [ @@ -292,14 +552,14 @@ "devshell_2": { "inputs": { "flake-utils": [ - "plutus-core", + "plutus-apps", "haskell-nix", "tullia", "std", "flake-utils" ], "nixpkgs": [ - "plutus-core", + "plutus-apps", "haskell-nix", "tullia", "std", @@ -323,12 +583,18 @@ "devshell_3": { "inputs": { "flake-utils": [ + "plutus-apps", "plutus-core", + "haskell-nix", + "tullia", "std", "flake-utils" ], "nixpkgs": [ + "plutus-apps", "plutus-core", + "haskell-nix", + "tullia", "std", "nixpkgs" ] @@ -350,10 +616,14 @@ "devshell_4": { "inputs": { "flake-utils": [ + "plutus-apps", + "plutus-core", "std", "flake-utils" ], "nixpkgs": [ + "plutus-apps", + "plutus-core", "std", "nixpkgs" ] @@ -372,11 +642,121 @@ "type": "github" } }, - "dmerge": { + "devshell_5": { "inputs": { - "nixlib": [ - "haskell-nix", - "tullia", + "flake-utils": [ + "plutus-apps", + "std", + "flake-utils" + ], + "nixpkgs": [ + "plutus-apps", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "devshell_6": { + "inputs": { + "flake-utils": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "flake-utils" + ], + "nixpkgs": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "devshell_7": { + "inputs": { + "flake-utils": [ + "plutus-core", + "std", + "flake-utils" + ], + "nixpkgs": [ + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "devshell_8": { + "inputs": { + "flake-utils": [ + "std", + "flake-utils" + ], + "nixpkgs": [ + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", + "owner": "numtide", + "repo": "devshell", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "dmerge": { + "inputs": { + "nixlib": [ + "haskell-nix", + "tullia", "std", "nixpkgs" ], @@ -404,14 +784,14 @@ "dmerge_2": { "inputs": { "nixlib": [ - "plutus-core", + "plutus-apps", "haskell-nix", "tullia", "std", "nixpkgs" ], "yants": [ - "plutus-core", + "plutus-apps", "haskell-nix", "tullia", "std", @@ -435,12 +815,18 @@ "dmerge_3": { "inputs": { "nixlib": [ + "plutus-apps", "plutus-core", + "haskell-nix", + "tullia", "std", "nixpkgs" ], "yants": [ + "plutus-apps", "plutus-core", + "haskell-nix", + "tullia", "std", "yants" ] @@ -460,6 +846,120 @@ } }, "dmerge_4": { + "inputs": { + "nixlib": [ + "plutus-apps", + "plutus-core", + "std", + "nixpkgs" + ], + "yants": [ + "plutus-apps", + "plutus-core", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "data-merge", + "type": "github" + } + }, + "dmerge_5": { + "inputs": { + "nixlib": [ + "plutus-apps", + "std", + "nixpkgs" + ], + "yants": [ + "plutus-apps", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "data-merge", + "type": "github" + } + }, + "dmerge_6": { + "inputs": { + "nixlib": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ], + "yants": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "data-merge", + "type": "github" + } + }, + "dmerge_7": { + "inputs": { + "nixlib": [ + "plutus-core", + "std", + "nixpkgs" + ], + "yants": [ + "plutus-core", + "std", + "yants" + ] + }, + "locked": { + "lastModified": 1659548052, + "narHash": "sha256-fzI2gp1skGA8mQo/FBFrUAtY0GQkAIAaV/V127TJPyY=", + "owner": "divnix", + "repo": "data-merge", + "rev": "d160d18ce7b1a45b88344aa3f13ed1163954b497", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "data-merge", + "type": "github" + } + }, + "dmerge_8": { "inputs": { "nixlib": [ "std", @@ -500,7 +1000,7 @@ "type": "github" } }, - "flake-compat_2": { + "flake-compat_10": { "flake": false, "locked": { "lastModified": 1672831974, @@ -517,7 +1017,7 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_11": { "flake": false, "locked": { "lastModified": 1650374568, @@ -533,7 +1033,23 @@ "type": "github" } }, - "flake-compat_4": { + "flake-compat_12": { + "flake": false, + "locked": { + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_2": { "flake": false, "locked": { "lastModified": 1672831974, @@ -550,7 +1066,7 @@ "type": "github" } }, - "flake-compat_5": { + "flake-compat_3": { "flake": false, "locked": { "lastModified": 1650374568, @@ -566,25 +1082,107 @@ "type": "github" } }, - "flake-compat_6": { + "flake-compat_4": { "flake": false, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", + "lastModified": 1647532380, + "narHash": "sha256-wswAxyO8AJTH7d5oU8VK82yBCpqwA+p6kLgpb1f1PAY=", + "owner": "input-output-hk", "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "rev": "7da118186435255a30b5ffeabba9629c344c0bec", "type": "github" }, "original": { - "owner": "edolstra", + "owner": "input-output-hk", "repo": "flake-compat", "type": "github" } }, - "flake-utils": { + "flake-compat_5": { + "flake": false, "locked": { - "lastModified": 1644229661, + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_6": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_7": { + "flake": false, + "locked": { + "lastModified": 1672831974, + "narHash": "sha256-z9k3MfslLjWQfnjBtEtJZdq3H7kyi2kQtUThfTgdRk0=", + "owner": "input-output-hk", + "repo": "flake-compat", + "rev": "45f2638735f8cdc40fe302742b79f248d23eb368", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "ref": "hkm/gitlab-fix", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_8": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_9": { + "flake": false, + "locked": { + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1644229661, "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", "owner": "numtide", "repo": "flake-utils", @@ -598,6 +1196,21 @@ } }, "flake-utils_10": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_11": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -612,7 +1225,7 @@ "type": "github" } }, - "flake-utils_11": { + "flake-utils_12": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -627,7 +1240,7 @@ "type": "github" } }, - "flake-utils_12": { + "flake-utils_13": { "locked": { "lastModified": 1644229661, "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", @@ -642,7 +1255,7 @@ "type": "github" } }, - "flake-utils_13": { + "flake-utils_14": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -657,7 +1270,7 @@ "type": "github" } }, - "flake-utils_14": { + "flake-utils_15": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -672,13 +1285,13 @@ "type": "github" } }, - "flake-utils_2": { + "flake-utils_16": { "locked": { - "lastModified": 1653893745, - "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", "owner": "numtide", "repo": "flake-utils", - "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", "type": "github" }, "original": { @@ -687,7 +1300,7 @@ "type": "github" } }, - "flake-utils_3": { + "flake-utils_17": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -702,7 +1315,7 @@ "type": "github" } }, - "flake-utils_4": { + "flake-utils_18": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -717,7 +1330,7 @@ "type": "github" } }, - "flake-utils_5": { + "flake-utils_19": { "locked": { "lastModified": 1644229661, "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", @@ -732,7 +1345,7 @@ "type": "github" } }, - "flake-utils_6": { + "flake-utils_2": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -747,7 +1360,22 @@ "type": "github" } }, - "flake-utils_7": { + "flake-utils_20": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_21": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -762,7 +1390,7 @@ "type": "github" } }, - "flake-utils_8": { + "flake-utils_22": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -777,7 +1405,7 @@ "type": "github" } }, - "flake-utils_9": { + "flake-utils_23": { "locked": { "lastModified": 1644229661, "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", @@ -792,1205 +1420,2729 @@ "type": "github" } }, - "ghc-8.6.5-iohk": { - "flake": false, + "flake-utils_24": { "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "ghc-8.6.5-iohk_2": { - "flake": false, + "flake-utils_25": { "locked": { - "lastModified": 1600920045, - "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", - "owner": "input-output-hk", - "repo": "ghc", - "rev": "95713a6ecce4551240da7c96b6176f980af75cae", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "input-output-hk", - "ref": "release/8.6.5-iohk", - "repo": "ghc", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "pre-commit-hooks-nix", - "nixpkgs" - ] - }, + "flake-utils_26": { "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "gitignore-nix": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, + "flake-utils_27": { "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "gitignore-nix_2": { - "inputs": { - "nixpkgs": [ - "plutus-core", - "nixpkgs" - ] - }, + "flake-utils_28": { "locked": { - "lastModified": 1660459072, - "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "gomod2nix": { - "inputs": { - "nixpkgs": "nixpkgs_2", - "utils": "utils" - }, + "flake-utils_3": { "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "tweag", - "repo": "gomod2nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "gomod2nix_2": { - "inputs": { - "nixpkgs": "nixpkgs_7", - "utils": "utils_2" - }, + "flake-utils_4": { "locked": { - "lastModified": 1655245309, - "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "tweag", - "repo": "gomod2nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "hackage-nix": { - "flake": false, + "flake-utils_5": { "locked": { - "lastModified": 1678235179, - "narHash": "sha256-rXQ4z61o9gQ72FQYwt8nmtP4BzlF5LaNFjSS8fQHdWQ=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "9ab000433f6dd44e26ce9fd9aa1f8cd42ac6b387", + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "hackage-nix_2": { - "flake": false, + "flake-utils_6": { "locked": { - "lastModified": 1672878275, - "narHash": "sha256-rxvW6ZEylpZolEsJbdQ1tCxBLlG52mEJwL734u4zJCs=", - "owner": "input-output-hk", - "repo": "hackage.nix", - "rev": "d07ba13b6bf6197ec96c7e912cb1184eaf005928", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "hackage.nix", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-language-server": { - "flake": false, + "flake-utils_7": { "locked": { - "lastModified": 1663135728, - "narHash": "sha256-ghyyig0GZXRXS56FxH8unpDceU06i/uGBCBmRwneZPw=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "ddb21a0c8d4e657c4b81ce250239bccf28fc9524", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { - "owner": "haskell", - "ref": "1.8.0.0", - "repo": "haskell-language-server", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-language-server_2": { - "flake": false, + "flake-utils_8": { "locked": { - "lastModified": 1672051165, - "narHash": "sha256-j3XRQTWa7jsVlimaxFZNnlE9IzWII9Prj1/+otks5FQ=", - "owner": "haskell", - "repo": "haskell-language-server", - "rev": "1916b5782d9f3204d25a1d8f94da4cfd83ae2607", + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", "type": "github" }, "original": { - "owner": "haskell", - "ref": "1.9.0.0", - "repo": "haskell-language-server", + "owner": "numtide", + "repo": "flake-utils", "type": "github" } }, - "haskell-nix": { - "inputs": { - "HTTP": "HTTP", - "cabal-32": "cabal-32", - "cabal-34": "cabal-34", - "cabal-36": "cabal-36", - "cardano-shell": "cardano-shell", - "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", - "hackage": [ - "hackage-nix" - ], - "hpc-coveralls": "hpc-coveralls", - "hydra": "hydra", - "iserv-proxy": "iserv-proxy", - "nixpkgs": [ - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003", - "nixpkgs-2105": "nixpkgs-2105", - "nixpkgs-2111": "nixpkgs-2111", - "nixpkgs-2205": "nixpkgs-2205", - "nixpkgs-2211": "nixpkgs-2211", - "nixpkgs-unstable": "nixpkgs-unstable", - "old-ghc-nix": "old-ghc-nix", - "stackage": "stackage", - "tullia": "tullia" + "flake-utils_9": { + "locked": { + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "type": "github" }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "ghc-8.6.5-iohk": { + "flake": false, "locked": { - "lastModified": 1675900540, - "narHash": "sha256-yItNeUA3yG0VBle6PG0KOnKV/ZVMG8gAMLZKGp0HiWY=", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "7075077d46e684d50e1b00759bb4590426c99c70", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "haskell.nix", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "haskell-nix_2": { - "inputs": { - "HTTP": "HTTP_2", - "cabal-32": "cabal-32_2", - "cabal-34": "cabal-34_2", - "cabal-36": "cabal-36_2", - "cardano-shell": "cardano-shell_2", - "flake-compat": "flake-compat_4", - "flake-utils": "flake-utils_5", - "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", - "hackage": [ - "plutus-core", - "hackage-nix" - ], - "hpc-coveralls": "hpc-coveralls_2", - "hydra": "hydra_2", - "iserv-proxy": "iserv-proxy_2", - "nixpkgs": [ - "plutus-core", - "nixpkgs" - ], - "nixpkgs-2003": "nixpkgs-2003_2", - "nixpkgs-2105": "nixpkgs-2105_2", - "nixpkgs-2111": "nixpkgs-2111_2", - "nixpkgs-2205": "nixpkgs-2205_2", - "nixpkgs-2211": "nixpkgs-2211_2", - "nixpkgs-unstable": "nixpkgs-unstable_2", - "old-ghc-nix": "old-ghc-nix_2", - "stackage": "stackage_2", - "tullia": "tullia_2" - }, + "ghc-8.6.5-iohk_2": { + "flake": false, "locked": { - "lastModified": 1675900540, - "narHash": "sha256-yItNeUA3yG0VBle6PG0KOnKV/ZVMG8gAMLZKGp0HiWY=", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", "owner": "input-output-hk", - "repo": "haskell.nix", - "rev": "7075077d46e684d50e1b00759bb4590426c99c70", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { "owner": "input-output-hk", - "repo": "haskell.nix", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "hpc-coveralls": { + "ghc-8.6.5-iohk_3": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "hpc-coveralls_2": { + "ghc-8.6.5-iohk_4": { "flake": false, "locked": { - "lastModified": 1607498076, - "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", - "owner": "sevanspowell", - "repo": "hpc-coveralls", - "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "lastModified": 1600920045, + "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=", + "owner": "input-output-hk", + "repo": "ghc", + "rev": "95713a6ecce4551240da7c96b6176f980af75cae", "type": "github" }, "original": { - "owner": "sevanspowell", - "repo": "hpc-coveralls", + "owner": "input-output-hk", + "ref": "release/8.6.5-iohk", + "repo": "ghc", "type": "github" } }, - "hydra": { + "gitignore": { "inputs": { - "nix": "nix", "nixpkgs": [ - "haskell-nix", - "hydra", - "nix", + "plutus-apps", + "pre-commit-hooks-nix", "nixpkgs" ] }, "locked": { - "lastModified": 1646878427, - "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", - "owner": "NixOS", - "repo": "hydra", - "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" } }, - "hydra_2": { + "gitignore-nix": { "inputs": { - "nix": "nix_2", "nixpkgs": [ - "plutus-core", - "haskell-nix", - "hydra", - "nix", "nixpkgs" ] }, "locked": { - "lastModified": 1646878427, - "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", - "owner": "NixOS", - "repo": "hydra", - "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", "type": "github" }, "original": { - "id": "hydra", - "type": "indirect" + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" } }, - "iohk-nix": { + "gitignore-nix_2": { "inputs": { "nixpkgs": [ + "plutus-apps", "nixpkgs" ] }, "locked": { - "lastModified": 1667394105, - "narHash": "sha256-YhS7zGd6jK/QM/+wWyj0zUBZmE3HOXAL/kpJptGYIWg=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "7fc7625a9ab2ba137bc70ddbc89a13d3fdb78c8b", + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "hercules-ci", + "repo": "gitignore.nix", "type": "github" } }, - "iohk-nix_2": { + "gitignore-nix_3": { "inputs": { "nixpkgs": [ + "plutus-apps", "plutus-core", "nixpkgs" ] }, "locked": { - "lastModified": 1666358508, - "narHash": "sha256-ediFkDOBP7yVquw1XtHiYfuXKoEnvKGjTIAk9mC6qxo=", - "owner": "input-output-hk", - "repo": "iohk-nix", - "rev": "4848df60660e21fbb3fe157d996a8bac0a9cf2d6", + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "iohk-nix", + "owner": "hercules-ci", + "repo": "gitignore.nix", "type": "github" } }, - "iserv-proxy": { - "flake": false, + "gitignore-nix_4": { + "inputs": { + "nixpkgs": [ + "plutus-core", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "type": "github" }, "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" } }, - "iserv-proxy_2": { - "flake": false, + "gitignore_2": { + "inputs": { + "nixpkgs": [ + "pre-commit-hooks-nix", + "nixpkgs" + ] + }, "locked": { - "lastModified": 1670983692, - "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", - "ref": "hkm/remote-iserv", - "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", - "revCount": 10, - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", + "type": "github" }, "original": { - "ref": "hkm/remote-iserv", - "type": "git", - "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" } }, - "lowdown-src": { - "flake": false, + "gomod2nix": { + "inputs": { + "nixpkgs": "nixpkgs_2", + "utils": "utils" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "lowdown-src_2": { - "flake": false, + "gomod2nix_2": { + "inputs": { + "nixpkgs": "nixpkgs_7", + "utils": "utils_2" + }, "locked": { - "lastModified": 1633514407, - "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", - "owner": "kristapsdz", - "repo": "lowdown", - "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "kristapsdz", - "repo": "lowdown", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "mdbook-kroki-preprocessor": { - "flake": false, + "gomod2nix_3": { + "inputs": { + "nixpkgs": "nixpkgs_12", + "utils": "utils_3" + }, "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "mdbook-kroki-preprocessor_2": { - "flake": false, + "gomod2nix_4": { + "inputs": { + "nixpkgs": "nixpkgs_17", + "utils": "utils_4" + }, "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "lastModified": 1655245309, + "narHash": "sha256-d/YPoQ/vFn1+GTmSdvbSBSTOai61FONxB4+Lt6w/IVI=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", "type": "github" }, "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", + "owner": "tweag", + "repo": "gomod2nix", "type": "github" } }, - "mdbook-kroki-preprocessor_3": { + "hackage-nix": { "flake": false, "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "lastModified": 1678235179, + "narHash": "sha256-rXQ4z61o9gQ72FQYwt8nmtP4BzlF5LaNFjSS8fQHdWQ=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "9ab000433f6dd44e26ce9fd9aa1f8cd42ac6b387", "type": "github" }, "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", + "owner": "input-output-hk", + "repo": "hackage.nix", "type": "github" } }, - "mdbook-kroki-preprocessor_4": { + "hackage-nix_2": { "flake": false, "locked": { - "lastModified": 1661755005, - "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", - "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "lastModified": 1678235179, + "narHash": "sha256-rXQ4z61o9gQ72FQYwt8nmtP4BzlF5LaNFjSS8fQHdWQ=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "9ab000433f6dd44e26ce9fd9aa1f8cd42ac6b387", "type": "github" }, "original": { - "owner": "JoelCourtney", - "repo": "mdbook-kroki-preprocessor", + "owner": "input-output-hk", + "repo": "hackage.nix", "type": "github" } }, - "n2c": { - "inputs": { - "flake-utils": "flake-utils_4", - "nixpkgs": [ - "haskell-nix", - "tullia", - "std", - "nixpkgs" - ] - }, + "hackage-nix_3": { + "flake": false, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1672878275, + "narHash": "sha256-rxvW6ZEylpZolEsJbdQ1tCxBLlG52mEJwL734u4zJCs=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "d07ba13b6bf6197ec96c7e912cb1184eaf005928", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "input-output-hk", + "repo": "hackage.nix", "type": "github" } }, - "n2c_2": { - "inputs": { - "flake-utils": "flake-utils_8", - "nixpkgs": [ - "plutus-core", - "haskell-nix", - "tullia", - "std", - "nixpkgs" - ] - }, + "hackage-nix_4": { + "flake": false, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1672878275, + "narHash": "sha256-rxvW6ZEylpZolEsJbdQ1tCxBLlG52mEJwL734u4zJCs=", + "owner": "input-output-hk", + "repo": "hackage.nix", + "rev": "d07ba13b6bf6197ec96c7e912cb1184eaf005928", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "input-output-hk", + "repo": "hackage.nix", "type": "github" } }, - "n2c_3": { - "inputs": { - "flake-utils": "flake-utils_11", - "nixpkgs": [ - "plutus-core", - "std", - "nixpkgs" - ] - }, + "haskell-language-server": { + "flake": false, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1663135728, + "narHash": "sha256-ghyyig0GZXRXS56FxH8unpDceU06i/uGBCBmRwneZPw=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "ddb21a0c8d4e657c4b81ce250239bccf28fc9524", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "1.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "n2c_4": { - "inputs": { - "flake-utils": "flake-utils_14", - "nixpkgs": [ - "std", - "nixpkgs" - ] - }, + "haskell-language-server_2": { + "flake": false, "locked": { - "lastModified": 1665039323, - "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "lastModified": 1663135728, + "narHash": "sha256-ghyyig0GZXRXS56FxH8unpDceU06i/uGBCBmRwneZPw=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "ddb21a0c8d4e657c4b81ce250239bccf28fc9524", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "haskell", + "ref": "1.8.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix": { - "inputs": { - "lowdown-src": "lowdown-src", - "nixpkgs": "nixpkgs", - "nixpkgs-regression": "nixpkgs-regression" + "haskell-language-server_3": { + "flake": false, + "locked": { + "lastModified": 1672051165, + "narHash": "sha256-j3XRQTWa7jsVlimaxFZNnlE9IzWII9Prj1/+otks5FQ=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "1916b5782d9f3204d25a1d8f94da4cfd83ae2607", + "type": "github" }, + "original": { + "owner": "haskell", + "ref": "1.9.0.0", + "repo": "haskell-language-server", + "type": "github" + } + }, + "haskell-language-server_4": { + "flake": false, "locked": { - "lastModified": 1643066034, - "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", - "owner": "NixOS", - "repo": "nix", - "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "lastModified": 1672051165, + "narHash": "sha256-j3XRQTWa7jsVlimaxFZNnlE9IzWII9Prj1/+otks5FQ=", + "owner": "haskell", + "repo": "haskell-language-server", + "rev": "1916b5782d9f3204d25a1d8f94da4cfd83ae2607", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.6.0", - "repo": "nix", + "owner": "haskell", + "ref": "1.9.0.0", + "repo": "haskell-language-server", "type": "github" } }, - "nix-nomad": { + "haskell-nix": { "inputs": { - "flake-compat": "flake-compat_3", - "flake-utils": [ - "haskell-nix", - "tullia", - "nix2container", - "flake-utils" + "HTTP": "HTTP", + "cabal-32": "cabal-32", + "cabal-34": "cabal-34", + "cabal-36": "cabal-36", + "cardano-shell": "cardano-shell", + "flake-compat": "flake-compat_2", + "flake-utils": "flake-utils", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk", + "hackage": [ + "hackage-nix" ], - "gomod2nix": "gomod2nix", + "hpc-coveralls": "hpc-coveralls", + "hydra": "hydra", + "iserv-proxy": "iserv-proxy", "nixpkgs": [ - "haskell-nix", - "tullia", "nixpkgs" ], - "nixpkgs-lib": [ - "haskell-nix", - "tullia", - "nixpkgs" - ] + "nixpkgs-2003": "nixpkgs-2003", + "nixpkgs-2105": "nixpkgs-2105", + "nixpkgs-2111": "nixpkgs-2111", + "nixpkgs-2205": "nixpkgs-2205", + "nixpkgs-2211": "nixpkgs-2211", + "nixpkgs-unstable": "nixpkgs-unstable", + "old-ghc-nix": "old-ghc-nix", + "stackage": "stackage", + "tullia": "tullia" }, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1675900540, + "narHash": "sha256-yItNeUA3yG0VBle6PG0KOnKV/ZVMG8gAMLZKGp0HiWY=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "7075077d46e684d50e1b00759bb4590426c99c70", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "nix-nomad_2": { + "haskell-nix_2": { "inputs": { + "HTTP": "HTTP_2", + "cabal-32": "cabal-32_2", + "cabal-34": "cabal-34_2", + "cabal-36": "cabal-36_2", + "cardano-shell": "cardano-shell_2", "flake-compat": "flake-compat_5", - "flake-utils": [ - "plutus-core", - "haskell-nix", - "tullia", - "nix2container", - "flake-utils" + "flake-utils": "flake-utils_5", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_2", + "hackage": [ + "plutus-apps", + "hackage-nix" ], - "gomod2nix": "gomod2nix_2", + "hpc-coveralls": "hpc-coveralls_2", + "hydra": "hydra_2", + "iserv-proxy": "iserv-proxy_2", "nixpkgs": [ - "plutus-core", - "haskell-nix", - "tullia", + "plutus-apps", "nixpkgs" ], - "nixpkgs-lib": [ - "plutus-core", - "haskell-nix", - "tullia", - "nixpkgs" - ] + "nixpkgs-2003": "nixpkgs-2003_2", + "nixpkgs-2105": "nixpkgs-2105_2", + "nixpkgs-2111": "nixpkgs-2111_2", + "nixpkgs-2205": "nixpkgs-2205_2", + "nixpkgs-2211": "nixpkgs-2211_2", + "nixpkgs-unstable": "nixpkgs-unstable_2", + "old-ghc-nix": "old-ghc-nix_2", + "stackage": "stackage_2", + "tullia": "tullia_2" }, "locked": { - "lastModified": 1658277770, - "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", - "owner": "tristanpemble", - "repo": "nix-nomad", - "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "lastModified": 1675900540, + "narHash": "sha256-yItNeUA3yG0VBle6PG0KOnKV/ZVMG8gAMLZKGp0HiWY=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "7075077d46e684d50e1b00759bb4590426c99c70", "type": "github" }, "original": { - "owner": "tristanpemble", - "repo": "nix-nomad", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "nix2container": { + "haskell-nix_3": { "inputs": { - "flake-utils": "flake-utils_2", - "nixpkgs": "nixpkgs_3" + "HTTP": "HTTP_3", + "cabal-32": "cabal-32_3", + "cabal-34": "cabal-34_3", + "cabal-36": "cabal-36_3", + "cardano-shell": "cardano-shell_3", + "flake-compat": "flake-compat_7", + "flake-utils": "flake-utils_9", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_3", + "hackage": [ + "plutus-apps", + "plutus-core", + "hackage-nix" + ], + "hpc-coveralls": "hpc-coveralls_3", + "hydra": "hydra_3", + "iserv-proxy": "iserv-proxy_3", + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "nixpkgs" + ], + "nixpkgs-2003": "nixpkgs-2003_3", + "nixpkgs-2105": "nixpkgs-2105_3", + "nixpkgs-2111": "nixpkgs-2111_3", + "nixpkgs-2205": "nixpkgs-2205_3", + "nixpkgs-2211": "nixpkgs-2211_3", + "nixpkgs-unstable": "nixpkgs-unstable_3", + "old-ghc-nix": "old-ghc-nix_3", + "stackage": "stackage_3", + "tullia": "tullia_3" }, "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1675900540, + "narHash": "sha256-yItNeUA3yG0VBle6PG0KOnKV/ZVMG8gAMLZKGp0HiWY=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "7075077d46e684d50e1b00759bb4590426c99c70", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "nix2container_2": { + "haskell-nix_4": { "inputs": { - "flake-utils": "flake-utils_6", - "nixpkgs": "nixpkgs_8" + "HTTP": "HTTP_4", + "cabal-32": "cabal-32_4", + "cabal-34": "cabal-34_4", + "cabal-36": "cabal-36_4", + "cardano-shell": "cardano-shell_4", + "flake-compat": "flake-compat_10", + "flake-utils": "flake-utils_19", + "ghc-8.6.5-iohk": "ghc-8.6.5-iohk_4", + "hackage": [ + "plutus-core", + "hackage-nix" + ], + "hpc-coveralls": "hpc-coveralls_4", + "hydra": "hydra_4", + "iserv-proxy": "iserv-proxy_4", + "nixpkgs": [ + "plutus-core", + "nixpkgs" + ], + "nixpkgs-2003": "nixpkgs-2003_4", + "nixpkgs-2105": "nixpkgs-2105_4", + "nixpkgs-2111": "nixpkgs-2111_4", + "nixpkgs-2205": "nixpkgs-2205_4", + "nixpkgs-2211": "nixpkgs-2211_4", + "nixpkgs-unstable": "nixpkgs-unstable_4", + "old-ghc-nix": "old-ghc-nix_4", + "stackage": "stackage_4", + "tullia": "tullia_4" }, "locked": { - "lastModified": 1658567952, - "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "lastModified": 1675900540, + "narHash": "sha256-yItNeUA3yG0VBle6PG0KOnKV/ZVMG8gAMLZKGp0HiWY=", + "owner": "input-output-hk", + "repo": "haskell.nix", + "rev": "7075077d46e684d50e1b00759bb4590426c99c70", "type": "github" }, "original": { - "owner": "nlewo", - "repo": "nix2container", + "owner": "input-output-hk", + "repo": "haskell.nix", "type": "github" } }, - "nix_2": { - "inputs": { - "lowdown-src": "lowdown-src_2", - "nixpkgs": "nixpkgs_6", - "nixpkgs-regression": "nixpkgs-regression_2" - }, + "hpc-coveralls": { + "flake": false, "locked": { - "lastModified": 1643066034, - "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", - "owner": "NixOS", - "repo": "nix", - "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "2.6.0", - "repo": "nix", + "owner": "sevanspowell", + "repo": "hpc-coveralls", "type": "github" } }, - "nixago": { + "hpc-coveralls_2": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_3": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hpc-coveralls_4": { + "flake": false, + "locked": { + "lastModified": 1607498076, + "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=", + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430", + "type": "github" + }, + "original": { + "owner": "sevanspowell", + "repo": "hpc-coveralls", + "type": "github" + } + }, + "hydra": { "inputs": { - "flake-utils": [ - "haskell-nix", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ - "haskell-nix", - "tullia", - "std", - "blank" - ], + "nix": "nix", "nixpkgs": [ "haskell-nix", - "tullia", - "std", + "hydra", + "nix", "nixpkgs" ] }, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1646878427, + "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", + "owner": "NixOS", + "repo": "hydra", + "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", - "type": "github" + "id": "hydra", + "type": "indirect" } }, - "nixago_2": { + "hydra_2": { "inputs": { - "flake-utils": [ - "plutus-core", + "nix": "nix_2", + "nixpkgs": [ + "plutus-apps", "haskell-nix", - "tullia", - "std", - "flake-utils" - ], - "nixago-exts": [ + "hydra", + "nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1646878427, + "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", + "owner": "NixOS", + "repo": "hydra", + "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", + "type": "github" + }, + "original": { + "id": "hydra", + "type": "indirect" + } + }, + "hydra_3": { + "inputs": { + "nix": "nix_3", + "nixpkgs": [ + "plutus-apps", "plutus-core", "haskell-nix", - "tullia", - "std", - "blank" - ], + "hydra", + "nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1646878427, + "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", + "owner": "NixOS", + "repo": "hydra", + "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", + "type": "github" + }, + "original": { + "id": "hydra", + "type": "indirect" + } + }, + "hydra_4": { + "inputs": { + "nix": "nix_4", "nixpkgs": [ "plutus-core", "haskell-nix", - "tullia", - "std", + "hydra", + "nix", "nixpkgs" ] }, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1646878427, + "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=", + "owner": "NixOS", + "repo": "hydra", + "rev": "28b682b85b7efc5cf7974065792a1f22203a5927", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "id": "hydra", + "type": "indirect" + } + }, + "iohk-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1667394105, + "narHash": "sha256-YhS7zGd6jK/QM/+wWyj0zUBZmE3HOXAL/kpJptGYIWg=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "7fc7625a9ab2ba137bc70ddbc89a13d3fdb78c8b", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixago_3": { + "iohk-nix_2": { + "inputs": { + "nixpkgs": [ + "plutus-apps", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1667394105, + "narHash": "sha256-YhS7zGd6jK/QM/+wWyj0zUBZmE3HOXAL/kpJptGYIWg=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "7fc7625a9ab2ba137bc70ddbc89a13d3fdb78c8b", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "iohk-nix", + "type": "github" + } + }, + "iohk-nix_3": { "inputs": { - "flake-utils": [ - "plutus-core", - "std", - "flake-utils" - ], - "nixago-exts": [ - "plutus-core", - "std", - "blank" - ], "nixpkgs": [ + "plutus-apps", "plutus-core", - "std", "nixpkgs" ] }, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1666358508, + "narHash": "sha256-ediFkDOBP7yVquw1XtHiYfuXKoEnvKGjTIAk9mC6qxo=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "4848df60660e21fbb3fe157d996a8bac0a9cf2d6", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", + "owner": "input-output-hk", + "repo": "iohk-nix", "type": "github" } }, - "nixago_4": { + "iohk-nix_4": { "inputs": { - "flake-utils": [ - "std", - "flake-utils" - ], - "nixago-exts": [ - "std", - "blank" - ], "nixpkgs": [ - "std", + "plutus-core", "nixpkgs" ] }, "locked": { - "lastModified": 1661824785, - "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", - "owner": "nix-community", - "repo": "nixago", - "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "lastModified": 1666358508, + "narHash": "sha256-ediFkDOBP7yVquw1XtHiYfuXKoEnvKGjTIAk9mC6qxo=", + "owner": "input-output-hk", + "repo": "iohk-nix", + "rev": "4848df60660e21fbb3fe157d996a8bac0a9cf2d6", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "iohk-nix", + "type": "github" + } + }, + "iserv-proxy": { + "flake": false, + "locked": { + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + }, + "original": { + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + } + }, + "iserv-proxy_2": { + "flake": false, + "locked": { + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + }, + "original": { + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + } + }, + "iserv-proxy_3": { + "flake": false, + "locked": { + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + }, + "original": { + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + } + }, + "iserv-proxy_4": { + "flake": false, + "locked": { + "lastModified": 1670983692, + "narHash": "sha256-avLo34JnI9HNyOuauK5R69usJm+GfW3MlyGlYxZhTgY=", + "ref": "hkm/remote-iserv", + "rev": "50d0abb3317ac439a4e7495b185a64af9b7b9300", + "revCount": 10, + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + }, + "original": { + "ref": "hkm/remote-iserv", + "type": "git", + "url": "https://gitlab.haskell.org/hamishmack/iserv-proxy.git" + } + }, + "lowdown-src": { + "flake": false, + "locked": { + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "type": "github" + }, + "original": { + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" + } + }, + "lowdown-src_2": { + "flake": false, + "locked": { + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "type": "github" + }, + "original": { + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" + } + }, + "lowdown-src_3": { + "flake": false, + "locked": { + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "type": "github" + }, + "original": { + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" + } + }, + "lowdown-src_4": { + "flake": false, + "locked": { + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", + "type": "github" + }, + "original": { + "owner": "kristapsdz", + "repo": "lowdown", + "type": "github" + } + }, + "mdbook-kroki-preprocessor": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_2": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_3": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_4": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_5": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_6": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_7": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "mdbook-kroki-preprocessor_8": { + "flake": false, + "locked": { + "lastModified": 1661755005, + "narHash": "sha256-1TJuUzfyMycWlOQH67LR63/ll2GDZz25I3JfScy/Jnw=", + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "rev": "93adb5716d035829efed27f65f2f0833a7d3e76f", + "type": "github" + }, + "original": { + "owner": "JoelCourtney", + "repo": "mdbook-kroki-preprocessor", + "type": "github" + } + }, + "n2c": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": [ + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_2": { + "inputs": { + "flake-utils": "flake-utils_8", + "nixpkgs": [ + "plutus-apps", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_3": { + "inputs": { + "flake-utils": "flake-utils_12", + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_4": { + "inputs": { + "flake-utils": "flake-utils_15", + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_5": { + "inputs": { + "flake-utils": "flake-utils_18", + "nixpkgs": [ + "plutus-apps", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_6": { + "inputs": { + "flake-utils": "flake-utils_22", + "nixpkgs": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_7": { + "inputs": { + "flake-utils": "flake-utils_25", + "nixpkgs": [ + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "n2c_8": { + "inputs": { + "flake-utils": "flake-utils_28", + "nixpkgs": [ + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1665039323, + "narHash": "sha256-SAh3ZjFGsaCI8FRzXQyp56qcGdAqgKEfJWPCQ0Sr7tQ=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "b008fe329ffb59b67bf9e7b08ede6ee792f2741a", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "nix": { + "inputs": { + "lowdown-src": "lowdown-src", + "nixpkgs": "nixpkgs", + "nixpkgs-regression": "nixpkgs-regression" + }, + "locked": { + "lastModified": 1643066034, + "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", + "owner": "NixOS", + "repo": "nix", + "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "2.6.0", + "repo": "nix", + "type": "github" + } + }, + "nix-nomad": { + "inputs": { + "flake-compat": "flake-compat_3", + "flake-utils": [ + "haskell-nix", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix", + "nixpkgs": [ + "haskell-nix", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "haskell-nix", + "tullia", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "type": "github" + }, + "original": { + "owner": "tristanpemble", + "repo": "nix-nomad", + "type": "github" + } + }, + "nix-nomad_2": { + "inputs": { + "flake-compat": "flake-compat_6", + "flake-utils": [ + "plutus-apps", + "haskell-nix", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_2", + "nixpkgs": [ + "plutus-apps", + "haskell-nix", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "plutus-apps", + "haskell-nix", + "tullia", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "type": "github" + }, + "original": { + "owner": "tristanpemble", + "repo": "nix-nomad", + "type": "github" + } + }, + "nix-nomad_3": { + "inputs": { + "flake-compat": "flake-compat_8", + "flake-utils": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_3", + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "type": "github" + }, + "original": { + "owner": "tristanpemble", + "repo": "nix-nomad", + "type": "github" + } + }, + "nix-nomad_4": { + "inputs": { + "flake-compat": "flake-compat_11", + "flake-utils": [ + "plutus-core", + "haskell-nix", + "tullia", + "nix2container", + "flake-utils" + ], + "gomod2nix": "gomod2nix_4", + "nixpkgs": [ + "plutus-core", + "haskell-nix", + "tullia", + "nixpkgs" + ], + "nixpkgs-lib": [ + "plutus-core", + "haskell-nix", + "tullia", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1658277770, + "narHash": "sha256-T/PgG3wUn8Z2rnzfxf2VqlR1CBjInPE0l1yVzXxPnt0=", + "owner": "tristanpemble", + "repo": "nix-nomad", + "rev": "054adcbdd0a836ae1c20951b67ed549131fd2d70", + "type": "github" + }, + "original": { + "owner": "tristanpemble", + "repo": "nix-nomad", + "type": "github" + } + }, + "nix2container": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "nix2container_2": { + "inputs": { + "flake-utils": "flake-utils_6", + "nixpkgs": "nixpkgs_8" + }, + "locked": { + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "nix2container_3": { + "inputs": { + "flake-utils": "flake-utils_10", + "nixpkgs": "nixpkgs_13" + }, + "locked": { + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "nix2container_4": { + "inputs": { + "flake-utils": "flake-utils_20", + "nixpkgs": "nixpkgs_18" + }, + "locked": { + "lastModified": 1658567952, + "narHash": "sha256-XZ4ETYAMU7XcpEeAFP3NOl9yDXNuZAen/aIJ84G+VgA=", + "owner": "nlewo", + "repo": "nix2container", + "rev": "60bb43d405991c1378baf15a40b5811a53e32ffa", + "type": "github" + }, + "original": { + "owner": "nlewo", + "repo": "nix2container", + "type": "github" + } + }, + "nix_2": { + "inputs": { + "lowdown-src": "lowdown-src_2", + "nixpkgs": "nixpkgs_6", + "nixpkgs-regression": "nixpkgs-regression_2" + }, + "locked": { + "lastModified": 1643066034, + "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", + "owner": "NixOS", + "repo": "nix", + "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "2.6.0", + "repo": "nix", + "type": "github" + } + }, + "nix_3": { + "inputs": { + "lowdown-src": "lowdown-src_3", + "nixpkgs": "nixpkgs_11", + "nixpkgs-regression": "nixpkgs-regression_3" + }, + "locked": { + "lastModified": 1643066034, + "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", + "owner": "NixOS", + "repo": "nix", + "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "2.6.0", + "repo": "nix", + "type": "github" + } + }, + "nix_4": { + "inputs": { + "lowdown-src": "lowdown-src_4", + "nixpkgs": "nixpkgs_16", + "nixpkgs-regression": "nixpkgs-regression_4" + }, + "locked": { + "lastModified": 1643066034, + "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=", + "owner": "NixOS", + "repo": "nix", + "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "2.6.0", + "repo": "nix", + "type": "github" + } + }, + "nixago": { + "inputs": { + "flake-utils": [ + "haskell-nix", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "haskell-nix", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_2": { + "inputs": { + "flake-utils": [ + "plutus-apps", + "haskell-nix", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "plutus-apps", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "plutus-apps", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_3": { + "inputs": { + "flake-utils": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_4": { + "inputs": { + "flake-utils": [ + "plutus-apps", + "plutus-core", + "std", + "flake-utils" + ], + "nixago-exts": [ + "plutus-apps", + "plutus-core", + "std", + "blank" + ], + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_5": { + "inputs": { + "flake-utils": [ + "plutus-apps", + "std", + "flake-utils" + ], + "nixago-exts": [ + "plutus-apps", + "std", + "blank" + ], + "nixpkgs": [ + "plutus-apps", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_6": { + "inputs": { + "flake-utils": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "flake-utils" + ], + "nixago-exts": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "nixpkgs": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_7": { + "inputs": { + "flake-utils": [ + "plutus-core", + "std", + "flake-utils" + ], + "nixago-exts": [ + "plutus-core", + "std", + "blank" + ], + "nixpkgs": [ + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixago_8": { + "inputs": { + "flake-utils": [ + "std", + "flake-utils" + ], + "nixago-exts": [ + "std", + "blank" + ], + "nixpkgs": [ + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1661824785, + "narHash": "sha256-/PnwdWoO/JugJZHtDUioQp3uRiWeXHUdgvoyNbXesz8=", + "owner": "nix-community", + "repo": "nixago", + "rev": "8c1f9e5f1578d4b2ea989f618588d62a335083c3", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixago", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1632864508, + "narHash": "sha256-d127FIvGR41XbVRDPVvozUPQ/uRHbHwvfyKHwEt5xFM=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "82891b5e2c2359d7e58d08849e4c89511ab94234", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-21.05-small", + "type": "indirect" + } + }, + "nixpkgs-2003": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2003_2": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2003_3": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2003_4": { + "locked": { + "lastModified": 1620055814, + "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-20.03-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2105": { + "locked": { + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2105_2": { + "locked": { + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2105_3": { + "locked": { + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2105_4": { + "locked": { + "lastModified": 1659914493, + "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2111": { + "locked": { + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2111_2": { + "locked": { + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2111_3": { + "locked": { + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2111_4": { + "locked": { + "lastModified": 1659446231, + "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-21.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2205": { + "locked": { + "lastModified": 1663981975, + "narHash": "sha256-TKaxWAVJR+a5JJauKZqibmaM5e/Pi5tBDx9s8fl/kSE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "309faedb8338d3ae8ad8f1043b3ccf48c9cc2970", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2205_2": { + "locked": { + "lastModified": 1663981975, + "narHash": "sha256-TKaxWAVJR+a5JJauKZqibmaM5e/Pi5tBDx9s8fl/kSE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "309faedb8338d3ae8ad8f1043b3ccf48c9cc2970", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2205_3": { + "locked": { + "lastModified": 1663981975, + "narHash": "sha256-TKaxWAVJR+a5JJauKZqibmaM5e/Pi5tBDx9s8fl/kSE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "309faedb8338d3ae8ad8f1043b3ccf48c9cc2970", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2205_4": { + "locked": { + "lastModified": 1663981975, + "narHash": "sha256-TKaxWAVJR+a5JJauKZqibmaM5e/Pi5tBDx9s8fl/kSE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "309faedb8338d3ae8ad8f1043b3ccf48c9cc2970", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.05-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2211": { + "locked": { + "lastModified": 1676253841, + "narHash": "sha256-jhuI8Mmky8VCD45OoJEuF6HdPLFBwNrHA0ljjZ/zkfw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a45a8916243a7d27acc358f4fc18c4491f3eeca8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2211_2": { + "locked": { + "lastModified": 1676253841, + "narHash": "sha256-jhuI8Mmky8VCD45OoJEuF6HdPLFBwNrHA0ljjZ/zkfw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "a45a8916243a7d27acc358f4fc18c4491f3eeca8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2211_3": { + "locked": { + "lastModified": 1669997163, + "narHash": "sha256-vhjC0kZMFoN6jzK0GR+tBzKi5KgBXgehadfidW8+Va4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "6f87491a54d8d64d30af6663cb3bf5d2ee7db958", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-2211_4": { + "locked": { + "lastModified": 1669997163, + "narHash": "sha256-vhjC0kZMFoN6jzK0GR+tBzKi5KgBXgehadfidW8+Va4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "6f87491a54d8d64d30af6663cb3bf5d2ee7db958", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-22.11-darwin", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-regression": { + "locked": { + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "type": "indirect" + } + }, + "nixpkgs-regression_2": { + "locked": { + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "type": "indirect" + } + }, + "nixpkgs-regression_3": { + "locked": { + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nixago", - "type": "github" + "id": "nixpkgs", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "type": "indirect" } }, - "nixpkgs": { + "nixpkgs-regression_4": { "locked": { - "lastModified": 1632864508, - "narHash": "sha256-d127FIvGR41XbVRDPVvozUPQ/uRHbHwvfyKHwEt5xFM=", + "lastModified": 1643052045, + "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "82891b5e2c2359d7e58d08849e4c89511ab94234", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "github" }, "original": { "id": "nixpkgs", - "ref": "nixos-21.05-small", + "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", "type": "indirect" } }, - "nixpkgs-2003": { + "nixpkgs-stable": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1676177817, + "narHash": "sha256-OQnBnuKkpwkfNY31xQyfU5hNpLs1ilWt+hVY6ztEEOM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "1b82144edfcd0c86486d2e07c7298f85510e7fb8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixos-22.11", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2003_2": { + "nixpkgs-stable_2": { "locked": { - "lastModified": 1620055814, - "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=", + "lastModified": 1676177817, + "narHash": "sha256-OQnBnuKkpwkfNY31xQyfU5hNpLs1ilWt+hVY6ztEEOM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205", + "rev": "1b82144edfcd0c86486d2e07c7298f85510e7fb8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-20.03-darwin", + "ref": "nixos-22.11", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105": { + "nixpkgs-unstable": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2105_2": { + "nixpkgs-unstable_2": { "locked": { - "lastModified": 1659914493, - "narHash": "sha256-lkA5X3VNMKirvA+SUzvEhfA7XquWLci+CGi505YFAIs=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "022caabb5f2265ad4006c1fa5b1ebe69fb0c3faf", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.05-darwin", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111": { + "nixpkgs-unstable_3": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2111_2": { + "nixpkgs-unstable_4": { "locked": { - "lastModified": 1659446231, - "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabc38219184cc3e04a974fe31857d8e0eac098d", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-21.11-darwin", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205": { + "nixpkgs_10": { "locked": { - "lastModified": 1663981975, - "narHash": "sha256-TKaxWAVJR+a5JJauKZqibmaM5e/Pi5tBDx9s8fl/kSE=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "309faedb8338d3ae8ad8f1043b3ccf48c9cc2970", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2205_2": { + "nixpkgs_11": { "locked": { - "lastModified": 1663981975, - "narHash": "sha256-TKaxWAVJR+a5JJauKZqibmaM5e/Pi5tBDx9s8fl/kSE=", + "lastModified": 1632864508, + "narHash": "sha256-d127FIvGR41XbVRDPVvozUPQ/uRHbHwvfyKHwEt5xFM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "309faedb8338d3ae8ad8f1043b3ccf48c9cc2970", + "rev": "82891b5e2c2359d7e58d08849e4c89511ab94234", "type": "github" }, "original": { + "id": "nixpkgs", + "ref": "nixos-21.05-small", + "type": "indirect" + } + }, + "nixpkgs_12": { + "locked": { + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", - "ref": "nixpkgs-22.05-darwin", + "repo": "nixpkgs", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211": { + "nixpkgs_13": { "locked": { - "lastModified": 1676253841, - "narHash": "sha256-jhuI8Mmky8VCD45OoJEuF6HdPLFBwNrHA0ljjZ/zkfw=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a45a8916243a7d27acc358f4fc18c4491f3eeca8", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-2211_2": { + "nixpkgs_14": { "locked": { - "lastModified": 1669997163, - "narHash": "sha256-vhjC0kZMFoN6jzK0GR+tBzKi5KgBXgehadfidW8+Va4=", - "owner": "NixOS", + "lastModified": 1665087388, + "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "6f87491a54d8d64d30af6663cb3bf5d2ee7db958", + "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-22.11-darwin", + "owner": "nixos", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-regression": { + "nixpkgs_15": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { - "id": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "indirect" + "owner": "NixOS", + "repo": "nixpkgs", + "type": "github" } }, - "nixpkgs-regression_2": { + "nixpkgs_16": { "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", + "lastModified": 1632864508, + "narHash": "sha256-d127FIvGR41XbVRDPVvozUPQ/uRHbHwvfyKHwEt5xFM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "rev": "82891b5e2c2359d7e58d08849e4c89511ab94234", "type": "github" }, "original": { "id": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", + "ref": "nixos-21.05-small", "type": "indirect" } }, - "nixpkgs-stable": { + "nixpkgs_17": { "locked": { - "lastModified": 1676177817, - "narHash": "sha256-OQnBnuKkpwkfNY31xQyfU5hNpLs1ilWt+hVY6ztEEOM=", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1b82144edfcd0c86486d2e07c7298f85510e7fb8", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-22.11", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable": { + "nixpkgs_18": { "locked": { - "lastModified": 1663905476, - "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", + "lastModified": 1654807842, + "narHash": "sha256-ADymZpr6LuTEBXcy6RtFHcUZdjKTBRTMYwu19WOx17E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", + "rev": "fc909087cc3386955f21b4665731dbdaceefb1d8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs-unstable_2": { + "nixpkgs_19": { "locked": { - "lastModified": 1663905476, - "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", - "owner": "NixOS", + "lastModified": 1665087388, + "narHash": "sha256-FZFPuW9NWHJteATOf79rZfwfRn5fE0wi9kRzvGfDHPA=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", + "rev": "95fda953f6db2e9496d2682c4fc7b82f959878f7", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_10": { + "nixpkgs_2": { "locked": { - "lastModified": 1663905476, - "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", + "lastModified": 1653581809, + "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", + "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_2": { + "nixpkgs_20": { "locked": { - "lastModified": 1653581809, - "narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=", + "lastModified": 1663905476, + "narHash": "sha256-0CSwRKaYravh9v6qSlBpM0gNg0UhKT2lL7Yn6Zbx7UM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "83658b28fe638a170a19b8933aa008b30640fbd1", + "rev": "e14f9fb57315f0d4abde222364f19f88c77d2b79", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } @@ -2131,24 +4283,87 @@ "type": "github" }, "original": { - "owner": "angerman", - "ref": "master", - "repo": "old-ghc-nix", + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", + "type": "github" + } + }, + "old-ghc-nix_3": { + "flake": false, + "locked": { + "lastModified": 1631092763, + "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", + "owner": "angerman", + "repo": "old-ghc-nix", + "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "type": "github" + }, + "original": { + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", + "type": "github" + } + }, + "old-ghc-nix_4": { + "flake": false, + "locked": { + "lastModified": 1631092763, + "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=", + "owner": "angerman", + "repo": "old-ghc-nix", + "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8", + "type": "github" + }, + "original": { + "owner": "angerman", + "ref": "master", + "repo": "old-ghc-nix", + "type": "github" + } + }, + "plutus-apps": { + "inputs": { + "CHaP": "CHaP_2", + "flake-compat": "flake-compat_4", + "gitignore-nix": "gitignore-nix_2", + "hackage-nix": "hackage-nix_2", + "haskell-language-server": "haskell-language-server_2", + "haskell-nix": "haskell-nix_2", + "iohk-nix": "iohk-nix_2", + "nixpkgs": "nixpkgs_10", + "plutus-core": "plutus-core", + "pre-commit-hooks-nix": "pre-commit-hooks-nix_2", + "sphinxcontrib-haddock": "sphinxcontrib-haddock_2", + "std": "std_5" + }, + "locked": { + "lastModified": 1678469658, + "narHash": "sha256-e40tZACSVumSfZBgyqu9JlGwEe2c0Wsty6TMcb5BFTM=", + "owner": "input-output-hk", + "repo": "plutus-apps", + "rev": "9d90900d049f2333960fbc349cc816d2b163cda5", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "plutus-apps", "type": "github" } }, "plutus-core": { "inputs": { - "CHaP": "CHaP_2", - "gitignore-nix": "gitignore-nix_2", - "hackage-nix": "hackage-nix_2", - "haskell-language-server": "haskell-language-server_2", - "haskell-nix": "haskell-nix_2", - "iohk-nix": "iohk-nix_2", - "nixpkgs": "nixpkgs_10", + "CHaP": "CHaP_3", + "gitignore-nix": "gitignore-nix_3", + "hackage-nix": "hackage-nix_3", + "haskell-language-server": "haskell-language-server_3", + "haskell-nix": "haskell-nix_3", + "iohk-nix": "iohk-nix_3", + "nixpkgs": "nixpkgs_15", "pre-commit-hooks-nix": "pre-commit-hooks-nix", "sphinxcontrib-haddock": "sphinxcontrib-haddock", - "std": "std_3" + "std": "std_4" }, "locked": { "lastModified": 1677292546, @@ -2164,10 +4379,38 @@ "type": "github" } }, + "plutus-core_2": { + "inputs": { + "CHaP": "CHaP_4", + "gitignore-nix": "gitignore-nix_4", + "hackage-nix": "hackage-nix_4", + "haskell-language-server": "haskell-language-server_4", + "haskell-nix": "haskell-nix_4", + "iohk-nix": "iohk-nix_4", + "nixpkgs": "nixpkgs_20", + "pre-commit-hooks-nix": "pre-commit-hooks-nix_3", + "sphinxcontrib-haddock": "sphinxcontrib-haddock_3", + "std": "std_7" + }, + "locked": { + "lastModified": 1678817439, + "narHash": "sha256-pmOyNbo+FO6/1a14M8G+UUu6sxzkqQFu5zwpRnQTOkI=", + "owner": "input-output-hk", + "repo": "plutus", + "rev": "76fe353f3a7bcb6b4c69f8a0ff06aaaa83f76a21", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "plutus", + "type": "github" + } + }, "pre-commit-hooks-nix": { "inputs": { - "flake-utils": "flake-utils_9", + "flake-utils": "flake-utils_13", "nixpkgs": [ + "plutus-apps", "plutus-core", "nixpkgs" ] @@ -2188,10 +4431,11 @@ }, "pre-commit-hooks-nix_2": { "inputs": { - "flake-compat": "flake-compat_6", - "flake-utils": "flake-utils_12", + "flake-compat": "flake-compat_9", + "flake-utils": "flake-utils_16", "gitignore": "gitignore", "nixpkgs": [ + "plutus-apps", "nixpkgs" ], "nixpkgs-stable": "nixpkgs-stable" @@ -2210,6 +4454,52 @@ "type": "github" } }, + "pre-commit-hooks-nix_3": { + "inputs": { + "flake-utils": "flake-utils_23", + "nixpkgs": [ + "plutus-core", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1663082609, + "narHash": "sha256-lmCCIu4dj59qbzkGKHQtolhpIEQMeAd2XUbXVPqgPYo=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "60cad1a326df17a8c6cf2bb23436609fdd83024e", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, + "pre-commit-hooks-nix_4": { + "inputs": { + "flake-compat": "flake-compat_12", + "flake-utils": "flake-utils_26", + "gitignore": "gitignore_2", + "nixpkgs": [ + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable_2" + }, + "locked": { + "lastModified": 1675688762, + "narHash": "sha256-oit/SxMk0B380ASuztBGQLe8TttO1GJiXF8aZY9AYEc=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "ab608394886fb04b8a5df3cb0bab2598400e3634", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, "root": { "inputs": { "CHaP": "CHaP", @@ -2220,10 +4510,11 @@ "haskell-nix": "haskell-nix", "iohk-nix": "iohk-nix", "nixpkgs": "nixpkgs_5", - "plutus-core": "plutus-core", - "pre-commit-hooks-nix": "pre-commit-hooks-nix_2", - "sphinxcontrib-haddock": "sphinxcontrib-haddock_2", - "std": "std_4" + "plutus-apps": "plutus-apps", + "plutus-core": "plutus-core_2", + "pre-commit-hooks-nix": "pre-commit-hooks-nix_4", + "sphinxcontrib-haddock": "sphinxcontrib-haddock_4", + "std": "std_8" } }, "sphinxcontrib-haddock": { @@ -2258,6 +4549,38 @@ "type": "github" } }, + "sphinxcontrib-haddock_3": { + "flake": false, + "locked": { + "lastModified": 1594136664, + "narHash": "sha256-O9YT3iCUBHP3CEF88VDLLCO2HSP3HqkNA2q2939RnVY=", + "owner": "michaelpj", + "repo": "sphinxcontrib-haddock", + "rev": "f3956b3256962b2d27d5a4e96edb7951acf5de34", + "type": "github" + }, + "original": { + "owner": "michaelpj", + "repo": "sphinxcontrib-haddock", + "type": "github" + } + }, + "sphinxcontrib-haddock_4": { + "flake": false, + "locked": { + "lastModified": 1594136664, + "narHash": "sha256-O9YT3iCUBHP3CEF88VDLLCO2HSP3HqkNA2q2939RnVY=", + "owner": "michaelpj", + "repo": "sphinxcontrib-haddock", + "rev": "f3956b3256962b2d27d5a4e96edb7951acf5de34", + "type": "github" + }, + "original": { + "owner": "michaelpj", + "repo": "sphinxcontrib-haddock", + "type": "github" + } + }, "stackage": { "flake": false, "locked": { @@ -2269,50 +4592,245 @@ "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "input-output-hk", + "repo": "stackage.nix", + "type": "github" + } + }, + "stackage_2": { + "flake": false, + "locked": { + "lastModified": 1667524765, + "narHash": "sha256-rY58ROG9paYqqhUPFxZArU59qOIatIFHrurhVo7JXX4=", + "owner": "input-output-hk", + "repo": "stackage.nix", + "rev": "ed1ec5f81f9eb32eb627fd447088eb782e7ff71b", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "stackage.nix", + "type": "github" + } + }, + "stackage_3": { + "flake": false, + "locked": { + "lastModified": 1675815021, + "narHash": "sha256-vGIq0rccUUgwLj8kHgSfQdhChYfzmC8cnHPgB9+Rr98=", + "owner": "input-output-hk", + "repo": "stackage.nix", + "rev": "3c81c38bd2a7a6659f2b2ffaa45074fa417935b3", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "stackage.nix", + "type": "github" + } + }, + "stackage_4": { + "flake": false, + "locked": { + "lastModified": 1675815021, + "narHash": "sha256-vGIq0rccUUgwLj8kHgSfQdhChYfzmC8cnHPgB9+Rr98=", + "owner": "input-output-hk", + "repo": "stackage.nix", + "rev": "3c81c38bd2a7a6659f2b2ffaa45074fa417935b3", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "stackage.nix", + "type": "github" + } + }, + "std": { + "inputs": { + "blank": "blank", + "devshell": "devshell", + "dmerge": "dmerge", + "flake-utils": "flake-utils_3", + "makes": [ + "haskell-nix", + "tullia", + "std", + "blank" + ], + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor", + "microvm": [ + "haskell-nix", + "tullia", + "std", + "blank" + ], + "n2c": "n2c", + "nixago": "nixago", + "nixpkgs": "nixpkgs_4", + "yants": "yants" + }, + "locked": { + "lastModified": 1665513321, + "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", + "owner": "divnix", + "repo": "std", + "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "std", + "type": "github" + } + }, + "std_2": { + "inputs": { + "blank": "blank_2", + "devshell": "devshell_2", + "dmerge": "dmerge_2", + "flake-utils": "flake-utils_7", + "makes": [ + "plutus-apps", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_2", + "microvm": [ + "plutus-apps", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "n2c": "n2c_2", + "nixago": "nixago_2", + "nixpkgs": "nixpkgs_9", + "yants": "yants_2" + }, + "locked": { + "lastModified": 1665513321, + "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", + "owner": "divnix", + "repo": "std", + "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "std", + "type": "github" + } + }, + "std_3": { + "inputs": { + "blank": "blank_3", + "devshell": "devshell_3", + "dmerge": "dmerge_3", + "flake-utils": "flake-utils_11", + "makes": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_3", + "microvm": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "tullia", + "std", + "blank" + ], + "n2c": "n2c_3", + "nixago": "nixago_3", + "nixpkgs": "nixpkgs_14", + "yants": "yants_3" + }, + "locked": { + "lastModified": 1665513321, + "narHash": "sha256-D6Pacw9yf/HMs84KYuCxHXnNDL7v43gtcka5URagFqE=", + "owner": "divnix", + "repo": "std", + "rev": "94a90eedb9cfc115b12ae8f6622d9904788559e4", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "std", "type": "github" } }, - "stackage_2": { - "flake": false, + "std_4": { + "inputs": { + "blank": "blank_4", + "devshell": "devshell_4", + "dmerge": "dmerge_4", + "flake-utils": "flake-utils_14", + "makes": [ + "plutus-apps", + "plutus-core", + "std", + "blank" + ], + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_4", + "microvm": [ + "plutus-apps", + "plutus-core", + "std", + "blank" + ], + "n2c": "n2c_4", + "nixago": "nixago_4", + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "nixpkgs" + ], + "yants": "yants_4" + }, "locked": { - "lastModified": 1675815021, - "narHash": "sha256-vGIq0rccUUgwLj8kHgSfQdhChYfzmC8cnHPgB9+Rr98=", - "owner": "input-output-hk", - "repo": "stackage.nix", - "rev": "3c81c38bd2a7a6659f2b2ffaa45074fa417935b3", + "lastModified": 1665252656, + "narHash": "sha256-RHktFB35O/KjK2P21E+TtCR8sIpoowGFGZPC0KOT0rg=", + "owner": "divnix", + "repo": "std", + "rev": "2240a587e19e1610d967a72e5409176bc6908244", "type": "github" }, "original": { - "owner": "input-output-hk", - "repo": "stackage.nix", + "owner": "divnix", + "repo": "std", "type": "github" } }, - "std": { + "std_5": { "inputs": { - "blank": "blank", - "devshell": "devshell", - "dmerge": "dmerge", - "flake-utils": "flake-utils_3", + "blank": "blank_5", + "devshell": "devshell_5", + "dmerge": "dmerge_5", + "flake-utils": "flake-utils_17", "makes": [ - "haskell-nix", - "tullia", + "plutus-apps", "std", "blank" ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor", + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_5", "microvm": [ - "haskell-nix", - "tullia", + "plutus-apps", "std", "blank" ], - "n2c": "n2c", - "nixago": "nixago", - "nixpkgs": "nixpkgs_4", - "yants": "yants" + "n2c": "n2c_5", + "nixago": "nixago_5", + "nixpkgs": [ + "plutus-apps", + "nixpkgs" + ], + "yants": "yants_5" }, "locked": { "lastModified": 1665513321, @@ -2328,12 +4846,12 @@ "type": "github" } }, - "std_2": { + "std_6": { "inputs": { - "blank": "blank_2", - "devshell": "devshell_2", - "dmerge": "dmerge_2", - "flake-utils": "flake-utils_7", + "blank": "blank_6", + "devshell": "devshell_6", + "dmerge": "dmerge_6", + "flake-utils": "flake-utils_21", "makes": [ "plutus-core", "haskell-nix", @@ -2341,7 +4859,7 @@ "std", "blank" ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_2", + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_6", "microvm": [ "plutus-core", "haskell-nix", @@ -2349,10 +4867,10 @@ "std", "blank" ], - "n2c": "n2c_2", - "nixago": "nixago_2", - "nixpkgs": "nixpkgs_9", - "yants": "yants_2" + "n2c": "n2c_6", + "nixago": "nixago_6", + "nixpkgs": "nixpkgs_19", + "yants": "yants_6" }, "locked": { "lastModified": 1665513321, @@ -2368,30 +4886,30 @@ "type": "github" } }, - "std_3": { + "std_7": { "inputs": { - "blank": "blank_3", - "devshell": "devshell_3", - "dmerge": "dmerge_3", - "flake-utils": "flake-utils_10", + "blank": "blank_7", + "devshell": "devshell_7", + "dmerge": "dmerge_7", + "flake-utils": "flake-utils_24", "makes": [ "plutus-core", "std", "blank" ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_3", + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_7", "microvm": [ "plutus-core", "std", "blank" ], - "n2c": "n2c_3", - "nixago": "nixago_3", + "n2c": "n2c_7", + "nixago": "nixago_7", "nixpkgs": [ "plutus-core", "nixpkgs" ], - "yants": "yants_3" + "yants": "yants_7" }, "locked": { "lastModified": 1665252656, @@ -2407,27 +4925,27 @@ "type": "github" } }, - "std_4": { + "std_8": { "inputs": { - "blank": "blank_4", - "devshell": "devshell_4", - "dmerge": "dmerge_4", - "flake-utils": "flake-utils_13", + "blank": "blank_8", + "devshell": "devshell_8", + "dmerge": "dmerge_8", + "flake-utils": "flake-utils_27", "makes": [ "std", "blank" ], - "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_4", + "mdbook-kroki-preprocessor": "mdbook-kroki-preprocessor_8", "microvm": [ "std", "blank" ], - "n2c": "n2c_4", - "nixago": "nixago_4", + "n2c": "n2c_8", + "nixago": "nixago_8", "nixpkgs": [ "nixpkgs" ], - "yants": "yants_4" + "yants": "yants_8" }, "locked": { "lastModified": 1665513321, @@ -2472,12 +4990,63 @@ "nix-nomad": "nix-nomad_2", "nix2container": "nix2container_2", "nixpkgs": [ - "plutus-core", + "plutus-apps", "haskell-nix", "nixpkgs" ], "std": "std_2" }, + "locked": { + "lastModified": 1666200256, + "narHash": "sha256-cJPS8zBu30SMhxMe7I8DWutwqMuhPsEez87y9gxMKc4=", + "owner": "input-output-hk", + "repo": "tullia", + "rev": "575362c2244498e8d2c97f72861510fa72e75d44", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "tullia", + "type": "github" + } + }, + "tullia_3": { + "inputs": { + "nix-nomad": "nix-nomad_3", + "nix2container": "nix2container_3", + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "haskell-nix", + "nixpkgs" + ], + "std": "std_3" + }, + "locked": { + "lastModified": 1668711738, + "narHash": "sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk+yaFQLibqXcE=", + "owner": "input-output-hk", + "repo": "tullia", + "rev": "ead1f515c251f0e060060ef0e2356a51d3dfe4b0", + "type": "github" + }, + "original": { + "owner": "input-output-hk", + "repo": "tullia", + "type": "github" + } + }, + "tullia_4": { + "inputs": { + "nix-nomad": "nix-nomad_4", + "nix2container": "nix2container_4", + "nixpkgs": [ + "plutus-core", + "haskell-nix", + "nixpkgs" + ], + "std": "std_6" + }, "locked": { "lastModified": 1668711738, "narHash": "sha256-CBjky16o9pqsGE1bWu6nRlRajgSXMEk+yaFQLibqXcE=", @@ -2522,6 +5091,36 @@ "type": "github" } }, + "utils_3": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_4": { + "locked": { + "lastModified": 1653893745, + "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "yants": { "inputs": { "nixpkgs": [ @@ -2548,7 +5147,7 @@ "yants_2": { "inputs": { "nixpkgs": [ - "plutus-core", + "plutus-apps", "haskell-nix", "tullia", "std", @@ -2572,7 +5171,10 @@ "yants_3": { "inputs": { "nixpkgs": [ + "plutus-apps", "plutus-core", + "haskell-nix", + "tullia", "std", "nixpkgs" ] @@ -2592,6 +5194,97 @@ } }, "yants_4": { + "inputs": { + "nixpkgs": [ + "plutus-apps", + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660507851, + "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", + "owner": "divnix", + "repo": "yants", + "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_5": { + "inputs": { + "nixpkgs": [ + "plutus-apps", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660507851, + "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", + "owner": "divnix", + "repo": "yants", + "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_6": { + "inputs": { + "nixpkgs": [ + "plutus-core", + "haskell-nix", + "tullia", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660507851, + "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", + "owner": "divnix", + "repo": "yants", + "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_7": { + "inputs": { + "nixpkgs": [ + "plutus-core", + "std", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1660507851, + "narHash": "sha256-BKjq7JnVuUR/xDtcv6Vm9GYGKAblisXrAgybor9hT/s=", + "owner": "divnix", + "repo": "yants", + "rev": "0b895ca02a8fa72bad50b454cb3e7d8a66407c96", + "type": "github" + }, + "original": { + "owner": "divnix", + "repo": "yants", + "type": "github" + } + }, + "yants_8": { "inputs": { "nixpkgs": [ "std", diff --git a/flake.nix b/flake.nix index a4b5bf1184..21e51ee15a 100644 --- a/flake.nix +++ b/flake.nix @@ -10,7 +10,7 @@ # You may want to refer to the standard glossary as you go along: # https://divnix.github.io/std/glossary.html { - description = "Plutus Apps"; + description = "Marconi Chain Indexer"; inputs = { nixpkgs = { @@ -56,13 +56,18 @@ flake = false; }; haskell-language-server = { - # TODO Bump to 1.9.0.0 once plutus-apps hits GHC 9.2 + # TODO Bump to 1.9.0.0 once marconi hits GHC 9.2 url = "github:haskell/haskell-language-server?ref=1.8.0.0"; flake = false; }; + plutus-apps = { + url = "github:input-output-hk/plutus-apps"; + flake = false; + }; plutus-core = { url = "github:input-output-hk/plutus"; }; + }; # The flake outputs are managed by std. @@ -82,8 +87,8 @@ # In this repository we have two cells: # automation # Hydra jobsets and GHA tasks - # plutus-apps - # devcontainer, devshells, library and packages for plutus-apps and its documentation + # marconi + # devcontainer, devshells, library and packages for marconi and its documentation cellsFrom = ./__std__/cells; # Each cell contains "cell blocks". @@ -132,17 +137,17 @@ # # The attrs will be recursively merged in the order in which they appear. { - # Here we say that we want the "devshells" cell block of the plutus-apps cell + # Here we say that we want the "devshells" cell block of the marconi cell # (which contains a number of shell-able derivations) to be exposed # by the flake and accessible via nix develop. - devShells = inputs.std.harvest inputs.self [ "plutus-apps" "devshells" ]; - packages = inputs.std.harvest inputs.self [ "plutus-apps" "packages" ]; + devShells = inputs.std.harvest inputs.self [ "marconi" "devshells" ]; + packages = inputs.std.harvest inputs.self [ "marconi" "packages" ]; } { - # Here we say that we want the "devcontainer" cell block of the plutus-apps cell + # Here we say that we want the "devcontainer" cell block of the marconi cell # (which contains a number of buildable derivations) to be exposed # by the flake and accessible via nix build (or nix run). - packages = inputs.std.harvest inputs.self [ "plutus-apps" "devcontainer" ]; + packages = inputs.std.harvest inputs.self [ "marconi" "devcontainer" ]; } { hydraJobs = inputs.std.harvest inputs.self [ "automation" "hydra-jobs" ];