Hi all,
Here’s another quick upgrade guide for 8.9.0 for Coincashew users. Especially those with older Coincashew installs.
There’s a bunch of new things with this version, but it still isn’t a hard fork, so not compulsory.
It does fix an issue that has been occuring where blocks from the future are causing height battles, so it is worth updating.
Update Instructions:
Update your instance:
sudo apt-get update && sudo apt-get upgrade
If you are upgrading from 8.1.2 or earlier, you need to install blst. If you already did this for 8.7.3, you can skip this.
cd $HOME/git
git clone https://github.com/supranational/blst
cd blst
git checkout v0.3.10
./build.sh
cat > libblst.pc << EOF
prefix=/usr/local
exec_prefix=\${prefix}
libdir=\${exec_prefix}/lib
includedir=\${prefix}/include
Name: libblst
Description: Multilingual BLS12-381 signature library
URL: https://github.com/supranational/blst
Version: 0.3.10
Cflags: -I\${includedir}
Libs: -L\${libdir} -lblst
EOF
sudo cp libblst.pc /usr/local/lib/pkgconfig/
sudo cp bindings/blst_aux.h bindings/blst.h bindings/blst.hpp /usr/local/include/
sudo cp libblst.a /usr/local/lib
sudo chmod u=rw,go=r /usr/local/{lib/{libblst.a,pkgconfig/libblst.pc},include/{blst.{h,hpp},blst_aux.h}}
Download latest cardano-node git and checkout latest branch:
cd $HOME/git
git clone https://github.com/IntersectMBO/cardano-node.git cardano-node2
cd cardano-node2/
git fetch --all --recurse-submodules --tags
git checkout tags/8.9.0
Then upgrade ghcup and do a cabal update.
ghcup upgrade
ghcup install ghc 8.10.7
ghcup set ghc 8.10.7
ghcup install cabal 3.8.1.0
ghcup set cabal 3.8.1.0
cabal update
ghc --version
cabal --version
Note: make sure you have ghc 8.10.7 and cabal 3.8.1.0 before proceeding.
Build the node:
cd $HOME/git/cardano-node2
cabal configure -O0 -w ghc-8.10.7
cabal build cardano-node cardano-cli
The build takes about 20 minutes.
Check cardano-cli and cardano-node that the build was successful:
$(find $HOME/git/cardano-node2/dist-newstyle/build -type f -name "cardano-cli") version
$(find $HOME/git/cardano-node2/dist-newstyle/build -type f -name "cardano-node") version
The cardano-node version should be 8.9.0 and cardano-cli is 8.20.3.0 (previous versions had cardano-node and cardano-cli at the same tag but now they’re different for some reason.
Stop your node
sudo systemctl stop cardano-node
Then copy over the new executables
sudo cp $(find $HOME/git/cardano-node2/dist-newstyle/build -type f -name "cardano-cli") /usr/local/bin/cardano-cli
sudo cp $(find $HOME/git/cardano-node2/dist-newstyle/build -type f -name "cardano-node") /usr/local/bin/cardano-node
Check that successful version is reported:
cardano-node version
cardano-cli version
You also need to download the new Conway Genesis file again (Environments - The Cardano Operations Book ) and it is a good idea to update the config.json file.
Note that p2p is enabled by default in the config.json, TraceMux is also false by default. If you used an older Coincashew guide your config files might be “mainnet-byron-genesis.json” etc, so make sure you update the new config.json file accordingly.
Then start your node.
sudo systemctl start cardano-node
Monitor the progress by either using gliveview or journalctl, and check if there’s any errors starting:
journalctl --unit=cardano-node --follow
Then a quick clean up:
cd $HOME/git/
rm -rf cardano-node-old
mv cardano-node cardano-node-old
mv cardano-node2 cardano-node