But first let's clear, why do I chose to use the LOC wallet with GUI on the Pi? The answer is simple - the QT version (the version with GUI) is more convenient (which is obvious) and also more secure (not so obvious) than the Daemon/Client version.

The Daemon keeps a port open for CLI (the Client) to be able to communicate with it. On the other hand there is no such port open when the QT version of the wallet is run. To open such a port on the QT version the option "-server" can be used, then the QT wallet can accept commands from CLI too. By default this port on the QT version is closed and hackers don't have even the possibility to try and run commands on the wallet remotely.

3. Pre-compile and link objects

"./configure" has some options to finish faster (./configure --disable-tests --disable-bench --disable-gui-tests), however these are now included by default in the source, so you can simply run:

./configure

4. Compile

This step took a bit less than 1 hour to complete on the Raspberry Pi 4b with SSD. If you care about your Pi, now it's the right time to check how well the board is prepared to perform "under pressure". Before stressing out the Pi, check if you have heat sinks installed on the right places. Wireless and Bluetooth should be off, so there will be no heat produced there. If your Pi is in a box, leave the box cover open. Of course these are the minimums. You could install a huge heat sink on the CPU and USB chips, a cooling fan or two, etc. Just avoid the mistake to cool your CPU only and to forget the rest heat producers unprotected.

The command will first ask a few questions you need to answer (like "Should I create a default set of package docs?", etc.), then create the Debian installation file, install the binaries in /usr/local/bin and lastly create a .tgz Archive.

You can also use checkinstall with options, to avoid some manual typing. Customize the wallet version in these options before you use them of course:

After checkinstall finishes you will find the .deb installation file in the ~/Blockchain folder.

Finally you need to "chown" (change owner) of the .deb file to be able to copy or move it. In the command below you need to replace your-package-name-and-version_armhf.deb with the exact name and version of the .deb file checkinstall created:

sudo chown pi:pi ~/Blockchain/your-package-name-and-version_armhf.deb

6. Start the wallet with GUI ("test drive")

To start the wallet you need to access the Raspberry Pi via VNC and launch a terminal in the VNC viewer. Then in the terminal type:

/usr/local/bin/locktrip-qt -testnet

7. A clean wallet with GUI in use

As we created a developer environment on the SSD, for security reasons it is safer to make a copy of the .deb package file on a removable flash drive, get a fresh image of the Raspbian Buster with desktop, make sure you access remotely the Pi with SSH and via VNC, and install the .deb package in the clean now environment on your Pi. You can use dpkg, which will need to manually install missing dependencies, or apt install, which will install dependencies automatically and use dpkg in the background to install the .deb package.

7.1 Installing with dpkg (manual installation of dependencies)

Before we install the .deb package, we need to install the missing packages (libraries) it depends on. Here is a detailed manual way to install the dependencies: