Запуск Karbowanec на Android

Кошелёк Karbowanec можно запустить на Android после компиляции на Андроид с использованием специальных средств.

1. Установите F-droid

Это плеймаркет только со свободными программами (с открытым исходным кодом). Скачайте с официального сайта https://f-droid.org . Для установки этого приложения нужно в настройках разрешить установку из неизвестных источников (из файла f-droid.apk, который вы скачаете).

2. Установите UserLand

Возможно, это приложение есть и на плеймаркете, но в F-Droid оно точно есть. Запустите приложение F-droid и найдите UserLand и установите.

Альтернативой UserLand может быть termux из плеймаркета, но он не такой надёжный, падает при высокой нагрузке (хотя тут, возможно, нагрузки будут небольшие).

3. Создайте сессию Ubuntu в UserLand

Когда вы откроете Userland, найдите сессию Ubuntu и запустите. Логин и пароль можно указать любые.

4. Установите софт разработчика

Когда вы успешно зайдёте в сессию Ubuntu, и появится приглашение с долларом $, введите команды, нажимая "y" каждый раз, когда вас будут спрашивать о продолжении

su -

apt update

apt upgrade

apt install wget curl gcc g++ make build-essential git cmake libboost-all-dev libssl-dev 

теперь разлогиньтесь из рута, то есть нажмите ctrl + d или напишите exit (тогда строка приглашения будет опять с долларом $ а не с решёткой #, как это было у root после команды "su -").

5. Скачайте karbowanec

karbo.org > Начать > Command-Line suit > Исходный код > https://github.com/seredat/karbowanec/

В терминале UserLand под обычным пользователем напишите:

git clone https://github.com/seredat/karbowanec.git

6. Скомпилируйте karbowanec

По обычной инструкции https://github.com/seredat/karbowanec/

cd karbowanec

mkdir build

cd build

cmake ..

cd ..

make

Если компиляция не завершается, возможно, нужно доставить дополнительные пакеты для компиляции.

Результирующие файлы демона и кошелька будет иметь такой адрес:

~/karbowanec/build/release/src/karbowanecd

~/karbowanec/build/release/src/simplewallet

Чтобы пользоваться ими, можно запустить две сессии Ubuntu в UserLand и запустить демона и пользоваться кошельком в другой сессии. Сессии показываются в шторке Андроида (при движении сверху вниз по экрану).

Для работы кошелька потребуется 12Гб под блокчейн.

7. Создать кошелёк, получить ключи, начать майнинг

Читайте в документации 

https://docs.karbo.org/#/

https://docs.karbo.org/#/?id=mining-guides

https://github.com/KarboDuck/karbo-wiki/wiki

 

8. Бутстрап Карбованец на Андроид. Bootstrap Karbowanec на Android

Чтобы ускорить скачивание блокчейна, используйте архив bootstrap:

https://bootstrap.karbo.io/

Скачать можно через компьютер, а затем скопировать на Android, подключив его по USB. Или можно скачать на телефон так:

mkdir blockchain_data

wget https://bootstrap.karbo.io/blockchain-2022-03-08.tar.gz

tar -xzf blockchain-2022-03-08.tar.gz

Используйте актуальную дату, посетив страницу сайта бутстрапа.

Если скачивать через компьютер, то для перенесения файла с компьютера на Андроид, в папку UserLand:

  1. Скопируйте файл с копиьютера в любую папку на Android через USB
  2. Затем откройте файловый менеджер на Android, найдите файл и скопируйте его
  3. Нажмите кнопку Меню верху, найдите внизу UserLand
  4. Вставьте файл в папку UserLand
  5. В сессии UserLand папку блокчейна можно найти тут: /storage/internal/

 

9. Запустить демон karbowanecd с указанием папки блокчейна:

Демон нужен для майнинга или для обращения к демону кошелька. К сожалению, в UserLand нет воможности запускать две сессии параллельно, поэтому для работы с кошельком с одновременным запуском демона используйте walletd (шаг 11).

~/karbowanec/build/release/src/karbowanecd --data-dir /storage/internal/blockchain_data

Для удобства можно сделать символическую ссылку для более удобного запуска:

ln -s ~/karbowanec/build/release/src/karbowanecd ~/karbowanecd

~/karbowanecd --data-dir /storage/internal/blockchain_data

 

10. Майнинг Karbowanec на Android

В сессии Userland, если у вас установлен karbowanec и присутствует папка с блокчейном:

~/karbowanec/build/release/src/karbowanecd --data-dir /storage/internal/blockchain_data --mining-spend-key ВАШ_КЛЮЧ_SPEND --mining-view-key ВАШ_КЛЮЧ_VIEW --mining-threads 6

6 - количество процессов, зависит от числа ядер на устройстве. Можно узнать так: nproc. Или посмотреть в Настройках -> Об устройстве.

 

11. Работа с кошельком Karbowanec на Android

При работе с кошельком на Андроид, можно смотреть баланс адреса, на который вы майните на компьютере, а также можно принимать и отправлять переводы.

В UserLand невозможно запустить две сессии, чтобы в одной работал karbowanecd, а в другой - simplewallet (или greenwallet). Но можно сделать процесс karbowanecd фоновым, добавив значок & в конце команды:

~/karbowanec/build/release/src/karbowanecd --data-dir /storage/internal/blockchain_data

Когда демон полностью прочитает блокчейн и подгрузит нужные данные, появится приглашение консоли, в котором можно запустить simplewallet, для удобства создаим символическую ссылку в домашнюю папку:

ln -s ~/karbowanec/build/release/src/simplewallet ~/simplewallet

~/simplewallet --wallet-file wallet.wallet

где файл wallet.wallet нужно скопировать с компьютера так же, как копировали блокчейн.

Файл кошелька /internal/storage/wallet.wallet предварительно можно загрузить в андроид, как и blockchain_data.

 

12. Красивый адрес Karbowanec

Если вам нужен адрес, который начинается или заканчивается нужной строкой, используйте vanitygen:

https://github.com/KarboDuck/karbo-wiki/wiki/Karbo-address-generator

./vanitygen --prefix Karboha --threads 32 --count 1

 

13. Уведомления о найденных блоках в Телеграм

Если вы майните с помощью karbowanecd, то логи он пишет в файл karbowanec.log тут:

build/release/src/karbowanecd.log

grep 'Found block' karbowanecd.log

2022-Mar-08 13:01:11.438887 INFO    [miner] Found block for difficulty 7540000 at height 724806 v. 5
2022-Mar-08 21:04:51.711299 INFO    [miner] Found block for difficulty 7440000 at height 724927 v. 5

Можно следить за этим логом и отправлять уведомления себе в Телеграм - в чат с ботом.

Для этого создайте бота с помощью https://t.me/botfather, получите его API Key

Напишите этому боту что-либо и выясните id чата, открыв страницу:

https://api.telegram.org/botA_P_I_K_E_Y_H_E_R_E/getupdates

Вместо "A_P_I_K_E_Y_H_E_R_E" вставьте свой API Key. На этой странице будут сообщения в формате jsON, которые бот получил, там можно узнать ... chat: {id ...}.

Теперь запустите процесс слежения за логом и отправки сообщений в чат через вашего бота:

tail -fn0 build/release/src/karbowanecd.log | while read line; do  echo "$line" | grep 'Found block'; if [ $? = 0 ]; then mess=$(echo $line | cut -d' ' -f1,2 | cut -d. -f1); curl -s -H "Accept: application/json" -H "Content-Type:application/json" -X POST --data "{\"chat_id\":\"C_H_A_T_I_D_H_E_R_E\",\"text\":\"$mess\"}" "https://api.telegram.org/botA_P_I_K_E_Y_H_E_R_E/sendMessage"; fi; done &

Замените C_H_A_T_I_D_H_E_R_E и A_P_I_K_E_Y_H_E_R_E на ваши значения.

Я запускаю этот процесс до старта процесса майнинга в bash-скрипте так:

$ cat krb_mining.sh 

#!/bin/sh

## Youni Karbo Miner
##

#send to telegram youni dates block found and log to found_block_date.log
#start background job and get its pid

tail -fn0 build/release/src/karbowanecd.log | while read line; do  echo "$line" | grep 'Found block'; if [ $? = 0 ]; then mess=$(echo $line | cut -d' ' -f1,2 | cut -d. -f1); curl -s -H "Accept: application/json" -H "Content-Type:application/json" -X POST --data "{\"chat_id\":\"C_H_A_T_I_D_H_E_R_E\",\"text\":\"$mess\"}" "https://api.telegram.org/botA_P_I_K_E_Y_H_E_R_E/sendMessage"; fi; done &

log_pid=$!
echo log pid: $log_pid

/home/user/crypto/krb/karbowanec-last/build/release/src/karbowanecd --data-dir /home/user/crypto/krb/blockchain_data --mining-spend-key К_Л_Ю_Ч_Т_Р_А_Т_Ы --mining-view-key К_Л_Ю_Ч_П_Р_О_С_М_О_Т_Р_А --mining-threads 6 #--no-console

echo Try to kill log pid:
echo kill $log_pid
kill $log_pid

В результате получаю такие сообщения:

Также стоит заметить, что майнинг нужно останавливать командой exit в демоне, чтобы скрипт завершился, и процесс слежения за логом был остановлен, иначе (при остановке с помощью CTRL + C) процесс слежения за логом и отправки сообщений в телеграм продолжится, и это приведёт к дублированию сообщений при следующем запуске майнера (если не было перезагрузки).

 

Ссылки

  1. Официальный репозиторий Karbowanec https://github.com/seredat/karbowanec/
  2. Документация Karbowanec https://docs.karbo.org/
  3. Wiki Karbowanec https://github.com/KarboDuck/karbo-wiki/wiki
  4. Бутстрап Karbowanec https://bootstrap.karbo.io/
  5. Подробнее о переносе файлов в UserLand https://github.com/CypherpunkArmory/UserLAnd/wiki/Importing-and-exporti…
Категория