From 1c53a0e1c03525ccc671cff11e193c76524279d5 Mon Sep 17 00:00:00 2001 From: Hercules CI Effects Date: Mon, 9 Dec 2024 21:53:07 +0000 Subject: [PATCH] Update gh-pages Store path: /nix/store/r14gcc9sp5l7mvf9zdlj1q488hkpk1jw-cardano-nix-docs --- getting-started/vm/index.html | 4 ++-- search/search_index.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/getting-started/vm/index.html b/getting-started/vm/index.html index 9cc1fb4..be6439c 100644 --- a/getting-started/vm/index.html +++ b/getting-started/vm/index.html @@ -1022,11 +1022,11 @@

Run a VM

ogmios -1337 +http://localhost:1337 kupo -1442 +http://localhost:1442 diff --git a/search/search_index.json b/search/search_index.json index 0cfd99a..d3b8591 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"About the Project","text":"

cardano.nix is a collection of Nix packages and NixOS modules designed to make it easy to operate Cardano related services and infrastructure.

"},{"location":"#why","title":"Why?","text":"

Nix is a declarative package manager ensuring hash-based dependency pinning and reproducible builds. NixOS is a Linux distribution with a declarative configuration system providing atomic updates and rollbacks. These features are responsible for the increased reliability of a NixOS system, making it an attractive DevOps toolset for deploying Cardano services.

"},{"location":"#what","title":"What?","text":"

The cardano.nix project aims to provide NixOS modules for Cardano services such as cardano-node, ogmios, kupo, cardano-db-sync, as well as auxiliary modules such as firewall and HTTP(S), making it easy to deploy these services in production. Very little configuration is needed to run the services with sane defaults that are easy to customize. The services can be run on the same host or in a distributed cluster, and a HTTPS proxy module is also provided.

"},{"location":"#how","title":"How?","text":"

Here are some motivating examples.

This NixOS configuration will start cardano-node and related services on the preview testnet.

