Skip to content

cypherstack/tor

 
 

Repository files navigation

tor

foundation-Devices/tor is a multi-platform Flutter plugin for managing a Tor proxy. Based on arti.

Getting started

Use rustup, not homebrew. Install toolchain 1.74.

Install cargo ndk

cargo install cargo-ndk

Cargokit

Cargokit handles building, just flutter run it or run it in Android Studio or VS Code (untested).

To update Cargokit in the future, use:

git subtree pull --prefix cargokit https://github.com/irondash/cargokit.git main --squash

Development

To generate tor_ffi_plugin.h C bindings for Rust, cbindgen --config cbindgen.toml --crate tor-ffi --output target/tor_ffi_plugin.h or cargo build in native/tor-ffi to produce headers according to build.rs. To generate tor_bindings_generated.dart Dart bindings for C, flutter pub run ffigen --config ffigen.yaml. You will probably need to manually edit the Tor class to be final.

Example app

flutter run in example to run the example app

See example/lib/main.dart for usage. Must run the build script for your platform first.

Releases

No releases published

Packages

No packages published

Languages

  • Dart 60.8%
  • CMake 13.3%
  • C++ 12.1%
  • Rust 4.4%
  • Ruby 3.2%
  • Shell 2.2%
  • Other 4.0%