Contractless-GUI-Wallet/README.md

1.6 KiB

Contractless Wallet GUI

This folder contains the early Contractless desktop wallet prototype.

Required Location

This wallet crate must be placed directly inside the Contractless blockchain repository root.

Expected layout:

Contractless/
  Cargo.toml
  src/
  gui_wallet/
    Cargo.toml
    tauri.conf.json
    frontend/
    src/

The wallet depends on the blockchain crate with:

blockchain = { path = ".." }

Because of that, gui wallet/ must be in the same folder that contains the Contractless src/ folder and root Cargo.toml. If the wallet folder is moved somewhere else, the parent .. path will not point at the blockchain crate and the wallet will not build.

Layout

  • frontend/ contains the static HTML, CSS, and JavaScript wallet UI.
  • src/ contains the Rust/Tauri desktop app code.
  • icons/, capabilities/, tauri.conf.json, build.rs, Cargo.toml, and Cargo.lock are the Tauri project files.

Build Check

From gui wallet/:

cargo check
cargo build

Linux Prerequisites

Tauri depends on native Linux desktop libraries. On Ubuntu/Debian, install:

sudo apt update
sudo apt install \
  libwebkit2gtk-4.1-dev \
  libgtk-3-dev \
  libayatana-appindicator3-dev \
  librsvg2-dev \
  libdbus-1-dev \
  pkg-config

Some older distributions may use libwebkit2gtk-4.0-dev instead of libwebkit2gtk-4.1-dev.

Fedora-style systems generally need the equivalent WebKitGTK, GTK, AppIndicator/Ayatana, librsvg, DBus, and pkg-config development packages.

Icons

Tauri expects platform icon assets in icons/.

  • Windows uses icon.ico.
  • Linux expects icon.png.