{\n  cardano = {\n    network = \"preview\";\n    node.enable = true;\n    ogmios.enable = true;\n  };\n}\n

This snippet will configure a HTTPS reverse proxy and load balancer with ACME certificates from Let's Encrypt. DNS records need to be set up and the backend servers (configured as above) need to be reachable.

{\n  cardano.http.enable = true;\n  services.http-proxy = {\n    domainName = \"preview.example.com\";\n    https.enable = true;\n    servers = [\"server1\" \"server2\"];\n  };\n};\n

Configurations including the above can be deployed to a laptop, a virtual machine, a cloud instance, a container, or any other system running NixOS. Example configurations and shortcuts to run virtual machines are provided as part of the project.

"},{"location":"license/","title":"License","text":"

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/

"},{"location":"license/#terms-and-conditions-for-use-reproduction-and-distribution","title":"TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION","text":"

1- Definitions.

\"License\" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.

\"Licensor\" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.

\"Legal Entity\" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, \"control\" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

\"You\" (or \"Your\") shall mean an individual or Legal Entity exercising permissions granted by this License.

\"Source\" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.

\"Object\" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.

\"Work\" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).

\"Derivative Works\" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

\"Contribution\" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, \"submitted\" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as \"Not a Contribution.\"

\"Contributor\" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.

2- Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.

3- Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

4- Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and

(d) If the Work includes a \"NOTICE\" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.

You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

5- Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.

6- Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

7- Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

8- Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.

9- Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets \"[]\" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same \"printed page\" as the copyright notice for easier identification within third-party archives.

Copyright 2023 MLabs ltd, and cardano.nix contributors.

Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

"},{"location":"development/contributing/","title":"Contributing","text":"

There are several ways you can contribute.

"},{"location":"development/contributing/#reporting-issues","title":"Reporting issues","text":""},{"location":"development/contributing/#proposing-features","title":"Proposing features","text":""},{"location":"development/contributing/#code-style-guidelines","title":"Code style guidelines","text":""},{"location":"development/contributing/#checks","title":"Checks","text":"

Thank you for contributing to cardano.nix! Your help is greatly appreciated \ud83d\ude0a

"},{"location":"development/develop/","title":"Develop","text":"

Development is supported on linux systems. Virtual machines are run with qemu so kvm is recommended. Follow the installation guide to set up nix.

"},{"location":"development/develop/#development-shell","title":"Development Shell","text":"

cardano.nix provides a devshell that includes various tools to build, test, run and update the project:

$ nix develop\n...\n\u2744\ufe0f Welcome to the cardano.nix devshell \u2744\ufe0f\n\n[documentation]\n\n  docs-build              - build documentation\n  docs-serve              - serve documentation web page\n\n[examples]\n\n  vm-preview              - Start vm with cardano services on the preview network and ports forwarded to host\n\n[general commands]\n\n  menu                    - prints this menu\n\n[tests]\n\n  build-all               - build all packages and checks with `devour-flake`\n  check                   - run `nix flake check`\n  run-vm-test             - list and run virtual machine integration tests\n\n[tools]\n\n  fmt                     - format the source tree\n  update-pre-commit-hooks - update git pre-commit hooks\n

A .envrc file is also provided, using direnv and nix-direnv is suggested.

"},{"location":"development/develop/#running-integration-tests","title":"Running Integration Tests","text":"

From the devshell you can run integration tests with run-vm-test, for example the following will start cardano-node and ogmios on the preview testnet and will check for synchronization progress.

run-vm-test ogmios\n
"},{"location":"getting-started/cloud/","title":"Deploy to Cloud","text":""},{"location":"getting-started/cloud/#deploy-to-the-cloud","title":"Deploy to the Cloud","text":"

\u26a0 Caution: The templates have an empty root password set in vm.nix for convenience. Be sure to remove the vm.nix import and use public key authentication before deploying to the cloud.

To deploy the network of nodes and proxy to cloud providers such as AWS, Google Cloud, DigitalOcean, or Hetzner, some additional setup is required that is out of scope for this project as it depends on the deployment workflow. Here is an overview:

"},{"location":"getting-started/cloud/#deploy-cloud-infrastructure","title":"Deploy Cloud Infrastructure","text":"

Cloud resources need to be created, for example with an Infrastructure-as-Code tool such as AWS CloudFormation or OpenTofu.

"},{"location":"getting-started/cloud/#cloud-machines","title":"Cloud Machines","text":"

Virtual machines (AWS EC2, droplet, etc.) need to be created, one for each node and one for the proxy. Synchronizing the blockchain takes a long time so auto scaling is not viable without extra setup, eg. using cardanow to load snapshots or using shared network storage.

"},{"location":"getting-started/cloud/#networking","title":"Networking","text":"

Private networking needs to be set up between the nodes and proxy, either via the cloud provider's native support (AWS VPC, etc.) or VPN such as wireguard.

The nodes should be configured to be reachable only via the private network on which the proxy resides. This can be as simple as disabling public IPs for these machines. More complex setups have several options to configure networking, such as the services' listen addresses (services.ogmios.host, and similar NixOS options), OS firewall (networking.firewall.*) and cloud firewall (AWS security groups etc.).

"},{"location":"getting-started/cloud/#dns-records","title":"DNS Records","text":"

To make the proxy reachable via a web address from the browser, DNS records need to be added. This is also required for HTTPS. The opinionated default is a separate subdomain for each service, this can be overridden via nginx configuration.

Example DNS records, where the proxy public IP is 12.34.56.78:

my.example.com A 12.34.56.78\nogmios.my.example.com A 12.34.56.78\nkupo.my.example.com A 12.34.56.78\n

Alternatively, a wildcard record may be added for *.my.example.com.

"},{"location":"getting-started/cloud/#operating-system-configuration-and-deployment","title":"Operating System Configuration and Deployment","text":"

NixOS has to be installed on the cloud machines. If the cloud provider does not have NixOS images, this can be achieved starting from mainstream distros like Debian or Ubuntu using nixos-infect from cloud-init user data. A better option is to generate cloud images, eg. using [nixos-generators]https://github.com/nix-community/nixos-generators) and start the cloud machines from those.

To deploy operating system configuration via SSH, services.openssh needs to be configured and users.users.root.openssh.authorizedKeys.keys set. Deployment can be done via nixos-rebuild --flake . --target-host HOST or using a deployment app such as colmena, or integrated into an infrastructure tool like terraform-nixos.

"},{"location":"getting-started/cloud/#node-adresses","title":"Node Adresses","text":"

The proxy needs to know how to reach the nodes. This is configured in services.http-proxy.servers. In the NixOS test environment, nodes are reachable by hostname, because static hosts entries are added for them automatically. This is not available in the cloud. Several options exist:

"},{"location":"getting-started/cloud/#domain-name","title":"Domain Name","text":"

Once DNS records are created for the proxy as above, the domain name needs to be configured. This is also required for HTTPS.

services.http-proxy.domainName = \"my.example.com\";\n

The server will now respond to HTTP requests with Hosts header set to my.example.com, as well as making the services available at ogmios.my.example.com etc.

"},{"location":"getting-started/cloud/#https","title":"HTTPS","text":"

To serve public web pages and APIs, it is necessary to protect data integrity and confidentiality during transmission, so HTTPS needs to be enabled on the proxy. Once DNS and domain names are configured as above, this is easily achieved with the following option:

services.http-proxy.https.enable = true;\n

This will set up Let's Encrypt ACME TLS certificates on the proxy server, enable HTTPS in the nginx web server and redirect all HTTP traffic to HTTPS.

"},{"location":"getting-started/deploy/","title":"Deploy","text":"

In order to access all the options available in cardano.nix, the NixOS module provided by this project has to be included in a NixOS configuration and deployed to a (local or remote or virtual) machine.

"},{"location":"getting-started/deploy/#start-new-project-with-flake-template","title":"Start new project with flake template","text":"

Before starting, follow the installation instructions.

An easy way to get started is to use the flake template provided by this project. Here's how to start a new project using the template:

mkdir myproject\ncd myproject\nnix flake init --template github:mlabs-haskell/cardano.nix\n
"},{"location":"getting-started/deploy/#run-a-virtual-machine","title":"Run a virtual machine","text":"

The default template provides a virtual machine configuration starting all the services in the preview testnet. Here's how to run it:

nix run .#vm

A virtual machine is started, with cardano-cli available to query the node:

cardano-cli query tip --testnet-magic 2

This machine is set up just like the one in Run a VM, but can be customized.

"},{"location":"getting-started/deploy/#look-around","title":"Look around","text":""},{"location":"getting-started/deploy/#flakenix","title":"flake.nix","text":"

This Nix Flake is the entry point to the project. It locks inputs and provides the following outputs:

"},{"location":"getting-started/deploy/#configurationnix","title":"configuration.nix","text":"

This is the NixOS configuration to run cardano services on the machine.

"},{"location":"getting-started/deploy/#vmnix","title":"vm.nix","text":"

Local VM configuration for convenient development. Don't use this in the cloud, it is insecure with an empty root password. Sets virtual machine options such as cores, memory and port forwarding. It is included in the configuration for the nixosConfigurations.vm virtual machine in flake.nix.

"},{"location":"getting-started/deploy/#customize","title":"Customize","text":"

To learn more, browse available NixOS options in nixpkgs and NixOS options provided by cardano.nix (see other modules in the menu on the left). You can ad these options to configuration.nix to configure the system.

"},{"location":"getting-started/deploy/#deployment-options","title":"Deployment options","text":"

The configuration can be deployed to any target running NixOS, such as:

There are a variety of resources to help install NixOS:

With a running NixOS installation and a NixOS configuration server in a nix flake, this command will deploy the server:

nixos-rebuild switch --flake .#server --target-host <target>

"},{"location":"getting-started/installation/","title":"Installation","text":""},{"location":"getting-started/installation/#requirements","title":"Requirements","text":""},{"location":"getting-started/installation/#setup","title":"Setup","text":"

Follow this guide to Install nix with flakes enabled.

"},{"location":"getting-started/installation/#binary-cache","title":"Binary cache","text":"

You can optionally use this project's binary cache to skip building software and download it instead. Edit /etc/nix/nix.conf (or related settings in NixOS config) and merge the new values separated by spaces into the options:

substituters = ... https://cache.staging.mlabs.city/cardano-nix\ntrusted-public-keys = ... cardano-nix:BQ7QKgoQQAuL3Kh6pfIJ8oxrihUbUSxf6tN9SxyW608=\n

Don't edit ~/.config/nix/nix.conf in your home directory. Don't add users to trusted-users because it is insecure.

"},{"location":"getting-started/installation/#check-that-it-works","title":"Check that it works","text":"

nix --version

"},{"location":"getting-started/installation/#learn-more","title":"Learn more","text":"

For an introduction to the Nix ecosystem, check out Zero to Nix. Learn more about Nix flakes and NixOS.

"},{"location":"getting-started/load-balancer/","title":"Load Balancer","text":"

cardano.nix provides the cardano.http and services.http-proxy NixOS modules, which implement a HTTP Load Balancing Reverse Proxy and TLS Endpoint using the nginx HTTP server.

Our focus here is to facilitate robust, secure, and efficient HTTP traffic management for Cardano services through load balancing and TLS termination.

"},{"location":"getting-started/load-balancer/#overview","title":"Overview","text":"

The Load Balancing Reverse Proxy and TLS Endpoint module is designed to handle HTTP requests by distributing them across multiple backend servers, ensuring optimal resource utilization and high availability. It also manages TLS termination, securing the communication between clients and the proxy.

Key features of this module include:

See documentation for the cardano.http and services.http-proxy NixOS modules.

"},{"location":"getting-started/load-balancer/#flake-template-with-load-balancer","title":"Flake template with load balancer","text":"

An easy way to get started is to use the flake template provided by this project. Before starting, follow the installation instructions. Here's how to start a new project using the template:

mkdir myproject\ncd myproject\nnix flake init --template github:mlabs-haskell/cardano.nix#cluster\ngit init\ngit add .\n
"},{"location":"getting-started/load-balancer/#run-virtual-machines","title":"Run virtual machines","text":"

The template provides virtual machine configurations for three nodes and a load balancer. The NixOS test framework is used to start the virtual machines and set up networking. Run all the VMs:

nix run .#vms

The services will be available on ports forwarded from localhost: ogmios at http://localhost:8001 and kupo at http://localhost:8002 . Grafana is available at http://localhost:8008 .

Press Ctrl+C to stop the machines.

"},{"location":"getting-started/load-balancer/#further-reading","title":"Further reading","text":"

Check out the following documentation:

cardano.http NixOS module documentation

services.http-proxy NixOS module documentation

NixOS options such as services.nginx, networking.firewall.

"},{"location":"getting-started/vm/","title":"Run a VM","text":"

This project provides a virtual machine configuration with all cardano services.

nix run github:mlabs-haskell/cardano.nix#vm-preview

A virtual machine will be started with the following services, and the following ports forwarded from the host to the VM.

Service Port cardano-node 3001 ogmios 1337 kupo 1442

You can log in with user root. The password is empty. In the virtual machine, cardano-cli is available to query the node.

cardano-cli query tip --testnet-magic 2

"},{"location":"reference/module-options/cardano.blockfrost/","title":"cardano.blockfrost","text":""},{"location":"reference/module-options/cardano.blockfrost/#cardanoblockfrostenable","title":"cardano.blockfrost.enable","text":"

Whether to enable Blockfrost.io backend is an API service providing abstraction between you and Cardano blockchain data

Blockfrost connects to a postgresql database, populated by Cardano DB sync with node. You need to either provide the db connection arguments:

services.blockfrost.settings.dbSync = {\n  # these are the defaults:\n  name = \"cardano-db-sync\";\n  user = \"cardano-db-sync\";\n  port = 5432;\n  # optionally supply \"host\" and \"password\" parameters.\n  socketdir = \"/run/postgresql\";\n};\n

or enable the default postgresql service with cardano.blockfrost.postgres.enable .

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/blockfrost.nix

"},{"location":"reference/module-options/cardano.blockfrost/#cardanoblockfrostpostgresenable","title":"cardano.blockfrost.postgres.enable","text":"

Whether to enable Connect blockfrost to local postgresql\u2026

Type: boolean

Default: true

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/blockfrost.nix

"},{"location":"reference/module-options/cardano.cli/","title":"cardano.cli","text":""},{"location":"reference/module-options/cardano.cli/#cardanoclienable","title":"cardano.cli.enable","text":"

Add cardano-cli to \u2018environment.systemPackages\u2019.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/cli.nix

"},{"location":"reference/module-options/cardano.db-sync/","title":"cardano.db-sync","text":""},{"location":"reference/module-options/cardano.db-sync/#cardanodb-syncenable","title":"cardano.db-sync.enable","text":"

Whether to enable Cardano DB Sync provides a way to query local cardano node.

Cardano DB sync connects to a cardano node and saves blocks to a database. You need to either provide the db connection arguments:

services.cardano-db-sync.database = {\n  # these are the defaults:\n  name = \"cardano-db-sync\";\n  user = \"cardano-db-sync\";\n  port = 5432;\n  socketdir = \"/run/postgresql\";\n};\n

or enable the default postgresql service with services.cardano-db-sync.postgres.enable and possibly overwrite the services.postgresql options for your need. .

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/db-sync.nix

"},{"location":"reference/module-options/cardano.db-sync/#cardanodb-syncpostgresenable","title":"cardano.db-sync.postgres.enable","text":"

Whether to enable Run postgres and connect dbsync to it\u2026

Type: boolean

Default: true

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/db-sync.nix

"},{"location":"reference/module-options/cardano.http/","title":"cardano.http","text":""},{"location":"reference/module-options/cardano.http/#cardanohttpenable","title":"cardano.http.enable","text":"

Whether to enable HTTP SSL proxy and load balancer for cardano services

This option has the following effects:

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/http.nix

"},{"location":"reference/module-options/cardano.kupo/","title":"cardano.kupo","text":""},{"location":"reference/module-options/cardano.kupo/#cardanokupoenable","title":"cardano.kupo.enable","text":"

Whether to enable Kupo chain-indexer.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/kupo.nix

"},{"location":"reference/module-options/cardano/","title":"cardano","text":""},{"location":"reference/module-options/cardano/#cardanonetwork","title":"cardano.network","text":"

Cardano network to operate on.

Type: one of \u201cmainnet\u201d, \u201cpreprod\u201d, \u201cpreview\u201d, \u201cprivate\u201d, \u201csanchonet\u201d

Default: \"mainnet\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/cardano.nix

"},{"location":"reference/module-options/cardano.monitoring/","title":"cardano.monitoring","text":""},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringenable","title":"cardano.monitoring.enable","text":"

Whether to enable monitoring services Prometheus and Grafana .

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringexportersenable","title":"cardano.monitoring.exporters.enable","text":"

Enable Prometheus exporters for running services.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringexportersopenfirewall","title":"cardano.monitoring.exporters.openFirewall","text":"

Open firewall ports for prometheus exporters.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringexportersports","title":"cardano.monitoring.exporters.ports","text":"

List of ports where prometheus exporters are exposed. This can be used to open ports in the firewall.

Type: list of 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

[\n  12798\n  9186\n  3000\n  8080\n  1337\n  9100\n  9113\n  9187\n]\n

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringtargets","title":"cardano.monitoring.targets","text":"

List of hosts to to scrape prometheus metrics from.

Type: list of Concatenated string

Default:

[\n  \"localhost\"\n]\n

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.node/","title":"cardano.node","text":""},{"location":"reference/module-options/cardano.node/#cardanonodeenable","title":"cardano.node.enable","text":"

Whether to enable cardano-node service.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodeconfigpath","title":"cardano.node.configPath","text":"

Path to cardano-node configuration.

Type: path

Default: \"/etc/cardano-node/config.json\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodeprometheusexporterenable","title":"cardano.node.prometheusExporter.enable","text":"

Whether to enable prometheus exporter.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodeprometheusexporterport","title":"cardano.node.prometheusExporter.port","text":"

Port where Prometheus exporter is exposed.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 12798

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodesocketpath","title":"cardano.node.socketPath","text":"

Path to cardano-node socket.

Type: path

Default: \"/run/cardano-node/node.socket\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.ogmios/","title":"cardano.ogmios","text":""},{"location":"reference/module-options/cardano.ogmios/#cardanoogmiosenable","title":"cardano.ogmios.enable","text":"

Whether to enable Ogmios bridge interface for cardano-node.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/ogmios.nix

"},{"location":"reference/module-options/cardano.oura/","title":"cardano.oura","text":""},{"location":"reference/module-options/cardano.oura/#cardanoouraenable","title":"cardano.oura.enable","text":"

Whether to enable Oura event processing pipeline for Cardano.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/cardano.oura/#cardanoouraintegrate","title":"cardano.oura.integrate","text":"

Whether to enable connect oura to local cardano-node via N2C.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/cardano.oura/#cardanoouraprometheusexporterenable","title":"cardano.oura.prometheusExporter.enable","text":"

Whether to enable prometheus exporter.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/cardano.oura/#cardanoouraprometheusexporterport","title":"cardano.oura.prometheusExporter.port","text":"

Port where Prometheus exporter is exposed.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 9186

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/services.blockfrost/","title":"services.blockfrost","text":""},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostenable","title":"services.blockfrost.enable","text":"

Whether to enable Blockfrost.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostpackage","title":"services.blockfrost.package","text":"

Type: package

Default: <derivation blockfrost-backend-ryo>

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostgroup","title":"services.blockfrost.group","text":"

Group to run blockfrost service as

Type: string

Default: \"blockfrost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettings","title":"services.blockfrost.settings","text":"

Freeform attrset that generates the JSON configuration file used by Blockfrost.

Type: JSON value

Default: { }

Example:

''\n  {\n    user = config.services.cardano-db-sync.postgres.user;\n    port = config.services.cardano-db-sync.postgres.port;\n    database = config.services.cardano-db-sync.postgres.database;\n    host = config.services.cardano-db-sync.postgres.socketdir;\n  }\n''\n

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncdatabase","title":"services.blockfrost.settings.dbSync.database","text":"

Type: string

Default: \"cdbsync\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsynchost","title":"services.blockfrost.settings.dbSync.host","text":"

Type: string

Default: \"localhost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncmaxconnections","title":"services.blockfrost.settings.dbSync.maxConnections","text":"

Type: signed integer

Default: 10

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncport","title":"services.blockfrost.settings.dbSync.port","text":"

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 5432

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncuser","title":"services.blockfrost.settings.dbSync.user","text":"

Type: string

Default: \"cexplorer\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsnetwork","title":"services.blockfrost.settings.network","text":"

Type: one of \u201cmainnet\u201d, \u201cpreprod\u201d, \u201cpreview\u201d, \u201ctestnet\u201d, \u201csanchonet\u201d

Default: \"mainnet\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverdebug","title":"services.blockfrost.settings.server.debug","text":"

Type: boolean

Default: false

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverlistenaddress","title":"services.blockfrost.settings.server.listenAddress","text":"

Type: string

Default: \"localhost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverport","title":"services.blockfrost.settings.server.port","text":"

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 3000

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverprometheusmetrics","title":"services.blockfrost.settings.server.prometheusMetrics","text":"

Type: boolean

Default: false

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingstokenregistryurl","title":"services.blockfrost.settings.tokenRegistryUrl","text":"

Type: string

Default: \"https://tokens.cardano.org\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfroststatedir","title":"services.blockfrost.stateDir","text":"

Type: path

Default: \"/var/lib/blockfrost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostuser","title":"services.blockfrost.user","text":"

User to run blockfrost service as

Type: string

Default: \"blockfrost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.cardano-db-sync/","title":"services.cardano-db-sync","text":""},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncenable","title":"services.cardano-db-sync.enable","text":"

Whether to enable enable the cardano-db-sync service.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpackage","title":"services.cardano-db-sync.package","text":"

Type: package

Default: <derivation cardano-db-sync-exe-cardano-db-sync-13.6.0.1>

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-synccluster","title":"services.cardano-db-sync.cluster","text":"

cluster name

Type: null or string

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncdbsyncpkgs","title":"services.cardano-db-sync.dbSyncPkgs","text":"

The cardano-db-sync packages and library that should be used. Main usage is sharing optimization: reduce eval time when service is instantiated multiple times.

Type: attribute set

Default: \"cardano-db-sync pkgs\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncdisableledger","title":"services.cardano-db-sync.disableLedger","text":"

Disables the leger state. Drastically reduces memory usage and it syncs faster, but some data are missing.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncenvironment","title":"services.cardano-db-sync.environment","text":"

Type: null or (attribute set)

Default:

This value is long. Click to expand.
{\n  confKey = \"mainnet_full\";\n  consensusProtocol = \"Cardano\";\n  dbSyncConfig = {\n    EnableFutureGenesis = true;\n    EnableLogMetrics = false;\n    EnableLogging = true;\n    NetworkName = \"mainnet\";\n    NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n    PrometheusPort = 8080;\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    minSeverity = \"Info\";\n    options = {\n      cfokey = {\n        value = \"Release-1.0.0\";\n      };\n      mapBackends = { };\n      mapSeverity = {\n        db-sync-node = \"Info\";\n        \"db-sync-node.Mux\" = \"Error\";\n        \"db-sync-node.Subscription\" = \"Error\";\n      };\n      mapSubtrace = {\n        \"#ekgview\" = {\n          contents = [\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \".monoclock.basic.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.cpuNs.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                tag = \"StartsWith\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.gcNum.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n          ];\n          subtrace = \"FilterTrace\";\n        };\n        \"#messagecounters.aggregation\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.ekgview\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.katip\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.monitoring\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.switchboard\" = {\n          subtrace = \"NoTrace\";\n        };\n        benchmark = {\n          contents = [\n            \"GhcRtsStats\"\n            \"MonotonicClock\"\n          ];\n          subtrace = \"ObservableTrace\";\n        };\n        \"cardano.epoch-validation.utxo-stats\" = {\n          subtrace = \"NoTrace\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"AggregationBK\"\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  domain = \"cardano-mainnet.iohk.io\";\n  edgeNodes = [\n    {\n      addr = \"backbone.cardano.iog.io\";\n      port = 3001;\n    }\n    {\n      addr = \"backbone.mainnet.cardanofoundation.org\";\n      port = 3001;\n    }\n    {\n      addr = \"backbone.mainnet.emurgornd.com\";\n      port = 3001;\n    }\n  ];\n  edgePort = 3001;\n  explorerConfig = {\n    NetworkName = \"mainnet\";\n    NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n  };\n  explorerUrl = \"https://explorer.cardano.org\";\n  extraDbSyncConfig = {\n    enableFutureGenesis = true;\n  };\n  metadataUrl = \"https://tokens.cardano.org\";\n  mithrilAggregatorEndpointUrl = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n  mithrilEraReaderParams = {\n    address = \"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\";\n    verification_key = \"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\";\n  };\n  mithrilGenesisVerificationKey = \"5b3139312c36362c3134302c3138352c3133382c31312c3233372c3230372c3235302c3134342c32372c322c3138382c33302c31322c38312c3135352c3230342c31302c3137392c37352c32332c3133382c3139362c3231372c352c31342c32302c35372c37392c33392c3137365d\";\n  mithrilSignerConfig = {\n    aggregator_endpoint = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n    era_reader_adapter_params = \"{\\\"address\\\":\\\"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\\\",\\\"verification_key\\\":\\\"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\\\"}\";\n    era_reader_adapter_type = \"cardano-chain\";\n    network = \"mainnet\";\n    network_magic = 764824073;\n    run_interval = 60000;\n    store_retention_limit = 5;\n  };\n  name = \"mainnet\";\n  networkConfig = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = true;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 150;\n    TargetNumberOfRootPeers = 60;\n    TraceMempool = false;\n  };\n  networkConfigBp = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = false;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 100;\n    TargetNumberOfRootPeers = 100;\n    TraceMempool = false;\n  };\n  nodeConfig = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = true;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 150;\n    TargetNumberOfRootPeers = 60;\n    TraceAcceptPolicy = true;\n    TraceBlockFetchClient = false;\n    TraceBlockFetchDecisions = false;\n    TraceBlockFetchProtocol = false;\n    TraceBlockFetchProtocolSerialised = false;\n    TraceBlockFetchServer = false;\n    TraceChainDb = true;\n    TraceChainSyncBlockServer = false;\n    TraceChainSyncClient = false;\n    TraceChainSyncHeaderServer = false;\n    TraceChainSyncProtocol = false;\n    TraceConnectionManager = true;\n    TraceDNSResolver = true;\n    TraceDNSSubscription = true;\n    TraceDiffusionInitialization = true;\n    TraceErrorPolicy = true;\n    TraceForge = true;\n    TraceHandshake = true;\n    TraceInboundGovernor = true;\n    TraceIpSubscription = true;\n    TraceLedgerPeers = true;\n    TraceLocalChainSyncProtocol = false;\n    TraceLocalConnectionManager = true;\n    TraceLocalErrorPolicy = true;\n    TraceLocalHandshake = true;\n    TraceLocalRootPeers = true;\n    TraceLocalTxSubmissionProtocol = false;\n    TraceLocalTxSubmissionServer = false;\n    TraceMempool = false;\n    TraceMux = false;\n    TracePeerSelection = true;\n    TracePeerSelectionActions = true;\n    TracePublicRootPeers = true;\n    TraceServer = true;\n    TraceTxInbound = false;\n    TraceTxOutbound = false;\n    TraceTxSubmissionProtocol = false;\n    TracingVerbosity = \"NormalVerbosity\";\n    TurnOnLogMetrics = true;\n    TurnOnLogging = true;\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    hasEKG = 12788;\n    hasPrometheus = [\n      \"127.0.0.1\"\n      12798\n    ];\n    minSeverity = \"Info\";\n    options = {\n      mapBackends = {\n        \"cardano.node.metrics\" = [\n          \"EKGViewBK\"\n        ];\n        \"cardano.node.resources\" = [\n          \"EKGViewBK\"\n        ];\n      };\n      mapSubtrace = {\n        \"cardano.node.metrics\" = {\n          subtrace = \"Neutral\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  nodeConfigBp = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = false;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 100;\n    TargetNumberOfRootPeers = 100;\n    TraceAcceptPolicy = true;\n    TraceBlockFetchClient = false;\n    TraceBlockFetchDecisions = false;\n    TraceBlockFetchProtocol = false;\n    TraceBlockFetchProtocolSerialised = false;\n    TraceBlockFetchServer = false;\n    TraceChainDb = true;\n    TraceChainSyncBlockServer = false;\n    TraceChainSyncClient = false;\n    TraceChainSyncHeaderServer = false;\n    TraceChainSyncProtocol = false;\n    TraceConnectionManager = true;\n    TraceDNSResolver = true;\n    TraceDNSSubscription = true;\n    TraceDiffusionInitialization = true;\n    TraceErrorPolicy = true;\n    TraceForge = true;\n    TraceHandshake = true;\n    TraceInboundGovernor = true;\n    TraceIpSubscription = true;\n    TraceLedgerPeers = true;\n    TraceLocalChainSyncProtocol = false;\n    TraceLocalConnectionManager = true;\n    TraceLocalErrorPolicy = true;\n    TraceLocalHandshake = true;\n    TraceLocalRootPeers = true;\n    TraceLocalTxSubmissionProtocol = false;\n    TraceLocalTxSubmissionServer = false;\n    TraceMempool = false;\n    TraceMux = false;\n    TracePeerSelection = true;\n    TracePeerSelectionActions = true;\n    TracePublicRootPeers = true;\n    TraceServer = true;\n    TraceTxInbound = false;\n    TraceTxOutbound = false;\n    TraceTxSubmissionProtocol = false;\n    TracingVerbosity = \"NormalVerbosity\";\n    TurnOnLogMetrics = true;\n    TurnOnLogging = true;\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    hasEKG = 12788;\n    hasPrometheus = [\n      \"127.0.0.1\"\n      12798\n    ];\n    minSeverity = \"Info\";\n    options = {\n      mapBackends = {\n        \"cardano.node.metrics\" = [\n          \"EKGViewBK\"\n        ];\n        \"cardano.node.resources\" = [\n          \"EKGViewBK\"\n        ];\n      };\n      mapSubtrace = {\n        \"cardano.node.metrics\" = {\n          subtrace = \"Neutral\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  private = false;\n  relaysNew = \"backbone.cardano.iog.io\";\n  smashUrl = \"https://smash.cardano-mainnet.iohk.io\";\n  submitApiConfig = {\n    EnableLogMetrics = false;\n    EnableLogging = true;\n    GenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    PrometheusPort = 8080;\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    minSeverity = \"Info\";\n    options = {\n      cfokey = {\n        value = \"Release-1.0.0\";\n      };\n      mapBackends = { };\n      mapSeverity = {\n        db-sync-node = \"Info\";\n        \"db-sync-node.Mux\" = \"Error\";\n        \"db-sync-node.Subscription\" = \"Error\";\n      };\n      mapSubtrace = {\n        \"#ekgview\" = {\n          contents = [\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \".monoclock.basic.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.cpuNs.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                tag = \"StartsWith\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.gcNum.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n          ];\n          subtrace = \"FilterTrace\";\n        };\n        \"#messagecounters.aggregation\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.ekgview\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.katip\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.monitoring\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.switchboard\" = {\n          subtrace = \"NoTrace\";\n        };\n        benchmark = {\n          contents = [\n            \"GhcRtsStats\"\n            \"MonotonicClock\"\n          ];\n          subtrace = \"ObservableTrace\";\n        };\n        \"cardano.epoch-validation.utxo-stats\" = {\n          subtrace = \"NoTrace\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"AggregationBK\"\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  useByronWallet = true;\n  usePeersFromLedgerAfterSlot = 128908821;\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncexplorerconfig","title":"services.cardano-db-sync.explorerConfig","text":"

Type: attribute set

Default:

This value is long. Click to expand.
{\n  EnableFutureGenesis = true;\n  EnableLogMetrics = false;\n  EnableLogging = true;\n  NetworkName = \"mainnet\";\n  NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n  PrometheusPort = 8080;\n  RequiresNetworkMagic = \"RequiresNoMagic\";\n  defaultBackends = [\n    \"KatipBK\"\n  ];\n  defaultScribes = [\n    [\n      \"StdoutSK\"\n      \"stdout\"\n    ]\n  ];\n  minSeverity = \"Info\";\n  options = {\n    cfokey = {\n      value = \"Release-1.0.0\";\n    };\n    mapBackends = { };\n    mapSeverity = {\n      db-sync-node = \"Info\";\n      \"db-sync-node.Mux\" = \"Error\";\n      \"db-sync-node.Subscription\" = \"Error\";\n    };\n    mapSubtrace = {\n      \"#ekgview\" = {\n        contents = [\n          [\n            {\n              contents = \"cardano.epoch-validation.benchmark\";\n              tag = \"Contains\";\n            }\n            [\n              {\n                contents = \".monoclock.basic.\";\n                tag = \"Contains\";\n              }\n            ]\n          ]\n          [\n            {\n              contents = \"cardano.epoch-validation.benchmark\";\n              tag = \"Contains\";\n            }\n            [\n              {\n                contents = \"diff.RTS.cpuNs.timed.\";\n                tag = \"Contains\";\n              }\n            ]\n          ]\n          [\n            {\n              contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n              tag = \"StartsWith\";\n            }\n            [\n              {\n                contents = \"diff.RTS.gcNum.timed.\";\n                tag = \"Contains\";\n              }\n            ]\n          ]\n        ];\n        subtrace = \"FilterTrace\";\n      };\n      \"#messagecounters.aggregation\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.ekgview\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.katip\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.monitoring\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.switchboard\" = {\n        subtrace = \"NoTrace\";\n      };\n      benchmark = {\n        contents = [\n          \"GhcRtsStats\"\n          \"MonotonicClock\"\n        ];\n        subtrace = \"ObservableTrace\";\n      };\n      \"cardano.epoch-validation.utxo-stats\" = {\n        subtrace = \"NoTrace\";\n      };\n    };\n  };\n  rotation = {\n    rpKeepFilesNum = 10;\n    rpLogLimitBytes = 5000000;\n    rpMaxAgeHours = 24;\n  };\n  setupBackends = [\n    \"AggregationBK\"\n    \"KatipBK\"\n  ];\n  setupScribes = [\n    {\n      scFormat = \"ScText\";\n      scKind = \"StdoutSK\";\n      scName = \"stdout\";\n      scRotation = null;\n    }\n  ];\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-synclogconfig","title":"services.cardano-db-sync.logConfig","text":"

Type: attribute set

Default: { }

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresdatabase","title":"services.cardano-db-sync.postgres.database","text":"

the postgresql database to use

Type: string

Default: \"cdbsync\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresgeneratepgpass","title":"services.cardano-db-sync.postgres.generatePGPASS","text":"

generate pgpass

Type: boolean

Default: true

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresport","title":"services.cardano-db-sync.postgres.port","text":"

the postgresql port

Type: signed integer

Default: 5432

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgressocketdir","title":"services.cardano-db-sync.postgres.socketdir","text":"

the path to the postgresql socket

Type: string

Default: \"/run/postgresql\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresuser","title":"services.cardano-db-sync.postgres.user","text":"

the postgresql user to use

Type: string

Default: \"cexplorer\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncprofiling","title":"services.cardano-db-sync.profiling","text":"

Enable GHC profiling.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrestoresnapshot","title":"services.cardano-db-sync.restoreSnapshot","text":"

Restore a snapshot before starting cardano-db-sync, if the snasphot file given by the option exist. Snapshot file is deleted after restore.

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrestoresnapshotsha","title":"services.cardano-db-sync.restoreSnapshotSha","text":"

SHA256 checksum of the snapshot to restore

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrestoresnapshotsigkey","title":"services.cardano-db-sync.restoreSnapshotSigKey","text":"

Key ID for verifying the snaspshot signature. (Signature check disabled if null)

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrtsargs","title":"services.cardano-db-sync.rtsArgs","text":"

Extra CLI args, to be surrounded by \u201c+RTS\u201d/\u201c-RTS\u201d

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncsocketpath","title":"services.cardano-db-sync.socketPath","text":"

Type: null or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncstatedir","title":"services.cardano-db-sync.stateDir","text":"

Type: null or string

Default: \"/var/lib/cexplorer\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-synctakesnapshot","title":"services.cardano-db-sync.takeSnapshot","text":"

Take snapshot before starting cardano-db-sync, \u201conce\u201d (skip if there is one already), \u201calways\u201d (removing previous snapshot), or \u201cnever\u201d.

Type: one of \u201cnever\u201d, \u201conce\u201d, \u201calways\u201d

Default: \"never\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-node/","title":"services.cardano-node","text":""},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeenable","title":"services.cardano-node.enable","text":"

Enable cardano-node, a node implementing ouroboros protocols (the blockchain protocols running cardano).

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodepackage","title":"services.cardano-node.package","text":"

The cardano-node package that should be used

Type: package

Default: \"cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeadditionallistenstream","title":"services.cardano-node.additionalListenStream","text":"

List of additional sockets to listen to. Only available with systemdSocketActivation.

Type: function that evaluates to a(n) list of string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeasserts","title":"services.cardano-node.asserts","text":"

Whether to use an executable with asserts enabled.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodebootstrappeers","title":"services.cardano-node.bootstrapPeers","text":"

If set, it will enable bootstrap peers. To disable, set this to null. To enable, set this to a list of attributes of address and port, example: [{ address = \u201caddr\u201d; port = 3001; }]

Type: null or (list of (attribute set))

Default:

[\n  {\n    address = \"backbone.cardano.iog.io\";\n    port = 3001;\n  }\n  {\n    address = \"backbone.mainnet.cardanofoundation.org\";\n    port = 3001;\n  }\n  {\n    address = \"backbone.mainnet.emurgornd.com\";\n    port = 3001;\n  }\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodecardanonodepackages","title":"services.cardano-node.cardanoNodePackages","text":"

The cardano-node packages and library that should be used. Main usage is sharing optimization: reduce eval time when service is instantiated multiple times.

Type: attribute set

Default: \"cardano-node packages\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodedatabasepath","title":"services.cardano-node.databasePath","text":"

Node database path, for each instance.

Type: string or function that evaluates to a(n) string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodedbprefix","title":"services.cardano-node.dbPrefix","text":"

Prefix of database directories inside stateDir. (eg. for \u201cdb\u201d, there will be db-0, etc.).

Type: string or function that evaluates to a(n) string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodedelegationcertificate","title":"services.cardano-node.delegationCertificate","text":"

Delegation certificate

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeenvironment","title":"services.cardano-node.environment","text":"

environment node will connect to

Type: one of \u201cmainnet\u201d, \u201cpreprod\u201d, \u201cpreview\u201d, \u201cprivate\u201d, \u201csanchonet\u201d, \u201cshelley_qa\u201d, \u201ctestnet\u201d

Default: \"testnet\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeenvironments","title":"services.cardano-node.environments","text":"

environment node will connect to

Type: attribute set

Default:

This value is long. Click to expand.
{\n  mainnet = {\n    confKey = \"mainnet_full\";\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"mainnet\";\n      NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"cardano-mainnet.iohk.io\";\n    edgeNodes = [\n      {\n        addr = \"backbone.cardano.iog.io\";\n        port = 3001;\n      }\n      {\n        addr = \"backbone.mainnet.cardanofoundation.org\";\n        port = 3001;\n      }\n      {\n        addr = \"backbone.mainnet.emurgornd.com\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"mainnet\";\n      NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n    };\n    explorerUrl = \"https://explorer.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://tokens.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\";\n      verification_key = \"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3139312c36362c3134302c3138352c3133382c31312c3233372c3230372c3235302c3134342c32372c322c3138382c33302c31322c38312c3135352c3230342c31302c3137392c37352c32332c3133382c3139362c3231372c352c31342c32302c35372c37392c33392c3137365d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\\\",\\\"verification_key\\\":\\\"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"mainnet\";\n      network_magic = 764824073;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"mainnet\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TraceMempool = false;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TraceMempool = false;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = false;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = false;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"backbone.cardano.iog.io\";\n    smashUrl = \"https://smash.cardano-mainnet.iohk.io\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = true;\n    usePeersFromLedgerAfterSlot = 128908821;\n  };\n  preprod = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"preprod\";\n      NodeConfigFile = \"/nix/store/xlnij79vm8cf9a4ak59q6p80lfcmrzy2-config-preprod.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"preprod-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"preprod\";\n      NodeConfigFile = \"/nix/store/xlnij79vm8cf9a4ak59q6p80lfcmrzy2-config-preprod.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://preprod-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.release-preprod.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr_test1qpkyv2ws0deszm67t840sdnruqgr492n80g3y96xw3p2ksk6suj5musy6w8lsg3yjd09cnpgctc2qh386rtxphxt248qr0npnx\";\n      verification_key = \"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3132372c37332c3132342c3136312c362c3133372c3133312c3231332c3230372c3131372c3139382c38352c3137362c3139392c3136322c3234312c36382c3132332c3131392c3134352c31332c3233322c3234332c34392c3232392c322c3234392c3230352c3230352c33392c3233352c34345d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.release-preprod.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr_test1qpkyv2ws0deszm67t840sdnruqgr492n80g3y96xw3p2ksk6suj5musy6w8lsg3yjd09cnpgctc2qh386rtxphxt248qr0npnx\\\",\\\"verification_key\\\":\\\"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"preprod\";\n      network_magic = 1;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"preprod\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"preprod-node.play.dev.cardano.org\";\n    smashUrl = \"https://preprod-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 64454371;\n  };\n  preview = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"preview\";\n      NodeConfigFile = \"/nix/store/mk35kwvnmi91g2qx2f8xi63glsmx6pg2-config-preview.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"preview-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"preview\";\n      NodeConfigFile = \"/nix/store/mk35kwvnmi91g2qx2f8xi63glsmx6pg2-config-preview.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://preview-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.pre-release-preview.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr_test1qrv5xfwh043mlc3vk5d97s4nmhxu7cmleyssvhx37gkfyejfe8d38v3vsfgetjafgrsdc49krug8wf04h5rmtengtejqlxrksk\";\n      verification_key = \"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3132372c37332c3132342c3136312c362c3133372c3133312c3231332c3230372c3131372c3139382c38352c3137362c3139392c3136322c3234312c36382c3132332c3131392c3134352c31332c3233322c3234332c34392c3232392c322c3234392c3230352c3230352c33392c3233352c34345d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.pre-release-preview.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr_test1qrv5xfwh043mlc3vk5d97s4nmhxu7cmleyssvhx37gkfyejfe8d38v3vsfgetjafgrsdc49krug8wf04h5rmtengtejqlxrksk\\\",\\\"verification_key\\\":\\\"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"preview\";\n      network_magic = 2;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"preview\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"preview-node.play.dev.cardano.org\";\n    smashUrl = \"https://preview-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 53827185;\n  };\n  private = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"private\";\n      NodeConfigFile = \"/nix/store/xbkg7xhgp6rwynqfc6mi7pfggq747gxj-config-private.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"private-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"private\";\n      NodeConfigFile = \"/nix/store/xbkg7xhgp6rwynqfc6mi7pfggq747gxj-config-private.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://private-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilSignerConfig = {\n      network = \"private\";\n      network_magic = 5;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"private\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = true;\n    relaysNew = \"private-node.play.dev.cardano.org\";\n    smashUrl = \"https://private-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 1886369;\n  };\n  sanchonet = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"sanchonet\";\n      NodeConfigFile = \"/nix/store/safwck7da2213agm8j7aivs9ljb91k8l-config-sanchonet.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"sanchonet-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"sanchonet\";\n      NodeConfigFile = \"/nix/store/safwck7da2213agm8j7aivs9ljb91k8l-config-sanchonet.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://sanchonet-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.testing-sanchonet.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr_test1qrg9v8xjjjjx95k2h2gquwrah8424798wqa5exuyhqpcggfyse0nuafkp7rnkxsssxue37259lfhemjdhs333u7v0gwsd0dr30\";\n      verification_key = \"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3132372c37332c3132342c3136312c362c3133372c3133312c3231332c3230372c3131372c3139382c38352c3137362c3139392c3136322c3234312c36382c3132332c3131392c3134352c31332c3233322c3234332c34392c3232392c322c3234392c3230352c3230352c33392c3233352c34345d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.testing-sanchonet.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr_test1qrg9v8xjjjjx95k2h2gquwrah8424798wqa5exuyhqpcggfyse0nuafkp7rnkxsssxue37259lfhemjdhs333u7v0gwsd0dr30\\\",\\\"verification_key\\\":\\\"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"sanchonet\";\n      network_magic = 4;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"sanchonet\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"sanchonet-node.play.dev.cardano.org\";\n    smashUrl = \"https://sanchonet-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 33695977;\n  };\n  shelley_qa = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = false;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"shelley_qa\";\n      NodeConfigFile = \"/nix/store/4sgw9dw44g1zfd2biv5bw4h4c79gs9n2-config-shelley_qa.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"shelley-qa-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"shelley_qa\";\n      NodeConfigFile = \"/nix/store/4sgw9dw44g1zfd2biv5bw4h4c79gs9n2-config-shelley_qa.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://shelley-qa-explorer.play.dev.cardano.org\";\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilSignerConfig = {\n      network = \"shelley_qa\";\n      network_magic = 3;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"shelley_qa\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      minSeverity = \"Debug\";\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      minSeverity = \"Debug\";\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Debug\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Debug\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = true;\n    relaysNew = \"shelley-qa-node.play.dev.cardano.org\";\n    smashUrl = \"https://shelley-qa-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 31348805;\n  };\n  testnet = {\n    confKey = \"testnet_full\";\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = false;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"testnet\";\n      NodeConfigFile = \"/nix/store/ac579847xn66vkyqgpfk3kb8czzw7mak-config-testnet.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    edgeNodes = [ ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"testnet\";\n      NodeConfigFile = \"/nix/store/ac579847xn66vkyqgpfk3kb8czzw7mak-config-testnet.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://doesnotexist.iog.io\";\n    metadataUrl = \"https://doesnotexist.iog.io\";\n    mithrilSignerConfig = {\n      network = \"testnet\";\n      network_magic = 1097911063;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = true;\n    relays = \"doesnotexist.iog.io\";\n    relaysNew = \"doesnotexist.iog.io\";\n    smashUrl = \"https://doesnotexist.iog.io\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = true;\n    usePeersFromLedgerAfterSlot = -1;\n  };\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeeventlog","title":"services.cardano-node.eventlog","text":"

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeexecutable","title":"services.cardano-node.executable","text":"

The cardano-node executable invocation to use

Type: string

Default: \"cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextraargs","title":"services.cardano-node.extraArgs","text":"

Extra CLI args for \u2018cardano-node\u2019.

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextranodeconfig","title":"services.cardano-node.extraNodeConfig","text":"

Additional node config.

Type: attribute set

Default: { }

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextranodeinstanceconfig","title":"services.cardano-node.extraNodeInstanceConfig","text":"

Additional node config for a particular instance.

Type: function that evaluates to a(n) (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextraserviceconfig","title":"services.cardano-node.extraServiceConfig","text":"

Extra systemd service config (apply to all instances).

Type: function that evaluates to a(n) (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextrasocketconfig","title":"services.cardano-node.extraSocketConfig","text":"

Extra systemd socket config (apply to all instances).

Type: function that evaluates to a(n) (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeforcehardforks","title":"services.cardano-node.forceHardForks","text":"

A developer-oriented dictionary option to force hard forks for given eras at given epochs. Maps capitalised era names (Shelley, Allegra, Mary, etc.) to hard fork epoch number.

Type: attribute set of signed integer

Default: { }

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodehostaddr","title":"services.cardano-node.hostAddr","text":"

The host address to bind to

Type: string

Default: \"127.0.0.1\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeinstanceproducers","title":"services.cardano-node.instanceProducers","text":"

Static routes to local peers, specific to a given instance (when multiple instances are used).

Type: function that evaluates to a(n) list of (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeinstancepublicproducers","title":"services.cardano-node.instancePublicProducers","text":"

Routes to public peers. Only used if slot < usePeersFromLedgerAfterSlot and specific to a given instance (when multiple instances are used).

Type: function that evaluates to a(n) list of (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeinstances","title":"services.cardano-node.instances","text":"

Number of instance of the service to run.

Type: signed integer

Default: 1

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeipv6hostaddr","title":"services.cardano-node.ipv6HostAddr","text":"

The ipv6 host address to bind to. Set to null to disable.

Type: null or string or function that evaluates to a(n) (null or string)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeisproducer","title":"services.cardano-node.isProducer","text":"

Whether this node is intended to be a producer. Internal option for inter-module communication.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodekeskey","title":"services.cardano-node.kesKey","text":"

Signing key

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodelmdbdatabasepath","title":"services.cardano-node.lmdbDatabasePath","text":"

Node UTxO-HD LMDB path for performant disk I/O, for each instance. This could point to a direct-access SSD, with a specifically created journal-less file system and optimized mount options.

Type: null or string or function that evaluates to a(n) (null or string)

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodenodeconfig","title":"services.cardano-node.nodeConfig","text":"

Internal representation of the config.

Type: attribute set

Default:

This value is long. Click to expand.
{\n  AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n  AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n  ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n  ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n  ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n  ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n  EnableP2P = true;\n  LastKnownBlockVersion-Alt = 0;\n  LastKnownBlockVersion-Major = 3;\n  LastKnownBlockVersion-Minor = 0;\n  MaxKnownMajorProtocolVersion = 2;\n  MinNodeVersion = \"8.12.0\";\n  PeerSharing = true;\n  Protocol = \"Cardano\";\n  RequiresNetworkMagic = \"RequiresNoMagic\";\n  ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n  ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n  TargetNumberOfActivePeers = 20;\n  TargetNumberOfEstablishedPeers = 50;\n  TargetNumberOfKnownPeers = 150;\n  TargetNumberOfRootPeers = 60;\n  TraceAcceptPolicy = true;\n  TraceBlockFetchClient = false;\n  TraceBlockFetchDecisions = false;\n  TraceBlockFetchProtocol = false;\n  TraceBlockFetchProtocolSerialised = false;\n  TraceBlockFetchServer = false;\n  TraceChainDb = true;\n  TraceChainSyncBlockServer = false;\n  TraceChainSyncClient = false;\n  TraceChainSyncHeaderServer = false;\n  TraceChainSyncProtocol = false;\n  TraceConnectionManager = true;\n  TraceDNSResolver = true;\n  TraceDNSSubscription = true;\n  TraceDiffusionInitialization = true;\n  TraceErrorPolicy = true;\n  TraceForge = true;\n  TraceHandshake = true;\n  TraceInboundGovernor = true;\n  TraceIpSubscription = true;\n  TraceLedgerPeers = true;\n  TraceLocalChainSyncProtocol = false;\n  TraceLocalConnectionManager = true;\n  TraceLocalErrorPolicy = true;\n  TraceLocalHandshake = true;\n  TraceLocalRootPeers = true;\n  TraceLocalTxSubmissionProtocol = false;\n  TraceLocalTxSubmissionServer = false;\n  TraceMempool = false;\n  TraceMux = false;\n  TracePeerSelection = true;\n  TracePeerSelectionActions = true;\n  TracePublicRootPeers = true;\n  TraceServer = true;\n  TraceTxInbound = false;\n  TraceTxOutbound = false;\n  TraceTxSubmissionProtocol = false;\n  TracingVerbosity = \"NormalVerbosity\";\n  TurnOnLogMetrics = true;\n  TurnOnLogging = true;\n  defaultBackends = [\n    \"KatipBK\"\n  ];\n  defaultScribes = [\n    [\n      \"StdoutSK\"\n      \"stdout\"\n    ]\n  ];\n  hasEKG = 12788;\n  hasPrometheus = [\n    \"127.0.0.1\"\n    12798\n  ];\n  minSeverity = \"Info\";\n  options = {\n    mapBackends = {\n      \"cardano.node.metrics\" = [\n        \"EKGViewBK\"\n      ];\n      \"cardano.node.resources\" = [\n        \"EKGViewBK\"\n      ];\n    };\n    mapSubtrace = {\n      \"cardano.node.metrics\" = {\n        subtrace = \"Neutral\";\n      };\n    };\n  };\n  rotation = {\n    rpKeepFilesNum = 10;\n    rpLogLimitBytes = 5000000;\n    rpMaxAgeHours = 24;\n  };\n  setupBackends = [\n    \"KatipBK\"\n  ];\n  setupScribes = [\n    {\n      scFormat = \"ScText\";\n      scKind = \"StdoutSK\";\n      scName = \"stdout\";\n      scRotation = null;\n    }\n  ];\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodenodeconfigfile","title":"services.cardano-node.nodeConfigFile","text":"

Actual configuration file (shell expression).

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodenodeid","title":"services.cardano-node.nodeId","text":"

The ID for this node

Type: signed integer

Default: 0

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeoperationalcertificate","title":"services.cardano-node.operationalCertificate","text":"

Operational certificate

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeport","title":"services.cardano-node.port","text":"

The port number

Type: signed integer or string

Default: 3001

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeproducers","title":"services.cardano-node.producers","text":"

Static routes to local peers.

Type: list of (attribute set)

Default: [ ]

Example:

[\n  {\n    accessPoints = [\n      {\n        address = \"127.0.0.1\";\n        port = 3001;\n      }\n    ];\n    advertise = false;\n    valency = 1;\n  }\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeprofiling","title":"services.cardano-node.profiling","text":"

Type: one of \u201cnone\u201d, \u201ctime\u201d, \u201ctime-detail\u201d, \u201cspace\u201d, \u201cspace-cost\u201d, \u201cspace-module\u201d, \u201cspace-closure\u201d, \u201cspace-type\u201d, \u201cspace-retainer\u201d, \u201cspace-bio\u201d, \u201cspace-heap\u201d

Default: \"none\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeprofilingargs","title":"services.cardano-node.profilingArgs","text":"

RTS profiling options

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodepublicproducers","title":"services.cardano-node.publicProducers","text":"

Routes to public peers. Only used if slot < usePeersFromLedgerAfterSlot

Type: list of (attribute set)

Default: [ ]

Example:

[\n  {\n    accessPoints = [\n      {\n        address = \"backbone.cardano.iog.io\";\n        port = 3001;\n      }\n    ];\n    advertise = false;\n  }\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodertsargs","title":"services.cardano-node.rtsArgs","text":"

Extra CLI args for \u2018cardano-node\u2019, to be surrounded by \u201c+RTS\u201d/\u201c-RTS\u201d

Type: list of string

Default:

[\n  \"-N2\"\n  \"-I0\"\n  \"-A16m\"\n  \"-qg\"\n  \"-qb\"\n  \"--disable-delayed-os-memory-return\"\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-noderts_flags_override","title":"services.cardano-node.rts_flags_override","text":"

RTS flags override from profile content.

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-noderuntimedir","title":"services.cardano-node.runtimeDir","text":"

Runtime directory relative to /run, for each instance

Type: null or string or function that evaluates to a(n) (null or string)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodescript","title":"services.cardano-node.script","text":"

Type: string

Default:

This value is long. Click to expand.
''\n  echo \"Starting: exec /nix/store/0zd4i3gfzrmnik1x1crywplxmq221qdh-cardano-node-exe-cardano-node-10.1.2/bin/cardano-node run\"\n     echo \"--config /nix/store/kq04x2fjvnmv11fawj870fixsma9g47x-config-0-0.json\"\n     echo \"--database-path /var/lib/cardano-node/db-mainnet\"\n     echo \"--topology /nix/store/afc8vswv43sl2y36rr9139588qgf73wk-topology.yaml\"\n     echo \"--host-addr 127.0.0.1\"\n     echo \"--port 3001\"\n     echo \"--socket-path /run/cardano-node/node.socket\"\n     echo \"\"\n     echo \"\"\n     echo \"\"\n     echo \"\"\n     echo \"\"\n     echo \"+RTS\"\n     echo \"-N2\"\n     echo \"-I0\"\n     echo \"-A16m\"\n     echo \"-qg\"\n     echo \"-qb\"\n     echo \"--disable-delayed-os-memory-return\"\n     echo \"-RTS\"\n  echo \"..or, once again, in a single line:\"\n  echo \"exec /nix/store/0zd4i3gfzrmnik1x1crywplxmq221qdh-cardano-node-exe-cardano-node-10.1.2/bin/cardano-node run --config /nix/store/kq04x2fjvnmv11fawj870fixsma9g47x-config-0-0.json --database-path /var/lib/cardano-node/db-mainnet --topology /nix/store/afc8vswv43sl2y36rr9139588qgf73wk-topology.yaml --host-addr 127.0.0.1 --port 3001 --socket-path /run/cardano-node/node.socket      +RTS -N2 -I0 -A16m -qg -qb --disable-delayed-os-memory-return -RTS\"\n\n  exec /nix/store/0zd4i3gfzrmnik1x1crywplxmq221qdh-cardano-node-exe-cardano-node-10.1.2/bin/cardano-node run --config /nix/store/kq04x2fjvnmv11fawj870fixsma9g47x-config-0-0.json --database-path /var/lib/cardano-node/db-mainnet --topology /nix/store/afc8vswv43sl2y36rr9139588qgf73wk-topology.yaml --host-addr 127.0.0.1 --port 3001 --socket-path /run/cardano-node/node.socket      +RTS -N2 -I0 -A16m -qg -qb --disable-delayed-os-memory-return -RTS''\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeshareipv4port","title":"services.cardano-node.shareIpv4port","text":"

Should instances on same machine share ipv4 port. Default: true if systemd activated socket. Otherwise false. If false use port increments starting from port.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeshareipv6port","title":"services.cardano-node.shareIpv6port","text":"

Should instances on same machine share ipv6 port. Default: true if systemd activated socket. Otherwise false. If false use port increments starting from port.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesigningkey","title":"services.cardano-node.signingKey","text":"

Signing key

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesocketgroup","title":"services.cardano-node.socketGroup","text":"

systemd socket group owner. Note: only applies to sockets created by systemd (ie. when systemdSocketActivation is turned on).

Type: string

Default: \"cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesocketpath","title":"services.cardano-node.socketPath","text":"

Local communication socket path, for each instance.

Type: string or function that evaluates to a(n) string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodestatedir","title":"services.cardano-node.stateDir","text":"

Directory to store blockchain data, for each instance.

Type: string or function that evaluates to a(n) string

Default: \"/var/lib/cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesystemdsocketactivation","title":"services.cardano-node.systemdSocketActivation","text":"

Use systemd socket activation

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofactivepeers","title":"services.cardano-node.targetNumberOfActivePeers","text":"

Number of peers your node is actively downloading headers and blocks from. Default to 2/5 of targetNumberOfEstablishedPeers.

Type: signed integer

Default: 20

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofestablishedpeers","title":"services.cardano-node.targetNumberOfEstablishedPeers","text":"

Number of peers the node will be connected to, but not necessarily following their chain. Default to half of targetNumberOfKnownPeers.

Type: signed integer

Default: 50

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofknownpeers","title":"services.cardano-node.targetNumberOfKnownPeers","text":"

Target number for known peers (root peers + peers known through gossip). Default to targetNumberOfRootPeers.

Type: signed integer

Default: 150

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofrootpeers","title":"services.cardano-node.targetNumberOfRootPeers","text":"

Limits the maximum number of root peers the node will know about

Type: signed integer

Default: 60

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetopology","title":"services.cardano-node.topology","text":"

Cluster topology. If not set producers array is used to generated topology file.

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetracersocketpathaccept","title":"services.cardano-node.tracerSocketPathAccept","text":"

Listen for incoming cardano-tracer connection on a local socket, for each instance.

Type: null or string or function that evaluates to a(n) (null or string)

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetracersocketpathconnect","title":"services.cardano-node.tracerSocketPathConnect","text":"

Connect to cardano-tracer listening on a local socket, for each instance.

Type: null or string or function that evaluates to a(n) (null or string)

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeuselegacytracing","title":"services.cardano-node.useLegacyTracing","text":"

Use the legacy tracing, based on iohk-monitoring-framework.

Type: boolean

Default: true

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeusenewtopology","title":"services.cardano-node.useNewTopology","text":"

Use new, p2p/ledger peers compatible topology.

Type: boolean

Default: true

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeusepeersfromledgerafterslot","title":"services.cardano-node.usePeersFromLedgerAfterSlot","text":"

If set, bootstraps from public roots until it reaches given slot, then it switches to using the ledger as a source of peers. It maintains a connection to its local roots. Default to null for block producers.

Type: null or signed integer

Default: 128908821

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeusesystemdreload","title":"services.cardano-node.useSystemdReload","text":"

If set, systemd will reload cardano-node service units instead of restarting them if only the topology file has changed and p2p is in use.

Cardano-node topology files will be stored in /etc as: /etc/cardano-node/topology-${toString i}.yaml

Enabling this option will also allow direct topology edits for tests when a full service re-deployment is not desired.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodevrfkey","title":"services.cardano-node.vrfKey","text":"

Signing key

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodewithcardanotracer","title":"services.cardano-node.withCardanoTracer","text":"

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodewithutxohdlmdb","title":"services.cardano-node.withUtxoHdLmdb","text":"

On an UTxO-HD enabled node, the in-memory backend is the default. This activates the on-disk backend (LMDB) instead.

Type: boolean or function that evaluates to a(n) boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.http-proxy/","title":"services.http-proxy","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyenable","title":"services.http-proxy.enable","text":"

Whether to enable HTTP reverse proxy, TLS endpoint and load balancer.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxydomainname","title":"services.http-proxy.domainName","text":"

Domain name. For each service a virtualHost is configured as a subdomain.

Type: string

Default: \"\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyhttpsenable","title":"services.http-proxy.https.enable","text":"

Enable TLS and redirect all connections to HTTPS. Requires certificates. Supports ACME.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyhttpsacmeenable","title":"services.http-proxy.https.acme.enable","text":"

Enable Let\u2019s Encrypt ACME TLS certificates. Requires public DNS records pointing to server and security.acme configured.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyopenfirewall","title":"services.http-proxy.openFirewall","text":"

Open firewall for HTTP and HTTPS.

Type: boolean

Default: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservers","title":"services.http-proxy.servers","text":"

List of upstream server host names used for all services.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservices","title":"services.http-proxy.services","text":"

Configuraiton for each upstream service.

Type: attribute set of (submodule)

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesname","title":"services.http-proxy.services..name

Name of the service.

Type: string

Default: \"\u2039name\u203a\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesport","title":"services.http-proxy.services..port

Upstream server port.

Type: null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesservers","title":"services.http-proxy.services..servers

List of upstream server host names.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesversion","title":"services.http-proxy.services..version

This string will be served at path \u2018/version\u2019.

Type: null or string

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.kupo/","title":"services.kupo","text":""},{"location":"reference/module-options/services.kupo/#serviceskupoenable","title":"services.kupo.enable","text":"

Whether to enable Kupo Cardano chain-indexer.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupopackage","title":"services.kupo.package","text":"

Kupo package.

Type: package

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoextraargs","title":"services.kupo.extraArgs","text":"

Extra arguments to kupo command.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupogroup","title":"services.kupo.group","text":"

Group to run kupo service as.

Type: non-empty string

Default: \"kupo\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupohost","title":"services.kupo.host","text":"

Host address or name to listen on.

Type: non-empty string

Default: \"127.0.0.1\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupohydrahost","title":"services.kupo.hydraHost","text":"

Hydra host name. Optional.

Type: null or non-empty string

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupohydraport","title":"services.kupo.hydraPort","text":"

Hydra port. Ignored if hydraHost is null.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupomatches","title":"services.kupo.matches","text":"

The list of addresses to watch.

Type: list of non-empty string

Default:

[\n  \"*\"\n]\n

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskuponodeconfigpath","title":"services.kupo.nodeConfigPath","text":"

Path to cardano-node config.json file. Ignored if ogmiosHost is not null

Type: path

Default: \"/etc/cardano-node/config.json\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskuponodesocketpath","title":"services.kupo.nodeSocketPath","text":"

Path to cardano-node IPC socket. Ignored if ogmiosHost is not null.

Type: null or path

Default: \"/run/cardano-node/node.socket\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoogmioshost","title":"services.kupo.ogmiosHost","text":"

Ogmios host name. Optional, will connect to cardano-node if null.

Type: null or non-empty string

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoogmiosport","title":"services.kupo.ogmiosPort","text":"

Ogmios port. Ignored if ogmiosHost is null.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 1337

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoport","title":"services.kupo.port","text":"

TCP port to listen on.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 1442

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupopruneutxo","title":"services.kupo.pruneUtxo","text":"

Automatically remove inputs that are spent on-chain.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskuposince","title":"services.kupo.since","text":"

Watching depth.

Type: non-empty string

Default: \"origin\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupouser","title":"services.kupo.user","text":"

User to run kupo service as.

Type: non-empty string

Default: \"kupo\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoworkdir","title":"services.kupo.workDir","text":"

Directory to start the kupo and store its data. Must start with /var/lib/.

Type: path

Default: \"/var/lib/kupo\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.ogmios/","title":"services.ogmios","text":""},{"location":"reference/module-options/services.ogmios/#servicesogmiosenable","title":"services.ogmios.enable","text":"

Whether to enable Ogmios bridge interface for cardano-node.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiospackage","title":"services.ogmios.package","text":"

Ogmios package

Type: package

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosextraargs","title":"services.ogmios.extraArgs","text":"

Extra arguments to ogmios command.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosgroup","title":"services.ogmios.group","text":"

Group to run Ogmios service as.

Type: string

Default: \"ogmios\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmioshost","title":"services.ogmios.host","text":"

Host address or name to listen on.

Type: string

Default: \"127.0.0.1\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosnodeconfigpath","title":"services.ogmios.nodeConfigPath","text":"

Path to cardano-node config.json file. Required.

Type: path

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosnodesocketpath","title":"services.ogmios.nodeSocketPath","text":"

Path to cardano-node IPC socket.

Type: path

Default: \"/run/cardano-node/node.socket\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosport","title":"services.ogmios.port","text":"

TCP port to listen on.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 1337

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosuser","title":"services.ogmios.user","text":"

User to run Ogmios service as.

Type: string

Default: \"ogmios\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.oura/","title":"services.oura","text":""},{"location":"reference/module-options/services.oura/#servicesouraenable","title":"services.oura.enable","text":"

Whether to enable oura.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourapackage","title":"services.oura.package","text":"

The oura package to use.

Type: package

Default: pkgs.oura

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesouragroup","title":"services.oura.group","text":"

Group to run oura service as

Type: string

Default: \"oura\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourasettings","title":"services.oura.settings","text":"

Freeform attrset that generates the TOML configuration file used by Oura.

Type: TOML value

Default: { }

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourastatedir","title":"services.oura.stateDir","text":"

State directory for oura service

Type: path

Default: \"/var/lib/oura\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourauser","title":"services.oura.user","text":"

User to run oura service as

Type: string

Default: \"oura\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"About the Project","text":"

cardano.nix is a collection of Nix packages and NixOS modules designed to make it easy to operate Cardano related services and infrastructure.

"},{"location":"#why","title":"Why?","text":"

Nix is a declarative package manager ensuring hash-based dependency pinning and reproducible builds. NixOS is a Linux distribution with a declarative configuration system providing atomic updates and rollbacks. These features are responsible for the increased reliability of a NixOS system, making it an attractive DevOps toolset for deploying Cardano services.

"},{"location":"#what","title":"What?","text":"

The cardano.nix project aims to provide NixOS modules for Cardano services such as cardano-node, ogmios, kupo, cardano-db-sync, as well as auxiliary modules such as firewall and HTTP(S), making it easy to deploy these services in production. Very little configuration is needed to run the services with sane defaults that are easy to customize. The services can be run on the same host or in a distributed cluster, and a HTTPS proxy module is also provided.

"},{"location":"#how","title":"How?","text":"

Here are some motivating examples.

This NixOS configuration will start cardano-node and related services on the preview testnet.

{\n  cardano = {\n    network = \"preview\";\n    node.enable = true;\n    ogmios.enable = true;\n  };\n}\n

This snippet will configure a HTTPS reverse proxy and load balancer with ACME certificates from Let's Encrypt. DNS records need to be set up and the backend servers (configured as above) need to be reachable.

{\n  cardano.http.enable = true;\n  services.http-proxy = {\n    domainName = \"preview.example.com\";\n    https.enable = true;\n    servers = [\"server1\" \"server2\"];\n  };\n};\n

Configurations including the above can be deployed to a laptop, a virtual machine, a cloud instance, a container, or any other system running NixOS. Example configurations and shortcuts to run virtual machines are provided as part of the project.

"},{"location":"license/","title":"License","text":"

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/

"},{"location":"license/#terms-and-conditions-for-use-reproduction-and-distribution","title":"TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION","text":"

1- Definitions.

\"License\" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.

\"Licensor\" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.

\"Legal Entity\" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, \"control\" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

\"You\" (or \"Your\") shall mean an individual or Legal Entity exercising permissions granted by this License.

\"Source\" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.

\"Object\" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.

\"Work\" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).

\"Derivative Works\" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

\"Contribution\" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, \"submitted\" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as \"Not a Contribution.\"

\"Contributor\" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.

2- Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.

3- Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

4- Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and

(d) If the Work includes a \"NOTICE\" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.

You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

5- Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.

6- Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

7- Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

8- Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.

9- Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets \"[]\" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same \"printed page\" as the copyright notice for easier identification within third-party archives.

Copyright 2023 MLabs ltd, and cardano.nix contributors.

Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

"},{"location":"development/contributing/","title":"Contributing","text":"

There are several ways you can contribute.

"},{"location":"development/contributing/#reporting-issues","title":"Reporting issues","text":""},{"location":"development/contributing/#proposing-features","title":"Proposing features","text":""},{"location":"development/contributing/#code-style-guidelines","title":"Code style guidelines","text":""},{"location":"development/contributing/#checks","title":"Checks","text":"

Thank you for contributing to cardano.nix! Your help is greatly appreciated \ud83d\ude0a

"},{"location":"development/develop/","title":"Develop","text":"

Development is supported on linux systems. Virtual machines are run with qemu so kvm is recommended. Follow the installation guide to set up nix.

"},{"location":"development/develop/#development-shell","title":"Development Shell","text":"

cardano.nix provides a devshell that includes various tools to build, test, run and update the project:

$ nix develop\n...\n\u2744\ufe0f Welcome to the cardano.nix devshell \u2744\ufe0f\n\n[documentation]\n\n  docs-build              - build documentation\n  docs-serve              - serve documentation web page\n\n[examples]\n\n  vm-preview              - Start vm with cardano services on the preview network and ports forwarded to host\n\n[general commands]\n\n  menu                    - prints this menu\n\n[tests]\n\n  build-all               - build all packages and checks with `devour-flake`\n  check                   - run `nix flake check`\n  run-vm-test             - list and run virtual machine integration tests\n\n[tools]\n\n  fmt                     - format the source tree\n  update-pre-commit-hooks - update git pre-commit hooks\n

A .envrc file is also provided, using direnv and nix-direnv is suggested.

"},{"location":"development/develop/#running-integration-tests","title":"Running Integration Tests","text":"

From the devshell you can run integration tests with run-vm-test, for example the following will start cardano-node and ogmios on the preview testnet and will check for synchronization progress.

run-vm-test ogmios\n
"},{"location":"getting-started/cloud/","title":"Deploy to Cloud","text":""},{"location":"getting-started/cloud/#deploy-to-the-cloud","title":"Deploy to the Cloud","text":"

\u26a0 Caution: The templates have an empty root password set in vm.nix for convenience. Be sure to remove the vm.nix import and use public key authentication before deploying to the cloud.

To deploy the network of nodes and proxy to cloud providers such as AWS, Google Cloud, DigitalOcean, or Hetzner, some additional setup is required that is out of scope for this project as it depends on the deployment workflow. Here is an overview:

"},{"location":"getting-started/cloud/#deploy-cloud-infrastructure","title":"Deploy Cloud Infrastructure","text":"

Cloud resources need to be created, for example with an Infrastructure-as-Code tool such as AWS CloudFormation or OpenTofu.

"},{"location":"getting-started/cloud/#cloud-machines","title":"Cloud Machines","text":"

Virtual machines (AWS EC2, droplet, etc.) need to be created, one for each node and one for the proxy. Synchronizing the blockchain takes a long time so auto scaling is not viable without extra setup, eg. using cardanow to load snapshots or using shared network storage.

"},{"location":"getting-started/cloud/#networking","title":"Networking","text":"

Private networking needs to be set up between the nodes and proxy, either via the cloud provider's native support (AWS VPC, etc.) or VPN such as wireguard.

The nodes should be configured to be reachable only via the private network on which the proxy resides. This can be as simple as disabling public IPs for these machines. More complex setups have several options to configure networking, such as the services' listen addresses (services.ogmios.host, and similar NixOS options), OS firewall (networking.firewall.*) and cloud firewall (AWS security groups etc.).

"},{"location":"getting-started/cloud/#dns-records","title":"DNS Records","text":"

To make the proxy reachable via a web address from the browser, DNS records need to be added. This is also required for HTTPS. The opinionated default is a separate subdomain for each service, this can be overridden via nginx configuration.

Example DNS records, where the proxy public IP is 12.34.56.78:

my.example.com A 12.34.56.78\nogmios.my.example.com A 12.34.56.78\nkupo.my.example.com A 12.34.56.78\n

Alternatively, a wildcard record may be added for *.my.example.com.

"},{"location":"getting-started/cloud/#operating-system-configuration-and-deployment","title":"Operating System Configuration and Deployment","text":"

NixOS has to be installed on the cloud machines. If the cloud provider does not have NixOS images, this can be achieved starting from mainstream distros like Debian or Ubuntu using nixos-infect from cloud-init user data. A better option is to generate cloud images, eg. using [nixos-generators]https://github.com/nix-community/nixos-generators) and start the cloud machines from those.

To deploy operating system configuration via SSH, services.openssh needs to be configured and users.users.root.openssh.authorizedKeys.keys set. Deployment can be done via nixos-rebuild --flake . --target-host HOST or using a deployment app such as colmena, or integrated into an infrastructure tool like terraform-nixos.

"},{"location":"getting-started/cloud/#node-adresses","title":"Node Adresses","text":"

The proxy needs to know how to reach the nodes. This is configured in services.http-proxy.servers. In the NixOS test environment, nodes are reachable by hostname, because static hosts entries are added for them automatically. This is not available in the cloud. Several options exist:

"},{"location":"getting-started/cloud/#domain-name","title":"Domain Name","text":"

Once DNS records are created for the proxy as above, the domain name needs to be configured. This is also required for HTTPS.

services.http-proxy.domainName = \"my.example.com\";\n

The server will now respond to HTTP requests with Hosts header set to my.example.com, as well as making the services available at ogmios.my.example.com etc.

"},{"location":"getting-started/cloud/#https","title":"HTTPS","text":"

To serve public web pages and APIs, it is necessary to protect data integrity and confidentiality during transmission, so HTTPS needs to be enabled on the proxy. Once DNS and domain names are configured as above, this is easily achieved with the following option:

services.http-proxy.https.enable = true;\n

This will set up Let's Encrypt ACME TLS certificates on the proxy server, enable HTTPS in the nginx web server and redirect all HTTP traffic to HTTPS.

"},{"location":"getting-started/deploy/","title":"Deploy","text":"

In order to access all the options available in cardano.nix, the NixOS module provided by this project has to be included in a NixOS configuration and deployed to a (local or remote or virtual) machine.

"},{"location":"getting-started/deploy/#start-new-project-with-flake-template","title":"Start new project with flake template","text":"

Before starting, follow the installation instructions.

An easy way to get started is to use the flake template provided by this project. Here's how to start a new project using the template:

mkdir myproject\ncd myproject\nnix flake init --template github:mlabs-haskell/cardano.nix\n
"},{"location":"getting-started/deploy/#run-a-virtual-machine","title":"Run a virtual machine","text":"

The default template provides a virtual machine configuration starting all the services in the preview testnet. Here's how to run it:

nix run .#vm

A virtual machine is started, with cardano-cli available to query the node:

cardano-cli query tip --testnet-magic 2

This machine is set up just like the one in Run a VM, but can be customized.

"},{"location":"getting-started/deploy/#look-around","title":"Look around","text":""},{"location":"getting-started/deploy/#flakenix","title":"flake.nix","text":"

This Nix Flake is the entry point to the project. It locks inputs and provides the following outputs:

"},{"location":"getting-started/deploy/#configurationnix","title":"configuration.nix","text":"

This is the NixOS configuration to run cardano services on the machine.

"},{"location":"getting-started/deploy/#vmnix","title":"vm.nix","text":"

Local VM configuration for convenient development. Don't use this in the cloud, it is insecure with an empty root password. Sets virtual machine options such as cores, memory and port forwarding. It is included in the configuration for the nixosConfigurations.vm virtual machine in flake.nix.

"},{"location":"getting-started/deploy/#customize","title":"Customize","text":"

To learn more, browse available NixOS options in nixpkgs and NixOS options provided by cardano.nix (see other modules in the menu on the left). You can ad these options to configuration.nix to configure the system.

"},{"location":"getting-started/deploy/#deployment-options","title":"Deployment options","text":"

The configuration can be deployed to any target running NixOS, such as:

There are a variety of resources to help install NixOS:

With a running NixOS installation and a NixOS configuration server in a nix flake, this command will deploy the server:

nixos-rebuild switch --flake .#server --target-host <target>

"},{"location":"getting-started/installation/","title":"Installation","text":""},{"location":"getting-started/installation/#requirements","title":"Requirements","text":""},{"location":"getting-started/installation/#setup","title":"Setup","text":"

Follow this guide to Install nix with flakes enabled.

"},{"location":"getting-started/installation/#binary-cache","title":"Binary cache","text":"

You can optionally use this project's binary cache to skip building software and download it instead. Edit /etc/nix/nix.conf (or related settings in NixOS config) and merge the new values separated by spaces into the options:

substituters = ... https://cache.staging.mlabs.city/cardano-nix\ntrusted-public-keys = ... cardano-nix:BQ7QKgoQQAuL3Kh6pfIJ8oxrihUbUSxf6tN9SxyW608=\n

Don't edit ~/.config/nix/nix.conf in your home directory. Don't add users to trusted-users because it is insecure.

"},{"location":"getting-started/installation/#check-that-it-works","title":"Check that it works","text":"

nix --version

"},{"location":"getting-started/installation/#learn-more","title":"Learn more","text":"

For an introduction to the Nix ecosystem, check out Zero to Nix. Learn more about Nix flakes and NixOS.

"},{"location":"getting-started/load-balancer/","title":"Load Balancer","text":"

cardano.nix provides the cardano.http and services.http-proxy NixOS modules, which implement a HTTP Load Balancing Reverse Proxy and TLS Endpoint using the nginx HTTP server.

Our focus here is to facilitate robust, secure, and efficient HTTP traffic management for Cardano services through load balancing and TLS termination.

"},{"location":"getting-started/load-balancer/#overview","title":"Overview","text":"

The Load Balancing Reverse Proxy and TLS Endpoint module is designed to handle HTTP requests by distributing them across multiple backend servers, ensuring optimal resource utilization and high availability. It also manages TLS termination, securing the communication between clients and the proxy.

Key features of this module include:

See documentation for the cardano.http and services.http-proxy NixOS modules.

"},{"location":"getting-started/load-balancer/#flake-template-with-load-balancer","title":"Flake template with load balancer","text":"

An easy way to get started is to use the flake template provided by this project. Before starting, follow the installation instructions. Here's how to start a new project using the template:

mkdir myproject\ncd myproject\nnix flake init --template github:mlabs-haskell/cardano.nix#cluster\ngit init\ngit add .\n
"},{"location":"getting-started/load-balancer/#run-virtual-machines","title":"Run virtual machines","text":"

The template provides virtual machine configurations for three nodes and a load balancer. The NixOS test framework is used to start the virtual machines and set up networking. Run all the VMs:

nix run .#vms

The services will be available on ports forwarded from localhost: ogmios at http://localhost:8001 and kupo at http://localhost:8002 . Grafana is available at http://localhost:8008 .

Press Ctrl+C to stop the machines.

"},{"location":"getting-started/load-balancer/#further-reading","title":"Further reading","text":"

Check out the following documentation:

cardano.http NixOS module documentation

services.http-proxy NixOS module documentation

NixOS options such as services.nginx, networking.firewall.

"},{"location":"getting-started/vm/","title":"Run a VM","text":"

This project provides a virtual machine configuration with all cardano services.

nix run github:mlabs-haskell/cardano.nix#vm-preview

A virtual machine will be started with the following services, and the following ports forwarded from the host to the VM.

Service Port cardano-node 3001 ogmios http://localhost:1337 kupo http://localhost:1442

You can log in with user root. The password is empty. In the virtual machine, cardano-cli is available to query the node.

cardano-cli query tip --testnet-magic 2

"},{"location":"reference/module-options/cardano.blockfrost/","title":"cardano.blockfrost","text":""},{"location":"reference/module-options/cardano.blockfrost/#cardanoblockfrostenable","title":"cardano.blockfrost.enable","text":"

Whether to enable Blockfrost.io backend is an API service providing abstraction between you and Cardano blockchain data

Blockfrost connects to a postgresql database, populated by Cardano DB sync with node. You need to either provide the db connection arguments:

services.blockfrost.settings.dbSync = {\n  # these are the defaults:\n  name = \"cardano-db-sync\";\n  user = \"cardano-db-sync\";\n  port = 5432;\n  # optionally supply \"host\" and \"password\" parameters.\n  socketdir = \"/run/postgresql\";\n};\n

or enable the default postgresql service with cardano.blockfrost.postgres.enable .

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/blockfrost.nix

"},{"location":"reference/module-options/cardano.blockfrost/#cardanoblockfrostpostgresenable","title":"cardano.blockfrost.postgres.enable","text":"

Whether to enable Connect blockfrost to local postgresql\u2026

Type: boolean

Default: true

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/blockfrost.nix

"},{"location":"reference/module-options/cardano.cli/","title":"cardano.cli","text":""},{"location":"reference/module-options/cardano.cli/#cardanoclienable","title":"cardano.cli.enable","text":"

Add cardano-cli to \u2018environment.systemPackages\u2019.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/cli.nix

"},{"location":"reference/module-options/cardano.db-sync/","title":"cardano.db-sync","text":""},{"location":"reference/module-options/cardano.db-sync/#cardanodb-syncenable","title":"cardano.db-sync.enable","text":"

Whether to enable Cardano DB Sync provides a way to query local cardano node.

Cardano DB sync connects to a cardano node and saves blocks to a database. You need to either provide the db connection arguments:

services.cardano-db-sync.database = {\n  # these are the defaults:\n  name = \"cardano-db-sync\";\n  user = \"cardano-db-sync\";\n  port = 5432;\n  socketdir = \"/run/postgresql\";\n};\n

or enable the default postgresql service with services.cardano-db-sync.postgres.enable and possibly overwrite the services.postgresql options for your need. .

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/db-sync.nix

"},{"location":"reference/module-options/cardano.db-sync/#cardanodb-syncpostgresenable","title":"cardano.db-sync.postgres.enable","text":"

Whether to enable Run postgres and connect dbsync to it\u2026

Type: boolean

Default: true

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/db-sync.nix

"},{"location":"reference/module-options/cardano.http/","title":"cardano.http","text":""},{"location":"reference/module-options/cardano.http/#cardanohttpenable","title":"cardano.http.enable","text":"

Whether to enable HTTP SSL proxy and load balancer for cardano services

This option has the following effects:

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/http.nix

"},{"location":"reference/module-options/cardano.kupo/","title":"cardano.kupo","text":""},{"location":"reference/module-options/cardano.kupo/#cardanokupoenable","title":"cardano.kupo.enable","text":"

Whether to enable Kupo chain-indexer.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/kupo.nix

"},{"location":"reference/module-options/cardano/","title":"cardano","text":""},{"location":"reference/module-options/cardano/#cardanonetwork","title":"cardano.network","text":"

Cardano network to operate on.

Type: one of \u201cmainnet\u201d, \u201cpreprod\u201d, \u201cpreview\u201d, \u201cprivate\u201d, \u201csanchonet\u201d

Default: \"mainnet\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/cardano.nix

"},{"location":"reference/module-options/cardano.monitoring/","title":"cardano.monitoring","text":""},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringenable","title":"cardano.monitoring.enable","text":"

Whether to enable monitoring services Prometheus and Grafana .

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringexportersenable","title":"cardano.monitoring.exporters.enable","text":"

Enable Prometheus exporters for running services.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringexportersopenfirewall","title":"cardano.monitoring.exporters.openFirewall","text":"

Open firewall ports for prometheus exporters.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringexportersports","title":"cardano.monitoring.exporters.ports","text":"

List of ports where prometheus exporters are exposed. This can be used to open ports in the firewall.

Type: list of 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:

[\n  12798\n  9186\n  3000\n  8080\n  1337\n  9100\n  9113\n  9187\n]\n

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.monitoring/#cardanomonitoringtargets","title":"cardano.monitoring.targets","text":"

List of hosts to to scrape prometheus metrics from.

Type: list of Concatenated string

Default:

[\n  \"localhost\"\n]\n

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/monitoring.nix

"},{"location":"reference/module-options/cardano.node/","title":"cardano.node","text":""},{"location":"reference/module-options/cardano.node/#cardanonodeenable","title":"cardano.node.enable","text":"

Whether to enable cardano-node service.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodeconfigpath","title":"cardano.node.configPath","text":"

Path to cardano-node configuration.

Type: path

Default: \"/etc/cardano-node/config.json\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodeprometheusexporterenable","title":"cardano.node.prometheusExporter.enable","text":"

Whether to enable prometheus exporter.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodeprometheusexporterport","title":"cardano.node.prometheusExporter.port","text":"

Port where Prometheus exporter is exposed.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 12798

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.node/#cardanonodesocketpath","title":"cardano.node.socketPath","text":"

Path to cardano-node socket.

Type: path

Default: \"/run/cardano-node/node.socket\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/node.nix

"},{"location":"reference/module-options/cardano.ogmios/","title":"cardano.ogmios","text":""},{"location":"reference/module-options/cardano.ogmios/#cardanoogmiosenable","title":"cardano.ogmios.enable","text":"

Whether to enable Ogmios bridge interface for cardano-node.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/ogmios.nix

"},{"location":"reference/module-options/cardano.oura/","title":"cardano.oura","text":""},{"location":"reference/module-options/cardano.oura/#cardanoouraenable","title":"cardano.oura.enable","text":"

Whether to enable Oura event processing pipeline for Cardano.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/cardano.oura/#cardanoouraintegrate","title":"cardano.oura.integrate","text":"

Whether to enable connect oura to local cardano-node via N2C.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/cardano.oura/#cardanoouraprometheusexporterenable","title":"cardano.oura.prometheusExporter.enable","text":"

Whether to enable prometheus exporter.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/cardano.oura/#cardanoouraprometheusexporterport","title":"cardano.oura.prometheusExporter.port","text":"

Port where Prometheus exporter is exposed.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 9186

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/oura.nix

"},{"location":"reference/module-options/services.blockfrost/","title":"services.blockfrost","text":""},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostenable","title":"services.blockfrost.enable","text":"

Whether to enable Blockfrost.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostpackage","title":"services.blockfrost.package","text":"

Type: package

Default: <derivation blockfrost-backend-ryo>

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostgroup","title":"services.blockfrost.group","text":"

Group to run blockfrost service as

Type: string

Default: \"blockfrost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettings","title":"services.blockfrost.settings","text":"

Freeform attrset that generates the JSON configuration file used by Blockfrost.

Type: JSON value

Default: { }

Example:

''\n  {\n    user = config.services.cardano-db-sync.postgres.user;\n    port = config.services.cardano-db-sync.postgres.port;\n    database = config.services.cardano-db-sync.postgres.database;\n    host = config.services.cardano-db-sync.postgres.socketdir;\n  }\n''\n

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncdatabase","title":"services.blockfrost.settings.dbSync.database","text":"

Type: string

Default: \"cdbsync\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsynchost","title":"services.blockfrost.settings.dbSync.host","text":"

Type: string

Default: \"localhost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncmaxconnections","title":"services.blockfrost.settings.dbSync.maxConnections","text":"

Type: signed integer

Default: 10

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncport","title":"services.blockfrost.settings.dbSync.port","text":"

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 5432

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsdbsyncuser","title":"services.blockfrost.settings.dbSync.user","text":"

Type: string

Default: \"cexplorer\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsnetwork","title":"services.blockfrost.settings.network","text":"

Type: one of \u201cmainnet\u201d, \u201cpreprod\u201d, \u201cpreview\u201d, \u201ctestnet\u201d, \u201csanchonet\u201d

Default: \"mainnet\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverdebug","title":"services.blockfrost.settings.server.debug","text":"

Type: boolean

Default: false

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverlistenaddress","title":"services.blockfrost.settings.server.listenAddress","text":"

Type: string

Default: \"localhost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverport","title":"services.blockfrost.settings.server.port","text":"

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 3000

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingsserverprometheusmetrics","title":"services.blockfrost.settings.server.prometheusMetrics","text":"

Type: boolean

Default: false

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostsettingstokenregistryurl","title":"services.blockfrost.settings.tokenRegistryUrl","text":"

Type: string

Default: \"https://tokens.cardano.org\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfroststatedir","title":"services.blockfrost.stateDir","text":"

Type: path

Default: \"/var/lib/blockfrost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.blockfrost/#servicesblockfrostuser","title":"services.blockfrost.user","text":"

User to run blockfrost service as

Type: string

Default: \"blockfrost\"

Declared by: - https://github.com/blockfrost/blockfrost-backend-ryo/tree/master/nixos-module.nix

"},{"location":"reference/module-options/services.cardano-db-sync/","title":"services.cardano-db-sync","text":""},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncenable","title":"services.cardano-db-sync.enable","text":"

Whether to enable enable the cardano-db-sync service.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpackage","title":"services.cardano-db-sync.package","text":"

Type: package

Default: <derivation cardano-db-sync-exe-cardano-db-sync-13.6.0.1>

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-synccluster","title":"services.cardano-db-sync.cluster","text":"

cluster name

Type: null or string

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncdbsyncpkgs","title":"services.cardano-db-sync.dbSyncPkgs","text":"

The cardano-db-sync packages and library that should be used. Main usage is sharing optimization: reduce eval time when service is instantiated multiple times.

Type: attribute set

Default: \"cardano-db-sync pkgs\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncdisableledger","title":"services.cardano-db-sync.disableLedger","text":"

Disables the leger state. Drastically reduces memory usage and it syncs faster, but some data are missing.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncenvironment","title":"services.cardano-db-sync.environment","text":"

Type: null or (attribute set)

Default:

This value is long. Click to expand.
{\n  confKey = \"mainnet_full\";\n  consensusProtocol = \"Cardano\";\n  dbSyncConfig = {\n    EnableFutureGenesis = true;\n    EnableLogMetrics = false;\n    EnableLogging = true;\n    NetworkName = \"mainnet\";\n    NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n    PrometheusPort = 8080;\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    minSeverity = \"Info\";\n    options = {\n      cfokey = {\n        value = \"Release-1.0.0\";\n      };\n      mapBackends = { };\n      mapSeverity = {\n        db-sync-node = \"Info\";\n        \"db-sync-node.Mux\" = \"Error\";\n        \"db-sync-node.Subscription\" = \"Error\";\n      };\n      mapSubtrace = {\n        \"#ekgview\" = {\n          contents = [\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \".monoclock.basic.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.cpuNs.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                tag = \"StartsWith\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.gcNum.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n          ];\n          subtrace = \"FilterTrace\";\n        };\n        \"#messagecounters.aggregation\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.ekgview\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.katip\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.monitoring\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.switchboard\" = {\n          subtrace = \"NoTrace\";\n        };\n        benchmark = {\n          contents = [\n            \"GhcRtsStats\"\n            \"MonotonicClock\"\n          ];\n          subtrace = \"ObservableTrace\";\n        };\n        \"cardano.epoch-validation.utxo-stats\" = {\n          subtrace = \"NoTrace\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"AggregationBK\"\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  domain = \"cardano-mainnet.iohk.io\";\n  edgeNodes = [\n    {\n      addr = \"backbone.cardano.iog.io\";\n      port = 3001;\n    }\n    {\n      addr = \"backbone.mainnet.cardanofoundation.org\";\n      port = 3001;\n    }\n    {\n      addr = \"backbone.mainnet.emurgornd.com\";\n      port = 3001;\n    }\n  ];\n  edgePort = 3001;\n  explorerConfig = {\n    NetworkName = \"mainnet\";\n    NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n  };\n  explorerUrl = \"https://explorer.cardano.org\";\n  extraDbSyncConfig = {\n    enableFutureGenesis = true;\n  };\n  metadataUrl = \"https://tokens.cardano.org\";\n  mithrilAggregatorEndpointUrl = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n  mithrilEraReaderParams = {\n    address = \"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\";\n    verification_key = \"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\";\n  };\n  mithrilGenesisVerificationKey = \"5b3139312c36362c3134302c3138352c3133382c31312c3233372c3230372c3235302c3134342c32372c322c3138382c33302c31322c38312c3135352c3230342c31302c3137392c37352c32332c3133382c3139362c3231372c352c31342c32302c35372c37392c33392c3137365d\";\n  mithrilSignerConfig = {\n    aggregator_endpoint = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n    era_reader_adapter_params = \"{\\\"address\\\":\\\"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\\\",\\\"verification_key\\\":\\\"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\\\"}\";\n    era_reader_adapter_type = \"cardano-chain\";\n    network = \"mainnet\";\n    network_magic = 764824073;\n    run_interval = 60000;\n    store_retention_limit = 5;\n  };\n  name = \"mainnet\";\n  networkConfig = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = true;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 150;\n    TargetNumberOfRootPeers = 60;\n    TraceMempool = false;\n  };\n  networkConfigBp = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = false;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 100;\n    TargetNumberOfRootPeers = 100;\n    TraceMempool = false;\n  };\n  nodeConfig = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = true;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 150;\n    TargetNumberOfRootPeers = 60;\n    TraceAcceptPolicy = true;\n    TraceBlockFetchClient = false;\n    TraceBlockFetchDecisions = false;\n    TraceBlockFetchProtocol = false;\n    TraceBlockFetchProtocolSerialised = false;\n    TraceBlockFetchServer = false;\n    TraceChainDb = true;\n    TraceChainSyncBlockServer = false;\n    TraceChainSyncClient = false;\n    TraceChainSyncHeaderServer = false;\n    TraceChainSyncProtocol = false;\n    TraceConnectionManager = true;\n    TraceDNSResolver = true;\n    TraceDNSSubscription = true;\n    TraceDiffusionInitialization = true;\n    TraceErrorPolicy = true;\n    TraceForge = true;\n    TraceHandshake = true;\n    TraceInboundGovernor = true;\n    TraceIpSubscription = true;\n    TraceLedgerPeers = true;\n    TraceLocalChainSyncProtocol = false;\n    TraceLocalConnectionManager = true;\n    TraceLocalErrorPolicy = true;\n    TraceLocalHandshake = true;\n    TraceLocalRootPeers = true;\n    TraceLocalTxSubmissionProtocol = false;\n    TraceLocalTxSubmissionServer = false;\n    TraceMempool = false;\n    TraceMux = false;\n    TracePeerSelection = true;\n    TracePeerSelectionActions = true;\n    TracePublicRootPeers = true;\n    TraceServer = true;\n    TraceTxInbound = false;\n    TraceTxOutbound = false;\n    TraceTxSubmissionProtocol = false;\n    TracingVerbosity = \"NormalVerbosity\";\n    TurnOnLogMetrics = true;\n    TurnOnLogging = true;\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    hasEKG = 12788;\n    hasPrometheus = [\n      \"127.0.0.1\"\n      12798\n    ];\n    minSeverity = \"Info\";\n    options = {\n      mapBackends = {\n        \"cardano.node.metrics\" = [\n          \"EKGViewBK\"\n        ];\n        \"cardano.node.resources\" = [\n          \"EKGViewBK\"\n        ];\n      };\n      mapSubtrace = {\n        \"cardano.node.metrics\" = {\n          subtrace = \"Neutral\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  nodeConfigBp = {\n    AlonzoGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/alonzo-genesis.json;\n    AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n    ByronGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/byron-genesis.json;\n    ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    ConwayGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/conway-genesis.json;\n    ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n    EnableP2P = true;\n    LastKnownBlockVersion-Alt = 0;\n    LastKnownBlockVersion-Major = 3;\n    LastKnownBlockVersion-Minor = 0;\n    MaxKnownMajorProtocolVersion = 2;\n    MinNodeVersion = \"8.12.0\";\n    PeerSharing = false;\n    Protocol = \"Cardano\";\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    ShelleyGenesisFile = /nix/store/nbcfi227xls2zyic9gcrspnlwlgr5dln-source/cardano-lib/mainnet/shelley-genesis.json;\n    ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n    TargetNumberOfActivePeers = 20;\n    TargetNumberOfEstablishedPeers = 50;\n    TargetNumberOfKnownPeers = 100;\n    TargetNumberOfRootPeers = 100;\n    TraceAcceptPolicy = true;\n    TraceBlockFetchClient = false;\n    TraceBlockFetchDecisions = false;\n    TraceBlockFetchProtocol = false;\n    TraceBlockFetchProtocolSerialised = false;\n    TraceBlockFetchServer = false;\n    TraceChainDb = true;\n    TraceChainSyncBlockServer = false;\n    TraceChainSyncClient = false;\n    TraceChainSyncHeaderServer = false;\n    TraceChainSyncProtocol = false;\n    TraceConnectionManager = true;\n    TraceDNSResolver = true;\n    TraceDNSSubscription = true;\n    TraceDiffusionInitialization = true;\n    TraceErrorPolicy = true;\n    TraceForge = true;\n    TraceHandshake = true;\n    TraceInboundGovernor = true;\n    TraceIpSubscription = true;\n    TraceLedgerPeers = true;\n    TraceLocalChainSyncProtocol = false;\n    TraceLocalConnectionManager = true;\n    TraceLocalErrorPolicy = true;\n    TraceLocalHandshake = true;\n    TraceLocalRootPeers = true;\n    TraceLocalTxSubmissionProtocol = false;\n    TraceLocalTxSubmissionServer = false;\n    TraceMempool = false;\n    TraceMux = false;\n    TracePeerSelection = true;\n    TracePeerSelectionActions = true;\n    TracePublicRootPeers = true;\n    TraceServer = true;\n    TraceTxInbound = false;\n    TraceTxOutbound = false;\n    TraceTxSubmissionProtocol = false;\n    TracingVerbosity = \"NormalVerbosity\";\n    TurnOnLogMetrics = true;\n    TurnOnLogging = true;\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    hasEKG = 12788;\n    hasPrometheus = [\n      \"127.0.0.1\"\n      12798\n    ];\n    minSeverity = \"Info\";\n    options = {\n      mapBackends = {\n        \"cardano.node.metrics\" = [\n          \"EKGViewBK\"\n        ];\n        \"cardano.node.resources\" = [\n          \"EKGViewBK\"\n        ];\n      };\n      mapSubtrace = {\n        \"cardano.node.metrics\" = {\n          subtrace = \"Neutral\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  private = false;\n  relaysNew = \"backbone.cardano.iog.io\";\n  smashUrl = \"https://smash.cardano-mainnet.iohk.io\";\n  submitApiConfig = {\n    EnableLogMetrics = false;\n    EnableLogging = true;\n    GenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n    PrometheusPort = 8080;\n    RequiresNetworkMagic = \"RequiresNoMagic\";\n    defaultBackends = [\n      \"KatipBK\"\n    ];\n    defaultScribes = [\n      [\n        \"StdoutSK\"\n        \"stdout\"\n      ]\n    ];\n    minSeverity = \"Info\";\n    options = {\n      cfokey = {\n        value = \"Release-1.0.0\";\n      };\n      mapBackends = { };\n      mapSeverity = {\n        db-sync-node = \"Info\";\n        \"db-sync-node.Mux\" = \"Error\";\n        \"db-sync-node.Subscription\" = \"Error\";\n      };\n      mapSubtrace = {\n        \"#ekgview\" = {\n          contents = [\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \".monoclock.basic.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"cardano.epoch-validation.benchmark\";\n                tag = \"Contains\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.cpuNs.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n            [\n              {\n                contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                tag = \"StartsWith\";\n              }\n              [\n                {\n                  contents = \"diff.RTS.gcNum.timed.\";\n                  tag = \"Contains\";\n                }\n              ]\n            ]\n          ];\n          subtrace = \"FilterTrace\";\n        };\n        \"#messagecounters.aggregation\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.ekgview\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.katip\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.monitoring\" = {\n          subtrace = \"NoTrace\";\n        };\n        \"#messagecounters.switchboard\" = {\n          subtrace = \"NoTrace\";\n        };\n        benchmark = {\n          contents = [\n            \"GhcRtsStats\"\n            \"MonotonicClock\"\n          ];\n          subtrace = \"ObservableTrace\";\n        };\n        \"cardano.epoch-validation.utxo-stats\" = {\n          subtrace = \"NoTrace\";\n        };\n      };\n    };\n    rotation = {\n      rpKeepFilesNum = 10;\n      rpLogLimitBytes = 5000000;\n      rpMaxAgeHours = 24;\n    };\n    setupBackends = [\n      \"AggregationBK\"\n      \"KatipBK\"\n    ];\n    setupScribes = [\n      {\n        scFormat = \"ScText\";\n        scKind = \"StdoutSK\";\n        scName = \"stdout\";\n        scRotation = null;\n      }\n    ];\n  };\n  useByronWallet = true;\n  usePeersFromLedgerAfterSlot = 128908821;\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncexplorerconfig","title":"services.cardano-db-sync.explorerConfig","text":"

Type: attribute set

Default:

This value is long. Click to expand.
{\n  EnableFutureGenesis = true;\n  EnableLogMetrics = false;\n  EnableLogging = true;\n  NetworkName = \"mainnet\";\n  NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n  PrometheusPort = 8080;\n  RequiresNetworkMagic = \"RequiresNoMagic\";\n  defaultBackends = [\n    \"KatipBK\"\n  ];\n  defaultScribes = [\n    [\n      \"StdoutSK\"\n      \"stdout\"\n    ]\n  ];\n  minSeverity = \"Info\";\n  options = {\n    cfokey = {\n      value = \"Release-1.0.0\";\n    };\n    mapBackends = { };\n    mapSeverity = {\n      db-sync-node = \"Info\";\n      \"db-sync-node.Mux\" = \"Error\";\n      \"db-sync-node.Subscription\" = \"Error\";\n    };\n    mapSubtrace = {\n      \"#ekgview\" = {\n        contents = [\n          [\n            {\n              contents = \"cardano.epoch-validation.benchmark\";\n              tag = \"Contains\";\n            }\n            [\n              {\n                contents = \".monoclock.basic.\";\n                tag = \"Contains\";\n              }\n            ]\n          ]\n          [\n            {\n              contents = \"cardano.epoch-validation.benchmark\";\n              tag = \"Contains\";\n            }\n            [\n              {\n                contents = \"diff.RTS.cpuNs.timed.\";\n                tag = \"Contains\";\n              }\n            ]\n          ]\n          [\n            {\n              contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n              tag = \"StartsWith\";\n            }\n            [\n              {\n                contents = \"diff.RTS.gcNum.timed.\";\n                tag = \"Contains\";\n              }\n            ]\n          ]\n        ];\n        subtrace = \"FilterTrace\";\n      };\n      \"#messagecounters.aggregation\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.ekgview\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.katip\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.monitoring\" = {\n        subtrace = \"NoTrace\";\n      };\n      \"#messagecounters.switchboard\" = {\n        subtrace = \"NoTrace\";\n      };\n      benchmark = {\n        contents = [\n          \"GhcRtsStats\"\n          \"MonotonicClock\"\n        ];\n        subtrace = \"ObservableTrace\";\n      };\n      \"cardano.epoch-validation.utxo-stats\" = {\n        subtrace = \"NoTrace\";\n      };\n    };\n  };\n  rotation = {\n    rpKeepFilesNum = 10;\n    rpLogLimitBytes = 5000000;\n    rpMaxAgeHours = 24;\n  };\n  setupBackends = [\n    \"AggregationBK\"\n    \"KatipBK\"\n  ];\n  setupScribes = [\n    {\n      scFormat = \"ScText\";\n      scKind = \"StdoutSK\";\n      scName = \"stdout\";\n      scRotation = null;\n    }\n  ];\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-synclogconfig","title":"services.cardano-db-sync.logConfig","text":"

Type: attribute set

Default: { }

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresdatabase","title":"services.cardano-db-sync.postgres.database","text":"

the postgresql database to use

Type: string

Default: \"cdbsync\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresgeneratepgpass","title":"services.cardano-db-sync.postgres.generatePGPASS","text":"

generate pgpass

Type: boolean

Default: true

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresport","title":"services.cardano-db-sync.postgres.port","text":"

the postgresql port

Type: signed integer

Default: 5432

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgressocketdir","title":"services.cardano-db-sync.postgres.socketdir","text":"

the path to the postgresql socket

Type: string

Default: \"/run/postgresql\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncpostgresuser","title":"services.cardano-db-sync.postgres.user","text":"

the postgresql user to use

Type: string

Default: \"cexplorer\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncprofiling","title":"services.cardano-db-sync.profiling","text":"

Enable GHC profiling.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrestoresnapshot","title":"services.cardano-db-sync.restoreSnapshot","text":"

Restore a snapshot before starting cardano-db-sync, if the snasphot file given by the option exist. Snapshot file is deleted after restore.

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrestoresnapshotsha","title":"services.cardano-db-sync.restoreSnapshotSha","text":"

SHA256 checksum of the snapshot to restore

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrestoresnapshotsigkey","title":"services.cardano-db-sync.restoreSnapshotSigKey","text":"

Key ID for verifying the snaspshot signature. (Signature check disabled if null)

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncrtsargs","title":"services.cardano-db-sync.rtsArgs","text":"

Extra CLI args, to be surrounded by \u201c+RTS\u201d/\u201c-RTS\u201d

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncsocketpath","title":"services.cardano-db-sync.socketPath","text":"

Type: null or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-syncstatedir","title":"services.cardano-db-sync.stateDir","text":"

Type: null or string

Default: \"/var/lib/cexplorer\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-db-sync/#servicescardano-db-synctakesnapshot","title":"services.cardano-db-sync.takeSnapshot","text":"

Take snapshot before starting cardano-db-sync, \u201conce\u201d (skip if there is one already), \u201calways\u201d (removing previous snapshot), or \u201cnever\u201d.

Type: one of \u201cnever\u201d, \u201conce\u201d, \u201calways\u201d

Default: \"never\"

Declared by: - https://github.com/IntersectMBO/cardano-db-sync/tree/master/nix/nixos/cardano-db-sync-service.nix

"},{"location":"reference/module-options/services.cardano-node/","title":"services.cardano-node","text":""},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeenable","title":"services.cardano-node.enable","text":"

Enable cardano-node, a node implementing ouroboros protocols (the blockchain protocols running cardano).

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodepackage","title":"services.cardano-node.package","text":"

The cardano-node package that should be used

Type: package

Default: \"cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeadditionallistenstream","title":"services.cardano-node.additionalListenStream","text":"

List of additional sockets to listen to. Only available with systemdSocketActivation.

Type: function that evaluates to a(n) list of string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeasserts","title":"services.cardano-node.asserts","text":"

Whether to use an executable with asserts enabled.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodebootstrappeers","title":"services.cardano-node.bootstrapPeers","text":"

If set, it will enable bootstrap peers. To disable, set this to null. To enable, set this to a list of attributes of address and port, example: [{ address = \u201caddr\u201d; port = 3001; }]

Type: null or (list of (attribute set))

Default:

[\n  {\n    address = \"backbone.cardano.iog.io\";\n    port = 3001;\n  }\n  {\n    address = \"backbone.mainnet.cardanofoundation.org\";\n    port = 3001;\n  }\n  {\n    address = \"backbone.mainnet.emurgornd.com\";\n    port = 3001;\n  }\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodecardanonodepackages","title":"services.cardano-node.cardanoNodePackages","text":"

The cardano-node packages and library that should be used. Main usage is sharing optimization: reduce eval time when service is instantiated multiple times.

Type: attribute set

Default: \"cardano-node packages\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodedatabasepath","title":"services.cardano-node.databasePath","text":"

Node database path, for each instance.

Type: string or function that evaluates to a(n) string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodedbprefix","title":"services.cardano-node.dbPrefix","text":"

Prefix of database directories inside stateDir. (eg. for \u201cdb\u201d, there will be db-0, etc.).

Type: string or function that evaluates to a(n) string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodedelegationcertificate","title":"services.cardano-node.delegationCertificate","text":"

Delegation certificate

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeenvironment","title":"services.cardano-node.environment","text":"

environment node will connect to

Type: one of \u201cmainnet\u201d, \u201cpreprod\u201d, \u201cpreview\u201d, \u201cprivate\u201d, \u201csanchonet\u201d, \u201cshelley_qa\u201d, \u201ctestnet\u201d

Default: \"testnet\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeenvironments","title":"services.cardano-node.environments","text":"

environment node will connect to

Type: attribute set

Default:

This value is long. Click to expand.
{\n  mainnet = {\n    confKey = \"mainnet_full\";\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"mainnet\";\n      NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"cardano-mainnet.iohk.io\";\n    edgeNodes = [\n      {\n        addr = \"backbone.cardano.iog.io\";\n        port = 3001;\n      }\n      {\n        addr = \"backbone.mainnet.cardanofoundation.org\";\n        port = 3001;\n      }\n      {\n        addr = \"backbone.mainnet.emurgornd.com\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"mainnet\";\n      NodeConfigFile = \"/nix/store/kcl7gc0q0w70c51lnfh1cdk70niylshd-config-mainnet.json\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n    };\n    explorerUrl = \"https://explorer.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://tokens.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\";\n      verification_key = \"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3139312c36362c3134302c3138352c3133382c31312c3233372c3230372c3235302c3134342c32372c322c3138382c33302c31322c38312c3135352c3230342c31302c3137392c37352c32332c3133382c3139362c3231372c352c31342c32302c35372c37392c33392c3137365d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.release-mainnet.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr1qy72kwgm6kypyc5maw0h8mfagwag8wjnx6emgfnsnhqaml6gx7gg4tzplw9l32nsgclqax7stc4u6c5dn0ctljwscm2sqv0teg\\\",\\\"verification_key\\\":\\\"5b31312c3133342c3231352c37362c3134312c3232302c3131312c3135342c36332c3233302c3131342c31322c38372c37342c39342c3137322c3133322c32372c39362c3138362c3132362c3137382c31392c3131342c33302c3234332c36342c3134312c3131302c38332c38362c31395d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"mainnet\";\n      network_magic = 764824073;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"mainnet\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TraceMempool = false;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TraceMempool = false;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = false;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n      ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n      ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = false;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"backbone.cardano.iog.io\";\n    smashUrl = \"https://smash.cardano-mainnet.iohk.io\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresNoMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = true;\n    usePeersFromLedgerAfterSlot = 128908821;\n  };\n  preprod = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"preprod\";\n      NodeConfigFile = \"/nix/store/xlnij79vm8cf9a4ak59q6p80lfcmrzy2-config-preprod.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"preprod-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"preprod\";\n      NodeConfigFile = \"/nix/store/xlnij79vm8cf9a4ak59q6p80lfcmrzy2-config-preprod.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://preprod-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.release-preprod.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr_test1qpkyv2ws0deszm67t840sdnruqgr492n80g3y96xw3p2ksk6suj5musy6w8lsg3yjd09cnpgctc2qh386rtxphxt248qr0npnx\";\n      verification_key = \"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3132372c37332c3132342c3136312c362c3133372c3133312c3231332c3230372c3131372c3139382c38352c3137362c3139392c3136322c3234312c36382c3132332c3131392c3134352c31332c3233322c3234332c34392c3232392c322c3234392c3230352c3230352c33392c3233352c34345d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.release-preprod.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr_test1qpkyv2ws0deszm67t840sdnruqgr492n80g3y96xw3p2ksk6suj5musy6w8lsg3yjd09cnpgctc2qh386rtxphxt248qr0npnx\\\",\\\"verification_key\\\":\\\"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"preprod\";\n      network_magic = 1;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"preprod\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/byron-genesis.json;\n      ByronGenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/conway-genesis.json;\n      ConwayGenesisHash = \"0eb6adaec3fcb1fe286c1b4ae0da2a117eafc3add51e17577d36dd39eddfc3db\";\n      EnableP2P = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 2;\n      LastKnownBlockVersion-Minor = 0;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preprod/shelley-genesis.json;\n      ShelleyGenesisHash = \"162d29c4e1cf6b8a84f2d692e67a3ac6bc7851bc3e6e4afe64d15778bed8bd86\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"preprod-node.play.dev.cardano.org\";\n    smashUrl = \"https://preprod-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"d4b8de7a11d929a323373cbab6c1a9bdc931beffff11db111cf9d57356ee1937\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 64454371;\n  };\n  preview = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"preview\";\n      NodeConfigFile = \"/nix/store/mk35kwvnmi91g2qx2f8xi63glsmx6pg2-config-preview.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"preview-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"preview\";\n      NodeConfigFile = \"/nix/store/mk35kwvnmi91g2qx2f8xi63glsmx6pg2-config-preview.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://preview-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.pre-release-preview.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr_test1qrv5xfwh043mlc3vk5d97s4nmhxu7cmleyssvhx37gkfyejfe8d38v3vsfgetjafgrsdc49krug8wf04h5rmtengtejqlxrksk\";\n      verification_key = \"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3132372c37332c3132342c3136312c362c3133372c3133312c3231332c3230372c3131372c3139382c38352c3137362c3139392c3136322c3234312c36382c3132332c3131392c3134352c31332c3233322c3234332c34392c3232392c322c3234392c3230352c3230352c33392c3233352c34345d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.pre-release-preview.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr_test1qrv5xfwh043mlc3vk5d97s4nmhxu7cmleyssvhx37gkfyejfe8d38v3vsfgetjafgrsdc49krug8wf04h5rmtengtejqlxrksk\\\",\\\"verification_key\\\":\\\"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"preview\";\n      network_magic = 2;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"preview\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/byron-genesis.json;\n      ByronGenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/conway-genesis.json;\n      ConwayGenesisHash = \"9cc5084f02e27210eacba47af0872e3dba8946ad9460b6072d793e1d2f3987ef\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = false;\n      ExperimentalProtocolsEnabled = false;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/preview/shelley-genesis.json;\n      ShelleyGenesisHash = \"363498d1024f84bb39d3fa9593ce391483cb40d479b87233f868d6e57c3a400d\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"preview-node.play.dev.cardano.org\";\n    smashUrl = \"https://preview-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"83de1d7302569ad56cf9139a41e2e11346d4cb4a31c00142557b6ab3fa550761\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 53827185;\n  };\n  private = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"private\";\n      NodeConfigFile = \"/nix/store/xbkg7xhgp6rwynqfc6mi7pfggq747gxj-config-private.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"private-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"private\";\n      NodeConfigFile = \"/nix/store/xbkg7xhgp6rwynqfc6mi7pfggq747gxj-config-private.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://private-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilSignerConfig = {\n      network = \"private\";\n      network_magic = 5;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"private\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/byron-genesis.json;\n      ByronGenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/conway-genesis.json;\n      ConwayGenesisHash = \"75ff70079cca9f3fd2109d89d5770e96f6f79827dba7b410a69ee90066b78c5f\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/private/shelley-genesis.json;\n      ShelleyGenesisHash = \"ae9da178ddecfbde046d2c59d4afd087bafd6e2ff04532e6077eab7f8098fa03\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = true;\n    relaysNew = \"private-node.play.dev.cardano.org\";\n    smashUrl = \"https://private-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"200222f56d3582c58af09ba58d53e294fcca5de2fc6a27913803e427cdf147f3\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 1886369;\n  };\n  sanchonet = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = true;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"sanchonet\";\n      NodeConfigFile = \"/nix/store/safwck7da2213agm8j7aivs9ljb91k8l-config-sanchonet.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"sanchonet-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"sanchonet\";\n      NodeConfigFile = \"/nix/store/safwck7da2213agm8j7aivs9ljb91k8l-config-sanchonet.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://sanchonet-explorer.play.dev.cardano.org\";\n    extraDbSyncConfig = {\n      enableFutureGenesis = true;\n    };\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilAggregatorEndpointUrl = \"https://aggregator.testing-sanchonet.api.mithril.network/aggregator\";\n    mithrilEraReaderParams = {\n      address = \"addr_test1qrg9v8xjjjjx95k2h2gquwrah8424798wqa5exuyhqpcggfyse0nuafkp7rnkxsssxue37259lfhemjdhs333u7v0gwsd0dr30\";\n      verification_key = \"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\";\n    };\n    mithrilGenesisVerificationKey = \"5b3132372c37332c3132342c3136312c362c3133372c3133312c3231332c3230372c3131372c3139382c38352c3137362c3139392c3136322c3234312c36382c3132332c3131392c3134352c31332c3233322c3234332c34392c3232392c322c3234392c3230352c3230352c33392c3233352c34345d\";\n    mithrilSignerConfig = {\n      aggregator_endpoint = \"https://aggregator.testing-sanchonet.api.mithril.network/aggregator\";\n      era_reader_adapter_params = \"{\\\"address\\\":\\\"addr_test1qrg9v8xjjjjx95k2h2gquwrah8424798wqa5exuyhqpcggfyse0nuafkp7rnkxsssxue37259lfhemjdhs333u7v0gwsd0dr30\\\",\\\"verification_key\\\":\\\"5b35352c3232382c3134342c38372c3133382c3133362c34382c382c31342c3138372c38352c3134382c39372c3233322c3235352c3232392c33382c3234342c3234372c3230342c3139382c31332c33312c3232322c32352c3136342c35322c3130322c39312c3132302c3230382c3134375d\\\"}\";\n      era_reader_adapter_type = \"cardano-chain\";\n      network = \"sanchonet\";\n      network_magic = 4;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"sanchonet\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/byron-genesis.json;\n      ByronGenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/conway-genesis.json;\n      ConwayGenesisHash = \"e85ee5b7af8ca5c273c20746c9f994aef1a72a79c38b4eea230817e7e66c0741\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/sanchonet/shelley-genesis.json;\n      ShelleyGenesisHash = \"f94457ec45a0c6773057a529533cf7ccf746cb44dabd56ae970e1dbfb55bfdb2\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = false;\n    relaysNew = \"sanchonet-node.play.dev.cardano.org\";\n    smashUrl = \"https://sanchonet-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"785eb88427e136378a15b0a152a8bfbeec7a611529ccda29c43a1e60ffb48eaa\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 33695977;\n  };\n  shelley_qa = {\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = false;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"shelley_qa\";\n      NodeConfigFile = \"/nix/store/4sgw9dw44g1zfd2biv5bw4h4c79gs9n2-config-shelley_qa.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    domain = \"play.dev.cardano.org\";\n    edgeNodes = [\n      {\n        addr = \"shelley-qa-node.play.dev.cardano.org\";\n        port = 3001;\n      }\n    ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"shelley_qa\";\n      NodeConfigFile = \"/nix/store/4sgw9dw44g1zfd2biv5bw4h4c79gs9n2-config-shelley_qa.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://shelley-qa-explorer.play.dev.cardano.org\";\n    metadataUrl = \"https://metadata.play.dev.cardano.org\";\n    mithrilSignerConfig = {\n      network = \"shelley_qa\";\n      network_magic = 3;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    name = \"shelley_qa\";\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      minSeverity = \"Debug\";\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      minSeverity = \"Debug\";\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = true;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 150;\n      TargetNumberOfRootPeers = 60;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Debug\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/alonzo-genesis.json;\n      AlonzoGenesisHash = \"8bedcaea62107d8a79ed5293b0027b3f8706a4bc2422f33380cb1fd01c6fa6ec\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/byron-genesis.json;\n      ByronGenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/conway-genesis.json;\n      ConwayGenesisHash = \"91bedad42212c07f6abdafedb7e7c8577fbd07152c695ffae1ab2a528741c6e4\";\n      EnableP2P = true;\n      ExperimentalHardForksEnabled = true;\n      ExperimentalProtocolsEnabled = true;\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 1;\n      MinNodeVersion = \"8.12.0\";\n      PeerSharing = false;\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/shelley_qa/shelley-genesis.json;\n      ShelleyGenesisHash = \"73a9f6bdb0aa97f5e63190a6f14a702bd64a21f2bec831cbfc28f6037128b952\";\n      TargetNumberOfActivePeers = 20;\n      TargetNumberOfEstablishedPeers = 50;\n      TargetNumberOfKnownPeers = 100;\n      TargetNumberOfRootPeers = 100;\n      TestAllegraHardForkAtEpoch = 0;\n      TestAlonzoHardForkAtEpoch = 0;\n      TestMaryHardForkAtEpoch = 0;\n      TestShelleyHardForkAtEpoch = 0;\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Debug\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = true;\n    relaysNew = \"shelley-qa-node.play.dev.cardano.org\";\n    smashUrl = \"https://shelley-qa-smash.play.dev.cardano.org\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"273cd12237b98d02f108c9c50063d29a8d1d7f32e9a75ade7cd48e08b3070258\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = false;\n    usePeersFromLedgerAfterSlot = 31348805;\n  };\n  testnet = {\n    confKey = \"testnet_full\";\n    consensusProtocol = \"Cardano\";\n    dbSyncConfig = {\n      EnableFutureGenesis = false;\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      NetworkName = \"testnet\";\n      NodeConfigFile = \"/nix/store/ac579847xn66vkyqgpfk3kb8czzw7mak-config-testnet.json\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    edgeNodes = [ ];\n    edgePort = 3001;\n    explorerConfig = {\n      NetworkName = \"testnet\";\n      NodeConfigFile = \"/nix/store/ac579847xn66vkyqgpfk3kb8czzw7mak-config-testnet.json\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n    };\n    explorerUrl = \"https://doesnotexist.iog.io\";\n    metadataUrl = \"https://doesnotexist.iog.io\";\n    mithrilSignerConfig = {\n      network = \"testnet\";\n      network_magic = 1097911063;\n      run_interval = 60000;\n      store_retention_limit = 5;\n    };\n    networkConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n    };\n    networkConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n    };\n    nodeConfig = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    nodeConfigBp = {\n      AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/alonzo-genesis.json;\n      AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n      ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/byron-genesis.json;\n      ByronGenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      LastKnownBlockVersion-Alt = 0;\n      LastKnownBlockVersion-Major = 3;\n      LastKnownBlockVersion-Minor = 0;\n      MaxKnownMajorProtocolVersion = 2;\n      MinNodeVersion = \"8.12.0\";\n      Protocol = \"Cardano\";\n      RequiresNetworkMagic = \"RequiresMagic\";\n      ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/testnet/shelley-genesis.json;\n      ShelleyGenesisHash = \"849a1764f152e1b09c89c0dfdbcbdd38d711d1fec2db5dfa0f87cf2737a0eaf4\";\n      TraceAcceptPolicy = true;\n      TraceBlockFetchClient = false;\n      TraceBlockFetchDecisions = false;\n      TraceBlockFetchProtocol = false;\n      TraceBlockFetchProtocolSerialised = false;\n      TraceBlockFetchServer = false;\n      TraceChainDb = true;\n      TraceChainSyncBlockServer = false;\n      TraceChainSyncClient = false;\n      TraceChainSyncHeaderServer = false;\n      TraceChainSyncProtocol = false;\n      TraceConnectionManager = true;\n      TraceDNSResolver = true;\n      TraceDNSSubscription = true;\n      TraceDiffusionInitialization = true;\n      TraceErrorPolicy = true;\n      TraceForge = true;\n      TraceHandshake = true;\n      TraceInboundGovernor = true;\n      TraceIpSubscription = true;\n      TraceLedgerPeers = true;\n      TraceLocalChainSyncProtocol = false;\n      TraceLocalConnectionManager = true;\n      TraceLocalErrorPolicy = true;\n      TraceLocalHandshake = true;\n      TraceLocalRootPeers = true;\n      TraceLocalTxSubmissionProtocol = false;\n      TraceLocalTxSubmissionServer = false;\n      TraceMempool = true;\n      TraceMux = false;\n      TracePeerSelection = true;\n      TracePeerSelectionActions = true;\n      TracePublicRootPeers = true;\n      TraceServer = true;\n      TraceTxInbound = false;\n      TraceTxOutbound = false;\n      TraceTxSubmissionProtocol = false;\n      TracingVerbosity = \"NormalVerbosity\";\n      TurnOnLogMetrics = true;\n      TurnOnLogging = true;\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      hasEKG = 12788;\n      hasPrometheus = [\n        \"127.0.0.1\"\n        12798\n      ];\n      minSeverity = \"Info\";\n      options = {\n        mapBackends = {\n          \"cardano.node.metrics\" = [\n            \"EKGViewBK\"\n          ];\n          \"cardano.node.resources\" = [\n            \"EKGViewBK\"\n          ];\n        };\n        mapSubtrace = {\n          \"cardano.node.metrics\" = {\n            subtrace = \"Neutral\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    private = true;\n    relays = \"doesnotexist.iog.io\";\n    relaysNew = \"doesnotexist.iog.io\";\n    smashUrl = \"https://doesnotexist.iog.io\";\n    submitApiConfig = {\n      EnableLogMetrics = false;\n      EnableLogging = true;\n      GenesisHash = \"96fceff972c2c06bd3bb5243c39215333be6d56aaf4823073dca31afe5038471\";\n      PrometheusPort = 8080;\n      RequiresNetworkMagic = \"RequiresMagic\";\n      defaultBackends = [\n        \"KatipBK\"\n      ];\n      defaultScribes = [\n        [\n          \"StdoutSK\"\n          \"stdout\"\n        ]\n      ];\n      minSeverity = \"Info\";\n      options = {\n        cfokey = {\n          value = \"Release-1.0.0\";\n        };\n        mapBackends = { };\n        mapSeverity = {\n          db-sync-node = \"Info\";\n          \"db-sync-node.Mux\" = \"Error\";\n          \"db-sync-node.Subscription\" = \"Error\";\n        };\n        mapSubtrace = {\n          \"#ekgview\" = {\n            contents = [\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \".monoclock.basic.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"cardano.epoch-validation.benchmark\";\n                  tag = \"Contains\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.cpuNs.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n              [\n                {\n                  contents = \"#ekgview.#aggregation.cardano.epoch-validation.benchmark\";\n                  tag = \"StartsWith\";\n                }\n                [\n                  {\n                    contents = \"diff.RTS.gcNum.timed.\";\n                    tag = \"Contains\";\n                  }\n                ]\n              ]\n            ];\n            subtrace = \"FilterTrace\";\n          };\n          \"#messagecounters.aggregation\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.ekgview\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.katip\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.monitoring\" = {\n            subtrace = \"NoTrace\";\n          };\n          \"#messagecounters.switchboard\" = {\n            subtrace = \"NoTrace\";\n          };\n          benchmark = {\n            contents = [\n              \"GhcRtsStats\"\n              \"MonotonicClock\"\n            ];\n            subtrace = \"ObservableTrace\";\n          };\n          \"cardano.epoch-validation.utxo-stats\" = {\n            subtrace = \"NoTrace\";\n          };\n        };\n      };\n      rotation = {\n        rpKeepFilesNum = 10;\n        rpLogLimitBytes = 5000000;\n        rpMaxAgeHours = 24;\n      };\n      setupBackends = [\n        \"AggregationBK\"\n        \"KatipBK\"\n      ];\n      setupScribes = [\n        {\n          scFormat = \"ScText\";\n          scKind = \"StdoutSK\";\n          scName = \"stdout\";\n          scRotation = null;\n        }\n      ];\n    };\n    useByronWallet = true;\n    usePeersFromLedgerAfterSlot = -1;\n  };\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeeventlog","title":"services.cardano-node.eventlog","text":"

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeexecutable","title":"services.cardano-node.executable","text":"

The cardano-node executable invocation to use

Type: string

Default: \"cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextraargs","title":"services.cardano-node.extraArgs","text":"

Extra CLI args for \u2018cardano-node\u2019.

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextranodeconfig","title":"services.cardano-node.extraNodeConfig","text":"

Additional node config.

Type: attribute set

Default: { }

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextranodeinstanceconfig","title":"services.cardano-node.extraNodeInstanceConfig","text":"

Additional node config for a particular instance.

Type: function that evaluates to a(n) (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextraserviceconfig","title":"services.cardano-node.extraServiceConfig","text":"

Extra systemd service config (apply to all instances).

Type: function that evaluates to a(n) (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeextrasocketconfig","title":"services.cardano-node.extraSocketConfig","text":"

Extra systemd socket config (apply to all instances).

Type: function that evaluates to a(n) (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeforcehardforks","title":"services.cardano-node.forceHardForks","text":"

A developer-oriented dictionary option to force hard forks for given eras at given epochs. Maps capitalised era names (Shelley, Allegra, Mary, etc.) to hard fork epoch number.

Type: attribute set of signed integer

Default: { }

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodehostaddr","title":"services.cardano-node.hostAddr","text":"

The host address to bind to

Type: string

Default: \"127.0.0.1\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeinstanceproducers","title":"services.cardano-node.instanceProducers","text":"

Static routes to local peers, specific to a given instance (when multiple instances are used).

Type: function that evaluates to a(n) list of (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeinstancepublicproducers","title":"services.cardano-node.instancePublicProducers","text":"

Routes to public peers. Only used if slot < usePeersFromLedgerAfterSlot and specific to a given instance (when multiple instances are used).

Type: function that evaluates to a(n) list of (attribute set)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeinstances","title":"services.cardano-node.instances","text":"

Number of instance of the service to run.

Type: signed integer

Default: 1

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeipv6hostaddr","title":"services.cardano-node.ipv6HostAddr","text":"

The ipv6 host address to bind to. Set to null to disable.

Type: null or string or function that evaluates to a(n) (null or string)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeisproducer","title":"services.cardano-node.isProducer","text":"

Whether this node is intended to be a producer. Internal option for inter-module communication.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodekeskey","title":"services.cardano-node.kesKey","text":"

Signing key

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodelmdbdatabasepath","title":"services.cardano-node.lmdbDatabasePath","text":"

Node UTxO-HD LMDB path for performant disk I/O, for each instance. This could point to a direct-access SSD, with a specifically created journal-less file system and optimized mount options.

Type: null or string or function that evaluates to a(n) (null or string)

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodenodeconfig","title":"services.cardano-node.nodeConfig","text":"

Internal representation of the config.

Type: attribute set

Default:

This value is long. Click to expand.
{\n  AlonzoGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/alonzo-genesis.json;\n  AlonzoGenesisHash = \"7e94a15f55d1e82d10f09203fa1d40f8eede58fd8066542cf6566008068ed874\";\n  ByronGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/byron-genesis.json;\n  ByronGenesisHash = \"5f20df933584822601f9e3f8c024eb5eb252fe8cefb24d1317dc3d432e940ebb\";\n  ConwayGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/conway-genesis.json;\n  ConwayGenesisHash = \"15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62\";\n  EnableP2P = true;\n  LastKnownBlockVersion-Alt = 0;\n  LastKnownBlockVersion-Major = 3;\n  LastKnownBlockVersion-Minor = 0;\n  MaxKnownMajorProtocolVersion = 2;\n  MinNodeVersion = \"8.12.0\";\n  PeerSharing = true;\n  Protocol = \"Cardano\";\n  RequiresNetworkMagic = \"RequiresNoMagic\";\n  ShelleyGenesisFile = /nix/store/irhk1lwr5d2smrgm3qr84dly5v2i2s6q-source/cardano-lib/mainnet/shelley-genesis.json;\n  ShelleyGenesisHash = \"1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81\";\n  TargetNumberOfActivePeers = 20;\n  TargetNumberOfEstablishedPeers = 50;\n  TargetNumberOfKnownPeers = 150;\n  TargetNumberOfRootPeers = 60;\n  TraceAcceptPolicy = true;\n  TraceBlockFetchClient = false;\n  TraceBlockFetchDecisions = false;\n  TraceBlockFetchProtocol = false;\n  TraceBlockFetchProtocolSerialised = false;\n  TraceBlockFetchServer = false;\n  TraceChainDb = true;\n  TraceChainSyncBlockServer = false;\n  TraceChainSyncClient = false;\n  TraceChainSyncHeaderServer = false;\n  TraceChainSyncProtocol = false;\n  TraceConnectionManager = true;\n  TraceDNSResolver = true;\n  TraceDNSSubscription = true;\n  TraceDiffusionInitialization = true;\n  TraceErrorPolicy = true;\n  TraceForge = true;\n  TraceHandshake = true;\n  TraceInboundGovernor = true;\n  TraceIpSubscription = true;\n  TraceLedgerPeers = true;\n  TraceLocalChainSyncProtocol = false;\n  TraceLocalConnectionManager = true;\n  TraceLocalErrorPolicy = true;\n  TraceLocalHandshake = true;\n  TraceLocalRootPeers = true;\n  TraceLocalTxSubmissionProtocol = false;\n  TraceLocalTxSubmissionServer = false;\n  TraceMempool = false;\n  TraceMux = false;\n  TracePeerSelection = true;\n  TracePeerSelectionActions = true;\n  TracePublicRootPeers = true;\n  TraceServer = true;\n  TraceTxInbound = false;\n  TraceTxOutbound = false;\n  TraceTxSubmissionProtocol = false;\n  TracingVerbosity = \"NormalVerbosity\";\n  TurnOnLogMetrics = true;\n  TurnOnLogging = true;\n  defaultBackends = [\n    \"KatipBK\"\n  ];\n  defaultScribes = [\n    [\n      \"StdoutSK\"\n      \"stdout\"\n    ]\n  ];\n  hasEKG = 12788;\n  hasPrometheus = [\n    \"127.0.0.1\"\n    12798\n  ];\n  minSeverity = \"Info\";\n  options = {\n    mapBackends = {\n      \"cardano.node.metrics\" = [\n        \"EKGViewBK\"\n      ];\n      \"cardano.node.resources\" = [\n        \"EKGViewBK\"\n      ];\n    };\n    mapSubtrace = {\n      \"cardano.node.metrics\" = {\n        subtrace = \"Neutral\";\n      };\n    };\n  };\n  rotation = {\n    rpKeepFilesNum = 10;\n    rpLogLimitBytes = 5000000;\n    rpMaxAgeHours = 24;\n  };\n  setupBackends = [\n    \"KatipBK\"\n  ];\n  setupScribes = [\n    {\n      scFormat = \"ScText\";\n      scKind = \"StdoutSK\";\n      scName = \"stdout\";\n      scRotation = null;\n    }\n  ];\n}\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodenodeconfigfile","title":"services.cardano-node.nodeConfigFile","text":"

Actual configuration file (shell expression).

Type: null or string

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodenodeid","title":"services.cardano-node.nodeId","text":"

The ID for this node

Type: signed integer

Default: 0

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeoperationalcertificate","title":"services.cardano-node.operationalCertificate","text":"

Operational certificate

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeport","title":"services.cardano-node.port","text":"

The port number

Type: signed integer or string

Default: 3001

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeproducers","title":"services.cardano-node.producers","text":"

Static routes to local peers.

Type: list of (attribute set)

Default: [ ]

Example:

[\n  {\n    accessPoints = [\n      {\n        address = \"127.0.0.1\";\n        port = 3001;\n      }\n    ];\n    advertise = false;\n    valency = 1;\n  }\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeprofiling","title":"services.cardano-node.profiling","text":"

Type: one of \u201cnone\u201d, \u201ctime\u201d, \u201ctime-detail\u201d, \u201cspace\u201d, \u201cspace-cost\u201d, \u201cspace-module\u201d, \u201cspace-closure\u201d, \u201cspace-type\u201d, \u201cspace-retainer\u201d, \u201cspace-bio\u201d, \u201cspace-heap\u201d

Default: \"none\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeprofilingargs","title":"services.cardano-node.profilingArgs","text":"

RTS profiling options

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodepublicproducers","title":"services.cardano-node.publicProducers","text":"

Routes to public peers. Only used if slot < usePeersFromLedgerAfterSlot

Type: list of (attribute set)

Default: [ ]

Example:

[\n  {\n    accessPoints = [\n      {\n        address = \"backbone.cardano.iog.io\";\n        port = 3001;\n      }\n    ];\n    advertise = false;\n  }\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodertsargs","title":"services.cardano-node.rtsArgs","text":"

Extra CLI args for \u2018cardano-node\u2019, to be surrounded by \u201c+RTS\u201d/\u201c-RTS\u201d

Type: list of string

Default:

[\n  \"-N2\"\n  \"-I0\"\n  \"-A16m\"\n  \"-qg\"\n  \"-qb\"\n  \"--disable-delayed-os-memory-return\"\n]\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-noderts_flags_override","title":"services.cardano-node.rts_flags_override","text":"

RTS flags override from profile content.

Type: list of string

Default: [ ]

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-noderuntimedir","title":"services.cardano-node.runtimeDir","text":"

Runtime directory relative to /run, for each instance

Type: null or string or function that evaluates to a(n) (null or string)

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodescript","title":"services.cardano-node.script","text":"

Type: string

Default:

This value is long. Click to expand.
''\n  echo \"Starting: exec /nix/store/0zd4i3gfzrmnik1x1crywplxmq221qdh-cardano-node-exe-cardano-node-10.1.2/bin/cardano-node run\"\n     echo \"--config /nix/store/kq04x2fjvnmv11fawj870fixsma9g47x-config-0-0.json\"\n     echo \"--database-path /var/lib/cardano-node/db-mainnet\"\n     echo \"--topology /nix/store/afc8vswv43sl2y36rr9139588qgf73wk-topology.yaml\"\n     echo \"--host-addr 127.0.0.1\"\n     echo \"--port 3001\"\n     echo \"--socket-path /run/cardano-node/node.socket\"\n     echo \"\"\n     echo \"\"\n     echo \"\"\n     echo \"\"\n     echo \"\"\n     echo \"+RTS\"\n     echo \"-N2\"\n     echo \"-I0\"\n     echo \"-A16m\"\n     echo \"-qg\"\n     echo \"-qb\"\n     echo \"--disable-delayed-os-memory-return\"\n     echo \"-RTS\"\n  echo \"..or, once again, in a single line:\"\n  echo \"exec /nix/store/0zd4i3gfzrmnik1x1crywplxmq221qdh-cardano-node-exe-cardano-node-10.1.2/bin/cardano-node run --config /nix/store/kq04x2fjvnmv11fawj870fixsma9g47x-config-0-0.json --database-path /var/lib/cardano-node/db-mainnet --topology /nix/store/afc8vswv43sl2y36rr9139588qgf73wk-topology.yaml --host-addr 127.0.0.1 --port 3001 --socket-path /run/cardano-node/node.socket      +RTS -N2 -I0 -A16m -qg -qb --disable-delayed-os-memory-return -RTS\"\n\n  exec /nix/store/0zd4i3gfzrmnik1x1crywplxmq221qdh-cardano-node-exe-cardano-node-10.1.2/bin/cardano-node run --config /nix/store/kq04x2fjvnmv11fawj870fixsma9g47x-config-0-0.json --database-path /var/lib/cardano-node/db-mainnet --topology /nix/store/afc8vswv43sl2y36rr9139588qgf73wk-topology.yaml --host-addr 127.0.0.1 --port 3001 --socket-path /run/cardano-node/node.socket      +RTS -N2 -I0 -A16m -qg -qb --disable-delayed-os-memory-return -RTS''\n

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeshareipv4port","title":"services.cardano-node.shareIpv4port","text":"

Should instances on same machine share ipv4 port. Default: true if systemd activated socket. Otherwise false. If false use port increments starting from port.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeshareipv6port","title":"services.cardano-node.shareIpv6port","text":"

Should instances on same machine share ipv6 port. Default: true if systemd activated socket. Otherwise false. If false use port increments starting from port.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesigningkey","title":"services.cardano-node.signingKey","text":"

Signing key

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesocketgroup","title":"services.cardano-node.socketGroup","text":"

systemd socket group owner. Note: only applies to sockets created by systemd (ie. when systemdSocketActivation is turned on).

Type: string

Default: \"cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesocketpath","title":"services.cardano-node.socketPath","text":"

Local communication socket path, for each instance.

Type: string or function that evaluates to a(n) string

Default: <function>

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodestatedir","title":"services.cardano-node.stateDir","text":"

Directory to store blockchain data, for each instance.

Type: string or function that evaluates to a(n) string

Default: \"/var/lib/cardano-node\"

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodesystemdsocketactivation","title":"services.cardano-node.systemdSocketActivation","text":"

Use systemd socket activation

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofactivepeers","title":"services.cardano-node.targetNumberOfActivePeers","text":"

Number of peers your node is actively downloading headers and blocks from. Default to 2/5 of targetNumberOfEstablishedPeers.

Type: signed integer

Default: 20

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofestablishedpeers","title":"services.cardano-node.targetNumberOfEstablishedPeers","text":"

Number of peers the node will be connected to, but not necessarily following their chain. Default to half of targetNumberOfKnownPeers.

Type: signed integer

Default: 50

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofknownpeers","title":"services.cardano-node.targetNumberOfKnownPeers","text":"

Target number for known peers (root peers + peers known through gossip). Default to targetNumberOfRootPeers.

Type: signed integer

Default: 150

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetargetnumberofrootpeers","title":"services.cardano-node.targetNumberOfRootPeers","text":"

Limits the maximum number of root peers the node will know about

Type: signed integer

Default: 60

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetopology","title":"services.cardano-node.topology","text":"

Cluster topology. If not set producers array is used to generated topology file.

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetracersocketpathaccept","title":"services.cardano-node.tracerSocketPathAccept","text":"

Listen for incoming cardano-tracer connection on a local socket, for each instance.

Type: null or string or function that evaluates to a(n) (null or string)

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodetracersocketpathconnect","title":"services.cardano-node.tracerSocketPathConnect","text":"

Connect to cardano-tracer listening on a local socket, for each instance.

Type: null or string or function that evaluates to a(n) (null or string)

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeuselegacytracing","title":"services.cardano-node.useLegacyTracing","text":"

Use the legacy tracing, based on iohk-monitoring-framework.

Type: boolean

Default: true

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeusenewtopology","title":"services.cardano-node.useNewTopology","text":"

Use new, p2p/ledger peers compatible topology.

Type: boolean

Default: true

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeusepeersfromledgerafterslot","title":"services.cardano-node.usePeersFromLedgerAfterSlot","text":"

If set, bootstraps from public roots until it reaches given slot, then it switches to using the ledger as a source of peers. It maintains a connection to its local roots. Default to null for block producers.

Type: null or signed integer

Default: 128908821

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodeusesystemdreload","title":"services.cardano-node.useSystemdReload","text":"

If set, systemd will reload cardano-node service units instead of restarting them if only the topology file has changed and p2p is in use.

Cardano-node topology files will be stored in /etc as: /etc/cardano-node/topology-${toString i}.yaml

Enabling this option will also allow direct topology edits for tests when a full service re-deployment is not desired.

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodevrfkey","title":"services.cardano-node.vrfKey","text":"

Signing key

Type: null or string or path

Default: null

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodewithcardanotracer","title":"services.cardano-node.withCardanoTracer","text":"

Type: boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.cardano-node/#servicescardano-nodewithutxohdlmdb","title":"services.cardano-node.withUtxoHdLmdb","text":"

On an UTxO-HD enabled node, the in-memory backend is the default. This activates the on-disk backend (LMDB) instead.

Type: boolean or function that evaluates to a(n) boolean

Default: false

Declared by: - https://github.com/IntersectMBO/cardano-node/tree/master/nix/nixos/cardano-node-service.nix

"},{"location":"reference/module-options/services.http-proxy/","title":"services.http-proxy","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyenable","title":"services.http-proxy.enable","text":"

Whether to enable HTTP reverse proxy, TLS endpoint and load balancer.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxydomainname","title":"services.http-proxy.domainName","text":"

Domain name. For each service a virtualHost is configured as a subdomain.

Type: string

Default: \"\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyhttpsenable","title":"services.http-proxy.https.enable","text":"

Enable TLS and redirect all connections to HTTPS. Requires certificates. Supports ACME.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyhttpsacmeenable","title":"services.http-proxy.https.acme.enable","text":"

Enable Let\u2019s Encrypt ACME TLS certificates. Requires public DNS records pointing to server and security.acme configured.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyopenfirewall","title":"services.http-proxy.openFirewall","text":"

Open firewall for HTTP and HTTPS.

Type: boolean

Default: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservers","title":"services.http-proxy.servers","text":"

List of upstream server host names used for all services.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservices","title":"services.http-proxy.services","text":"

Configuraiton for each upstream service.

Type: attribute set of (submodule)

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

"},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesname","title":"services.http-proxy.services..name

Name of the service.

Type: string

Default: \"\u2039name\u203a\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesport","title":"services.http-proxy.services..port

Upstream server port.

Type: null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesservers","title":"services.http-proxy.services..servers

List of upstream server host names.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.http-proxy/#serviceshttp-proxyservicesversion","title":"services.http-proxy.services..version

This string will be served at path \u2018/version\u2019.

Type: null or string

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/http-proxy.nix

","text":""},{"location":"reference/module-options/services.kupo/","title":"services.kupo","text":""},{"location":"reference/module-options/services.kupo/#serviceskupoenable","title":"services.kupo.enable","text":"

Whether to enable Kupo Cardano chain-indexer.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupopackage","title":"services.kupo.package","text":"

Kupo package.

Type: package

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoextraargs","title":"services.kupo.extraArgs","text":"

Extra arguments to kupo command.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupogroup","title":"services.kupo.group","text":"

Group to run kupo service as.

Type: non-empty string

Default: \"kupo\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupohost","title":"services.kupo.host","text":"

Host address or name to listen on.

Type: non-empty string

Default: \"127.0.0.1\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupohydrahost","title":"services.kupo.hydraHost","text":"

Hydra host name. Optional.

Type: null or non-empty string

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupohydraport","title":"services.kupo.hydraPort","text":"

Hydra port. Ignored if hydraHost is null.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupomatches","title":"services.kupo.matches","text":"

The list of addresses to watch.

Type: list of non-empty string

Default:

[\n  \"*\"\n]\n

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskuponodeconfigpath","title":"services.kupo.nodeConfigPath","text":"

Path to cardano-node config.json file. Ignored if ogmiosHost is not null

Type: path

Default: \"/etc/cardano-node/config.json\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskuponodesocketpath","title":"services.kupo.nodeSocketPath","text":"

Path to cardano-node IPC socket. Ignored if ogmiosHost is not null.

Type: null or path

Default: \"/run/cardano-node/node.socket\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoogmioshost","title":"services.kupo.ogmiosHost","text":"

Ogmios host name. Optional, will connect to cardano-node if null.

Type: null or non-empty string

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoogmiosport","title":"services.kupo.ogmiosPort","text":"

Ogmios port. Ignored if ogmiosHost is null.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 1337

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoport","title":"services.kupo.port","text":"

TCP port to listen on.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 1442

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupopruneutxo","title":"services.kupo.pruneUtxo","text":"

Automatically remove inputs that are spent on-chain.

Type: boolean

Default: false

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskuposince","title":"services.kupo.since","text":"

Watching depth.

Type: non-empty string

Default: \"origin\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupouser","title":"services.kupo.user","text":"

User to run kupo service as.

Type: non-empty string

Default: \"kupo\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.kupo/#serviceskupoworkdir","title":"services.kupo.workDir","text":"

Directory to start the kupo and store its data. Must start with /var/lib/.

Type: path

Default: \"/var/lib/kupo\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/kupo.nix

"},{"location":"reference/module-options/services.ogmios/","title":"services.ogmios","text":""},{"location":"reference/module-options/services.ogmios/#servicesogmiosenable","title":"services.ogmios.enable","text":"

Whether to enable Ogmios bridge interface for cardano-node.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiospackage","title":"services.ogmios.package","text":"

Ogmios package

Type: package

Default: null

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosextraargs","title":"services.ogmios.extraArgs","text":"

Extra arguments to ogmios command.

Type: list of string

Default: [ ]

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosgroup","title":"services.ogmios.group","text":"

Group to run Ogmios service as.

Type: string

Default: \"ogmios\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmioshost","title":"services.ogmios.host","text":"

Host address or name to listen on.

Type: string

Default: \"127.0.0.1\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosnodeconfigpath","title":"services.ogmios.nodeConfigPath","text":"

Path to cardano-node config.json file. Required.

Type: path

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosnodesocketpath","title":"services.ogmios.nodeSocketPath","text":"

Path to cardano-node IPC socket.

Type: path

Default: \"/run/cardano-node/node.socket\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosport","title":"services.ogmios.port","text":"

TCP port to listen on.

Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default: 1337

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.ogmios/#servicesogmiosuser","title":"services.ogmios.user","text":"

User to run Ogmios service as.

Type: string

Default: \"ogmios\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/ogmios.nix

"},{"location":"reference/module-options/services.oura/","title":"services.oura","text":""},{"location":"reference/module-options/services.oura/#servicesouraenable","title":"services.oura.enable","text":"

Whether to enable oura.

Type: boolean

Default: false

Example: true

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourapackage","title":"services.oura.package","text":"

The oura package to use.

Type: package

Default: pkgs.oura

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesouragroup","title":"services.oura.group","text":"

Group to run oura service as

Type: string

Default: \"oura\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourasettings","title":"services.oura.settings","text":"

Freeform attrset that generates the TOML configuration file used by Oura.

Type: TOML value

Default: { }

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourastatedir","title":"services.oura.stateDir","text":"

State directory for oura service

Type: path

Default: \"/var/lib/oura\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"},{"location":"reference/module-options/services.oura/#servicesourauser","title":"services.oura.user","text":"

User to run oura service as

Type: string

Default: \"oura\"

Declared by: - https://github.com/mlabs-haskell/cardano.nix/tree/main/modules/services/oura.nix

"}]} \ No newline at end of file