Install EOSIO on Ubuntu 20.04/18.04 via unofficial PPA

Jeeyong Um
2 min readMar 6, 2021

EOSIO is a set of blockchain software which consists of nodeos (node client), cleos (command-line interface) and keosd (keystore daemon) for EOSIO-variant mainnets. There are additional tools in the latest version, but three executables mentioned here are the main components of EOSIO. The official guide of EOSIO introduces the manual way to download DEB package and install it with apt command for Ubuntu.

However, using PPA is a preferred way to install the package not provided by default. I created the unofficial PPA for easier installation and upgrade of EOSIO.

# Install
sudo add-apt-repository ppa:conr2d/eosio
sudo apt update
sudo apt install eosio
# Upgrade
sudo apt update
sudo apt upgrade
# Uninstall
sudo apt remove eosio
# Remove PPA completely
sudo add-apt-repository --remove ppa:conr2d/eosio

Once you add PPA by add-apt-repository command, eosio package will be found in the list of candidate packages. (To check the status of package, run apt policy eosio)

You can find the code base from here. Minor modifications were made to merge all submodules for generating source package.

If you have existing state database generated by the official version of nodeos (downloaded and installed from github releases), it would not be compatible with nodeos installed by PPA. Because the compatibility of chainbase for storing state database is affected by the version of compiler, but Clang (for PPA) provided by Ubuntu repository is different from that used by block.one to build the official released nodeos. You can replay blockchain to make it compatible again, but if you don’t know what this means exactly, use PPA for development or testing purpose only. (Not for production)

DisclaimerTHE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR  OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR  OTHER DEALINGS IN THE SOFTWARE.

--

--