Công cụ trên Ubuntu

Tôi hay build file binary trên Linux để thỏa mãn việc tự trải nghiệm. Một trong những ứng dụng tôi hay build là ví Bob để chứa coin HNS. Hiện tại, ví Bob chưa hỗ trợ chính thức ví mềm lẫn ví cứng Nano Ledger S trên Linux nên muốn sử dụng bạn phải tự build file binary file để sử dụng.

Trong quá trình build tôi gặp không ít lỗi do thiếu các gói cài đặt cần thiết. Những gói cài đặt bên dưới tôi thực hiện trên Ubuntu20. Sau khi cài đặt Ubuntu trên VMware thì việc cài VM tools là thực sự cần thiết. Sau khi cài VM Tools thì màn hình trong máy ảo sẽ tự động co dãn vừa khớp với chế độ hiển thị của VMware.

Gói hỗ trợ build cơ bản

$ sudo apt update && sudo apt upgrade -y
$ sudo apt install build-essential autotools-dev automake autoconf git curl -y
$ sudo apt install libusb-dev libtool

Gói hỗ trợ cho Handshake

$ sudo apt install libunbound-dev libudev-dev
$ sudo apt install unbound

Nano Ledger

Đối với Ubuntu 20

$ sudo apt update
$ sudo apt install ledger-wallets-udev

Để sử dụng ví cứng Nano Ledger trên Linux bạn cần theo hướng dẫn bên dưới

## https://support.ledger.com/hc/en-us/articles/360006395553-Download-and-install-Ledger-Live

$ chmod +x ledger-live-*.AppImage

$ wget -q -O - https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/add_udev_rules.sh | sudo bash

$ ./ledger-live-desktop-*.AppImage --no-sandbox

Nếu vấn không kết nối được thì bạn thử cách dưới đây

Cài đặt Node JS

Bản cài đặt nên là Node JS 12

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-18-04

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-20-04

Build Bob

$ cd ~
$ curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh
$ git clone https://github.com/pinheadmz/bob-wallet.git
$ cd bob-wallet
$ git checkout ledger1
$ npm install

Chạy Bob

./Bob-*.AppImage --no-sandbox

Lỗi (nếu có)

## https://stackoverflow.com/questions/46053414/npm-warn-requires-a-peer-of-but-none-is-installed-you-must-install-peer

npm install --save-dev "{other thing}"

Ví dụ:

npm install --save-dev "eslint@>= 4.12.1"

npm install --save-dev "chai@>= 2.1.2 < 5"

npm install --save-dev "hsd@git+https://github.com/handshake-org/hsd#semver:^2.1.5"

npm install --save-dev "react@^16.14.0"