darkfi bcdb969981 app/drk: make the balances_updated signal return the actual data so we avoid a double roundtrip calling get_balance, cache the balances so we avoid sending the signal on every sync update and simplify/flatten the code in src/main.rs updating the UI. 1 dzień temu
..
assets 1ed1dd35fc app: final bg vid tweaks for release. darken bg on actual chats with a subtle gradient, diff sizes for mobile and desktop. 9 miesięcy temu
data 17e4310b36 app/menu: add new icons / shapes for channel and contact button 1 dzień temu
gui c2cddbd67f app/darkirc: add dnet capability to p2p (viewable thru scenegraph) 1 tydzień temu
java 572ddeba22 app: on android use system long press timeout otherwise 400ms consistently for long holds everywhere 2 dni temu
pydrk a76639f020 app: remove old gfx simulator and associated utilities (trax), and move py scripts to script/ 3 tygodni temu
release 037172617d app: windows automated build script 7 miesięcy temu
script f712d1b31c app: re-enable chat! 3 tygodni temu
src bcdb969981 app/drk: make the balances_updated signal return the actual data so we avoid a double roundtrip calling get_balance, cache the balances so we avoid sending the signal on every sync update and simplify/flatten the code in src/main.rs updating the UI. 1 dzień temu
.gitignore 4e8f200222 app: Add .zip and assets to gitignore 8 miesięcy temu
Cargo.lock 346d2b818e app/chatview: URLs are clickable and call xdg-open (or platform equivalent) 1 tydzień temu
Cargo.toml 346d2b818e app/chatview: URLs are clickable and call xdg-open (or platform equivalent) 1 tydzień temu
Dockerfile 43757446e3 app: remove AR and RANLIB envs from Dockerfile 1 miesiąc temu
Dockerfile.windows 8c42cc1bb3 app: add missing Dockerfile.windows 7 miesięcy temu
Makefile bc5aed1555 app: fix broken path in Makefile 1 dzień temu
README.md e16d3ae864 app/chatview: android fix clicking URLs and unselecting when single tapping during text selection mode 1 tydzień temu
build.rs 4aaf35df7a app: update to NDK 29 1 miesiąc temu
quad.toml 6e23e98d26 app: replace androidx with just normal android classes so we dont need to bundle androidx jar 7 miesięcy temu
rust-toolchain.toml 33d18f11dd app: migrate from nightly to stable toolchain 1 rok temu

README.md

Unix (Linux/Mac)

Install rustup and cargo install cargo-limit, then run:

make

Windows

Install rustup and follow the instructions.

If you get the error "VCRUNTIME140.dll was not found", then install Microsoft Visual C++ Redistributable.

Android

Make sure you have podman installed. Then run:

# You only need to build the container once
podman build -t apk .

make android

To debug any issues, you can enter an interactive terminal using make podman-cli.

To delete everything, run podman system reset.

Users who prefer to build locally can follow the commands in the Dockerfile. Note that the build.rs hardcodes the SDK/NDK paths so either you follow it exactly (recommended) or modify build.rs.

GrapheneOS

$ adb shell pm list users
    UserInfo{10:Work:30}
$ adb install --user 10 darkfi-app.apk

ADB Over Wifi

Useful for reading the logs without having to be plugged in. First get your local IP addr using adb shell ip -f inet a show wlan0. Make sure "Wireless debugging" is enabled in Developer options. Then run:

adb tcpip 5555
adb connect IPADDR

Copying the APK takes a long time over wifi so best to install APK via USB, then use this just for debugging the app.

In the Makefile, make sure to put the USB device for ADB_DEVICES so the ADB commands work over USB.

Useful Dev Commands

This is just for devs. Users ignore this.

Debugging Missing Symbols

"hb_ft_font_create_referenced"

nm libharfbuzz_rs-5d6b743170eb0207.rlib | grep hb_ | less

Resolve Dependency Issues

cargo tree --target aarch64-linux-android --invert openssl-sys

Examine the APK

apktool d target/android-artifacts/release/apk/darkwallet.apk -o dw-apk