🧭
How to Guides for Coincashew Method Cardano SPOs
  • Maintenance and Daily Operations
    • How to Guides for SPOs using Coincashew Method
      • Adjust Node.Counter for KES
      • Renew KES Keys
      • Update Node and CLI to 8.0.0
      • Update Node to 9.1.1
      • Update cardano-submit-api
      • Update Mithril Signer
      • P2P Topology File Explained
      • How to Secure Pledge with Hardware Wallet
      • How to submit a vote as an SPO for Governance Actions
      • How to Delegate your SPO Wallet to a dRep
      • How to Add Pool Data from Cexplorer to your Grafana Dashboard
      • Answering SPO On-Chain Polls
      • Set up Blockfrost Ice Breakers
      • Update Blockfrost Ice Breaker
Powered by GitBook
On this page
  • Build on Your Own Method:
  • Step 1 - Update Rust
  • Step 2 - Clone Mithril Git
  • Step 3 - Checkout Current Version
  • Step 4 - Change Directory
  • Step 5 - Run Tests (optional)
  • Step 6 - Build the Executable
  • Step 7 - Verify the Build Version
  • Step 8 - Stop Mithril Signer Service
  • Step 9 - Move mithril Signer Executable
  • Step 10 - Start Mithril Signer Service
  • Step 11 - Verify Version and Status
  • Step 12 - Clean up
  • Verify your signer is registered
  • Verify your signer contributes with individual signatures
  • Congratulations you did it!
  • Contributors
  1. Maintenance and Daily Operations
  2. How to Guides for SPOs using Coincashew Method

Update Mithril Signer

In this example we will update from Mithril Signer version 0.2.237 to 0.2.243 - Updated: 5/5/2025

PreviousUpdate cardano-submit-apiNextP2P Topology File Explained

Last updated 4 days ago

Please note this update didn't require any changes to the configuration files. Other updates may require changes to additional files.

Credits to for documenting the procedure.

📢 The Mithril team has created a one-line command to update your Mithril Signer. If you prefer that method see command and note below. "You can easily update your Mithril signer with this one line command (it will be downloaded in the current directory, a custom folder can be specified with -p option):" curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-signer -d 2517.0 -p $(pwd) If you prefer to compile on your own see steps below 👇.



Build on Your Own Method:

The following updates are done just on your Block Producer.

Step 1 - Update Rust

On Block Producer, run the following command to update Rust:

rustup update

Step 2 - Clone Mithril Git

Clone the Mithril git to your git folder. Run:

cd $HOME/git
git clone https://github.com/input-output-hk/mithril.git

Step 3 - Checkout Current Version

Always make sure the version is compatible with Mainnet before updating

Don't get the tag version of Mithril v2517.0 confused with the version of the Mithril Signer in this case 0.2.243 The Crate versions are different from the tag version.

To checkout current version in this case Mithril v2517.0, first change to Mithril folder in git and then checkout version. Run:

cd $HOME/git/mithril
git checkout 2517.0

Step 4 - Change Directory

cd $HOME/git/mithril/mithril-signer

Step 5 - Run Tests (optional)

make test

Step 6 - Build the Executable

make build

Step 7 - Verify the Build Version

Stay in $HOME/git/mithril/mithril-signer folder and then run:

./mithril-signer -V

Step 8 - Stop Mithril Signer Service

sudo systemctl stop mithril-signer

Step 9 - Move mithril Signer Executable

We keep our mithril signer in the following folder, please adjust to your path. $NODE_HOME/mithril-signer

cd $HOME/git/mithril/mithril-signer
sudo mv -f mithril-signer $NODE_HOME/mithril-signer

Step 10 - Start Mithril Signer Service

sudo systemctl start mithril-signer

Step 11 - Verify Version and Status

Check version run:

We keep our mithril signer in the following folder, please adjust to your path. $NODE_HOME/mithril-signer

cd $NODE_HOME/mithril-signer
./mithril-signer -V

Check status

systemctl status mithril-signer.service

Step 12 - Clean up

If you have the correct version and the status is good, go ahead and clean up files.

cd $HOME/git/
rm -rf mithril

Verify your signer is registered

Download the script into the mithril-signer directory

cd $NODE_HOME/mithril-signer
wget https://mithril.network/doc/scripts/verify_signer_registration.sh

Make the script executable:

cd $NODE_HOME/mithril-signer
chmod +x verify_signer_registration.sh

Run Script:

Replace "**POOL_ID**" with your pool ID, example below

cd $NODE_HOME/mithril-signer
PARTY_ID=**POOL_ID** AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator ./verify_signer_registration.sh

Example: PARTY_ID=pool16cdtqyk0fvxzfkhjg3esjcuty4tnlpds5lj0lkmqmwdjyzaj7p8 AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator ./verify_signer_registration.sh

If your signer is registered, you should see this message:

>> Congrats, your signer node is registered!

If this is an error with registration you will see this message:

>> Oops, your signer node is not registered. Party ID not found among the signers registered at epoch XXX.

Verify your signer contributes with individual signatures

Download the script into the mithril-signer directory

cd $NODE_HOME/mithril-signer
wget https://mithril.network/doc/scripts/verify_signer_signature.sh

Make the script executable:

cd $NODE_HOME/mithril-signer
chmod +x verify_signer_signature.sh

Run Script:

Replace "**POOL_ID**" with your pool ID, example below

cd $NODE_HOME/mithril-signer
PARTY_ID=**POOL_ID** AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator ./verify_signer_signature.sh

Example: PARTY_ID=pool16cdtqyk0fvxzfkhjg3esjcuty4tnlpds5lj0lkmqmwdjyzaj7p8 AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator ./verify_signer_signature.sh

If your signer is contributing, you should see this message:

>> Congrats, you have signed this certificate: ...

Otherwise, you should see this error message:

>> Oops, your party id was not found in the last 20 certificates. Please try again later.

Congratulations you did it!

Contributors

Thanks to the following pools for helping to put together these guides. Please consider delegating to their pools to support them. Are you a pool? Consider buying them a coffee

To find the current version go to and look for latest version. In this case the current version is Mithril v2517.0

Mithril Explorer:

Additional sources which helped create this guide:

https://github.com/input-output-hk/mithril/releases/latest
https://mithril.network/explorer/?aggregator=https%3A%2F%2Faggregator.release-mainnet.api.mithril.network%2Faggregator
https://mithril.network/doc/manual/getting-started/run-signer-node/
Earn Coin Pool
Earn Coin Pool - Ticker: ECP
Envy Stake Pool - Ticker ENVY
PANL Stake Pool - Ticker PANL
xSPO Alliance
For this example this is the latest version to update to Mithril-Signer 0.2.243
Mainnet Compatible
Mithril Signer Version for Tag v2517.0