Saltar al contenido

How to install RoninDojo on a PC (Intel/AMD-x86_64)

Tiempo de lectura aprox: 4 minutos, 9 segundos

RoninDojo is an on-chain Bitcoin node equipped with tools from the Samourai Wallet team, accompanied by a user-friendly web environment that enhances the overall user experience.

It offers two interaction modes:

  • Web Mode (RoninUI): Access a comprehensive management/administration panel through your web browser from another PC.
  • Terminal Mode (RoninCLI): Login with the username ‘ronindojo’ to access complete management/administration via the Linux system console. This can be done either locally (using your screen, keyboard, and mouse) or remotely through SSH from another PC.

It’s essential to access the web interface initially to create the ‘ronindojo’ password, enabling terminal mode access, as outlined in step 5 of the installation.

How was it achieved?

A bit of history

The story goes back to August 2023, involving regular Telegram exchanges with Arkad discussing the advantages of running RoninDojo on a superior machine rather than a Raspberry Pi 4, which had become increasingly limited and outdated.

Initially, the idea came up to try an Orange Pi 5 Plus for its great hardware capabilities, but there was little to no support on how to install RoninDojo on a machine other than the official Ronin team’s own (Tanto) or the Raspberry Pi 4.

In the end, I ended up acquiring an Orange Pi 5 Plus on which I managed to set up and run RoninDojo perfectly, but not before going through an operating system compilation process for this device. It’s a somewhat inconvenient and painful path for any regular user, and of course, this already poses a significant limitation for widespread adoption.

RoninDojo’s Performance

The performance was indeed spectacular, offering a wonderfully smooth user experience. However, the limitations of the installation process and the cost of a machine, averaging around €250, made it less appealing to the general public.

Transitioning to PC

From all this came the idea of how beneficial it would be to run RoninDojo on a widely used device such as a PC (Intel/AMD). Although it seemed like a crazy idea at the time, I began conducting tests.

After a few weeks, I managed to adapt the code from the initial installation (primarily designed for ARM systems) to x86_64 systems (the typical Intel or AMD), although I had to resolve some peculiar issues regarding disk drive types and their connection order with the machine.

The installation process could be much simpler if the RoninDojo team improved the script for detecting the data disk; it’s not a difficult task and wouldn’t take them much time.

Nothing is perfect, but we know how to live with it

It’s also worth noting that RoninDojo on a PC isn’t flawless. Through tests conducted by other users, it was discovered that using the BackUp option could disrupt the system (thanks for note me, Larry). It’s not a major issue if unused, and if you want to create a system backup, I’d recommend using tools like Rescuezilla.

Installing RoninDojo

Steps to Install RoninDojo on an Intel/AMD (x86_64) CPU System:

Hardware Setup Overview

A PC with an Intel Core i5 6500 processor or similar, coupled with a minimum of 8GB RAM, provides sufficient power and balance to smoothly run the node. While upgrading to more recent processors is beneficial, it may not present a significant performance difference. However, notable differences in performance can be observed in the disk drives.

Machines or setups recommended for their stability and performance, available at reasonable prices in the market as refurbished units, include:

  • HP EliteDesk 800 G2/G3
  • Lenovo ThinkCentre M900
  • Dell OptiPlex 7040 Mini

Video showcasing the HP EliteDesk 800 G2:

The machine must have two disks, precisely of these types and configured in this manner, with capacity at your discretion but with minimums, of course:

  • SATA Drive (for the operating system, minimum capacity of 100GB)
  • NVMe M.2 Drive (for data, minimum capacity of 1TB, highly recommended 2TB)

As an example, I’ll provide two configuration models, one valid and the other invalid. Notice how the ‘invalid’ one consists of two SATA drives recognized by Linux as sda and sdb. This latter configuration is commonly found in many systems, and unfortunately, until now, it hasn’t been possible to correctly install RoninDojo in this setup. However, it’s likely that the RoninDojo team will address this incompatibility in the future.

VALID

INVALID

Step 1 – Flashing USB with Debian 11.x

  • Download the Linux Debian 11.x Image (currently 11.8):
https://cdimage.debian.org/mirror/cdimage/archive/11.8.0/amd64/iso-cd/debian-11.8.0-amd64-netinst.iso
  • Download Rufus USB or Balena Etcher to flash the Debian image onto the USB:
https://rufus.ie/es/
or
https://github.com/pbatard/rufus/releases/download/v4.2/rufus-4.2p.exe

https://etcher.balena.io/#download-etcher
or
https://github.com/balena-io/etcher/releases/download/v1.18.11/balenaEtcher-Portable-1.18.11.exe

Flash the USB using Rufus or Balena Etcher with the previously downloaded Linux Debian image. Here’s a detailed video explaining the process:

Step 2 – Installing Debian 11.x

To begin, start the machine with the USB device and select graphical installation. Key points during the installation are:

  1. Hostname: RoninDojo
  2. Create user ‘node’ with password ‘node’ (you can change the password later)
  3. Disk partitioning (Guided – Use entire disk)
    • Choose the installation disk: — sda if you have a SATA + NVMe setup (the NVMe should be the larger data drive) — sdb if you have a SATA + SATA setup (the sda should be the larger data drive)
  4. Software selection (only select the following checkboxes): — SSH Server — Standard System Utilities

Once the installation is complete, the system will restart. Log in using the ‘root’ username and the password created during installation to install the following packages:

apt install avahi-daemon sudo curl
  • «avahi-daemon» will enable us to connect to the machine using the device name instead of the IP.
  • «sudo» will allow us to execute commands with root privileges from our user account.
  • «curl» will allow us to download the file with the Debian adaptation script to RoninOS directly from Github

Next, we’ll add the ‘node’ user to the sudo group.

adduser node sudo

We log out:

exit

You can see the entire detailed installation process in this video:

Step 3 – Run the RoninOS script for x86-64

To begin the system adaptation for RoninDojo, we need to run a pre-installation by executing the following command from the «nodo» user:

curl -L https://raw.githubusercontent.com/albercoin/RoninDojo_x86-64/main/roninos_x86_64.sh | sudo bash | tee roninos-debug.log

This runs the script and generates the ‘ronin-debug.log’ file containing execution details for review in case of any issues. You can read the file using the following command:

more roninos-debug.log

4 – Start the RoninDojo Installation Service

Once the pre-installation script is finished, you need to activate a service to begin the installation (you can also do this by restarting the machine):

sudo systemctl start ronin-setup

And immediately after to monitor the installation process, execute the following command because the installation occurs in the background and won’t be visible on the screen, but it will be recorded in the ‘setup.log’ file:

tail -f /home/ronindojo/.logs/setup.logs

You’ll need to wait for about 75 seconds before you start seeing the installation process on the screen. It’s programmed this way, so don’t worry and get comfortable while waiting.

The installation will take between 10 to 30 minutes, largely depending on the internet connection and the machine’s power. You’ll know it’s finished when you see the following on the screen:

All RoninDojo feature installations complete!

Video of step 4:

Step 5 – First access to ronindojo.local via web

Open a web browser on your desktop computer and enter ‘ronindojo.local’:

Welcome to RoninDojo

Back up the root user’s password:

Create the password for ronindojo:

¡Great! Once everything is completed…

and finally… 🥳

Step 6 – Installation completed

Now RoninDojo is ready, wait for it to finish downloading the blockchain and for the Electrum indexer to be up-to-date to function optimally.

ENJOY IT!!!

By Albercoin with the help of my esteemed Arkad