mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-01-09 14:48:08 -05:00
basically the one dag we had before is now at least one (arbitrarily 5 max) are addressed by their genesis event hash, managed in DAGStore and are sorted chronologically. creating a new EventGraph instance means creating the configured number of dags deterministically and open those trees in DB, created if not existing. prune now drops the oldest tree and adds a new one to the considered trees. each dag is paired with its unreferenced tips and are updated accordingly. fetching an event searches through all dags and fetch the wanted one. in protocol, requesting tips are done by sending the dag_name of which the unreferenced tips are requested (probably breaks comp, still WIP)
darkirc
Check the Installation Guide for more detailed information about the ins and outs of darkirc.
Android build
- Install
android-ndk - Compile
opensslwith the Android toolchain - Compile
sqlcipherwith the Android toolchain and theopenssllib - Compile
darkirc
OpenSSL
$ git clone https://github.com/openssl/openssl
$ cd openssl
$ export ANDROID_NDK_ROOT="/opt/android-ndk"
$ export PATH="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH"
$ ./Configure android-arm64 -D__ANDROID_API__=32
$ make -j$(nproc)
SQLcipher
$ git clone https://github.com/sqlcipher/sqlcipher
$ cd sqlcipher
$ sed -e 's/strchrnul//' -i configure
$ export ANDROID_NDK_ROOT="/opt/android-ndk"
$ export PATH="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH"
$ CC=aarch64-linux-android32-clang \
CPPFLAGS="-I$PWD/../openssl/include" \
LDFLAGS="-L$PWD/../openssl" \
./configure \
--host=aarch64-linux-android32 \
--disable-shared \
--enable-static \
--enable-cross-thread-connections \
--enable-releasemode \
--disable-tcl
$ make -j$(nproc)
$ ./libtool --mode install install libsqlcipher.la $PWD
DarkIRC
$ make darkirc.android64