/obyte-gui-wallet

Unstoppable money

Primary LanguageJavaScriptMIT LicenseMIT

Obyte is a wallet for storage and transfer of decentralized value. See obyte.org.

Binary Downloads

Obyte.org

Installation

  1. Install Node.js, preferrably somewhat latest version. If you already have another version of Node.js installed, you can use NVM to keep both. Install Yarn.
nvm install 16
nvm use 16
npm install -g yarn
  1. Then you need build tools to rebuild native modules for Electron (secp256k1 atleast, and some more on Windows platforms). Basically you need C++ build tools and Python2.7.

    • On Ubuntu-like platforms and other Linux:
    sudo apt install python g++ make
    • On macOS you need to install XCode and Command Line Tools, Python2.7 is already installed in your system. After installing XCode, run:
    xcode-select --install
    • On Windows you need C++ Build Tools 2015 or 2017 (not later) and Python2.7, everything can be installed via one command:

      • Run cmd.exe with Administrator privileges and run: yarn global add windows-build-tools. This will take some time, be patient.
  2. Now clone the source:

git clone https://github.com/byteball/obyte-gui-wallet.git
cd obyte-gui-wallet

If you are building for testnet, switch to testnet branch:

git checkout testnet

Build Obyte:

yarn

Run Obyte:

yarn start

Web Inspector

To open Chrome Dev Tools (web inspector) inside your currently running Obyte application, press Control-I (Command-I for Macs).

Build Obyte App Bundles

You need NPM to be at least version 7, so run npm -v to check your currently installed version, and if it has lower version, update: yarn global add npm@7. All app bundles will be placed at ../obytebuilds dir.

Android

  • Install java 21 (openjdk 21). Other versions might also work but they were not tested.
  • Install Android SDK (install Android Studio and use its setup wizard to install the latest SDK), then put export ANDROID_HOME=~/Library/Android/sdk inside your ~/.zshrc or ~/.bash_profile, then yes | $ANDROID_HOME/tools/bin/sdkmanager --licenses
  • Install Cordova yarn global add cordova
  • Install Gradle (macOS: brew install gradle)
  • Run make android-debug (make android-prod for the release version)

iOS

  • Install Xcode
  • Install Cordova yarn global add cordova
  • Install ios-deploy yarn global add ios-deploy
  • Install CocoaPods brew install cocoapods, then pod setup
  • Run make ios-debug (make ios-prod for the release version)
    • In case of DeviceSupport missing error, run cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ && sudo ln -s 10.3.1\ \(14E8301\)/ 10.3
    • If you encounter 'bitcore' not found after app launch, install it yarn add bitcore-lib, then rerun make again.
    • On code signing error, open Xcode project ../obytebuilds/project-IOS/platforms/ios in Xcode, open project properties, select Obyte target and set your AppleID account as a team. Xcode may also ask you to change bundle identifier to be unique, just append any random string to 'org.byteball.wallet' bundle identifier.
    • Never open Xcode project using .xcodeproj file, just open the directory ../obytebuilds/project-IOS/platforms/ios in Xcode instead

macOS

  • yarn dist:macarm64 or yarn dist:macx64

Windows

  • yarn dist:winx64

Linux

  • yarn dist:linuxx64 or yarn dist:linuxarm64

Obyte Backups and Recovery

Obyte uses a single extended private key for all wallets, BIP44 is used for wallet address derivation. There is a BIP39 mnemonic for backing up the wallet key, but it is not enough. Private payments and co-signers of multisig wallets are stored only in the app's data directory, which you have to back up manually:

  • macOS: ~/Library/Application Support/obyte
  • Linux: ~/.config/obyte
  • Windows: %APPDATA%\obyte

Translations

Obyte uses standard gettext PO files for translations and Crowdin as the front-end tool for translators. To join our team of translators, please create an account at Crowdin and translate the Obyte documentation and application text into your native language.

To download and build using the latest translations from Crowdin, please use the following commands:

cd i18n
node crowdin_download.js

This will download all partial and complete language translations while also cleaning out any untranslated ones.

Support

Credits

The GUI is based on Copay, the most beautiful and easy to use Bitcoin wallet.

License

MIT.

Donations

We accept donations through Kivach and forward a portion of the donations to other open-source projects that made Obyte possible.

Kivach