Koibumi

Koibumi is an experimental Bitmessage client. Note that Koibumi is NOT an official project of The Bitmessage Developers.

Features

Koibumi can connect to the Bitmessage network and relay Bitmessage objects.

It has a GUI. Configuration and monitoring can be performed on the window. If you do not need any GUI, use koibumi-daemon instead.

Currently, this client can send and receive chan and broadcast messages.

By default, network connections are limited to via Tor only. In this case, you need a Tor SOCKS5 proxy running at localhost.

The objects loaded from the network and the list of known node addresses are saved on local file system by using SQLite. Configurations can be saved to the file in the user's configuration directory. The data directory can be changed by specifying a -d option on the command line.

Usage

To install the Koibumi Bitmessage client, issue the command:

sh cargo install koibumi

Or, if you want to display Japanese characters:

sh cargo install koibumi --features unifont_jp

To complete the installation successful, you may need to install some extra libraries such as libvulkan-dev on the host Linux machine.

To run the client, run koibumi command, and a GUI window popups. Possibly, you may need to install mesa-vulkan-drivers on Linux. On the window, you can configure several settings.

To connect to the Bitmessage network, push Start button on the window. When the client connected to some remote nodes, their addresses and user agents are shown on the window. You can monitor how many Bitmessage objects are downloaded and shared.

This client is experimental and under development, so many debug logs are printed on the console. Adding -v option on the command line, more messages are printed.

Note that since database format can be changed among versions, you may have to remove database files located at $HOME/.config/koibumi when trying new version.

Settings

These are default settings:

You can change these settings on the GUI window.

Implementation details

Some of the significant external crates which Koibumi uses:

Koibumi's internal implementation is divided into several crates: