Skip to main content

Compile the guardrail script

How to compile the guardrail script from source​

To compile the current version of the guardrail script yourself, you first have to clone the plutus repository

git clone https://github.com/IntersectMBO/plutus.git
cd plutus

Next we check out the version 1.31.0.0 of plutus and enter a nix development shell via

git checkout 1.31.0.0
nix develop

We then create a file cabal.project.local to override some dependencies as a hotfix (there is a circular dependency otherwise).

cat <<EOF > cabal.project.local
allow-newer: *:plutus-ledger-api
allow-newer: *:prettyprinter-configurable
EOF

Next, we open in a text editor the file cardano-constitution/cardano-constitution.cabal and delete line 134 that reads buildable: False via

sed -i '134d' cardano-constitution/cardano-constitution.cabal

Next, we can build the script via

cabal update
cabal run cardano-constitution:create-json-envelope -- guardrail.plutus

You can get the hash of this just compiled script via, for example

cardano-cli transaction policyid --script-file guardrail.plutus

And compare it to the one currently defined here.