Skip to content
This repository was archived by the owner on Apr 6, 2026. It is now read-only.
Closed
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 46 additions & 13 deletions pages/builders/chain-operators/tutorials/create-l2-rollup.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -86,9 +86,9 @@ You can either use a node provider like [Alchemy](https://www.alchemy.com/) (eas

## Build the source code

You're going to be spinning up your OP Stack chain directly from source code instead of using a container system like [Docker](https://www.docker.com/).
You're going to be spinning up your OP Stack chain using pre-built binaries from the latest Optimism release instead of building directly from source.
This simplifies the setup process and ensures you're using the latest stable version.
Although this adds a few extra steps, it means you'll have an easier time modifying the behavior of the stack if you'd like to do so.
If you want a summary of the various components you'll be using, take another look at the [What You're Going to Deploy](#what-youre-going-to-deploy) section above.

<Callout>
You're using the home directory `~/` as the work directory for this tutorial for simplicity.
Expand All @@ -112,10 +112,9 @@ git clone https://github.com/ethereum-optimism/optimism.git
```bash
cd optimism
```

{<h3>Check out the correct branch</h3>}

<Callout>
<Callout type="info">
You will be using the `tutorials/chain` branch of the Optimism Monorepo to deploy an OP Stack testnet chain during this tutorial.
This is a non-production branch that lags behind the `develop` branch.
You should **NEVER** use the `develop` or `tutorials/chain` branches in production.
Expand All @@ -125,18 +124,54 @@ You should **NEVER** use the `develop` or `tutorials/chain` branches in producti
git checkout tutorials/chain
```

{<h3>Check your dependencies</h3>}

<Callout>
Don't skip this step! Make sure you have all of the required dependencies installed before continuing.
<Callout type="warning">
The components in the `tutorials/chain` branch are outdated and may not work as expected.
To ensure compatibility and stability, you will download the latest releases of `op-node`, `op-batcher`, and `op-proposer` from the Optimism releases page.
These latest versions will override any outdated components in the `tutorials/chain` branch.
Comment thread
krofax marked this conversation as resolved.
Outdated
</Callout>

Run the following script and double check that you have all of the required versions installed.
If you don't have the correct versions installed, you may run into unexpected errors.
{<h3> Download the latest Optimism releases </h3>}
Open the Official [Optimism releases page](https://github.com/ethereum-optimism/optimism/releases) in your browser to download the latest stable releases of `op-node`, `op-batcher`, and `op-proposer`.

{<h3>Identify latest release</h3>}

* Look for the most recent version tagged as `vX.Y.Z`.
* Verify release date matches current expectations.
* Check release notes for critical compatibility information.

{<h3> Download required binaries</h3>}

In the *Assets* section of the release, download these files for your operating system:
* `op-node_<version>_<OS>_<arch>.tar.gz`
* `op-batcher_<version>_<OS>_<arch>.tar.gz`
* `op-proposer_<version>_<OS>_<arch>.tar.gz`

{<h3> Verify file integrity</h3>}

1. Open the checksums.txt file in the release assets
2. Compare listed `SHA256` values with your downloaded files using:
* Windows: PowerShell `Get-FileHash` command
* macOS: Terminal `shasum` command
* Linux: Terminal `sha256sum` command

{<h3> Extract binaries</h3>}

Using your system's archive tool:
1. Extract all `.tar.gz` files
2. Override any outdated components in the `tutorials/chain` branch during extraction by moving these extracted files to a directory in your system `PATH`:

* `op-node`
* `op-batcher`
* `op-proposer`

Comment thread
krofax marked this conversation as resolved.
Outdated
{<h3> Verify installation</h3>}

```bash
./packages/contracts-bedrock/scripts/getting-started/versions.sh
op-node --version
op-batcher --version
op-proposer --version
```
</Steps>

{<h3>Install dependencies</h3>}

Expand All @@ -151,8 +186,6 @@ make op-node op-batcher op-proposer
pnpm build
```

</Steps>

### Build `op-geth`

<Steps>
Expand Down