Skip to content

Latest commit

 

History

History
47 lines (34 loc) · 1.23 KB

File metadata and controls

47 lines (34 loc) · 1.23 KB

Contributing

Linux Development

Ecash App uses nix and nix flakes to manage dependencies and build the project.

First, install nix

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install

Then enter the nix developer environment.

nix develop

To generate the Flutter bindings for the rust code, simply run

just generate
just build-linux

To run the app on Linux, simply run

just run

Done! This will launch Ecash App on Linux.

Testing

Both suites run on every pull request via .github/workflows/test.yml and .github/workflows/checks.yml. Run them locally before opening one:

just test                          # Flutter/Dart tests in test/
cd rust/ecashapp && cargo test     # Rust tests, in #[cfg(test)] modules

The same workflows also gate cargo fmt --check, cargo clippy -- -D warnings, dart format --set-exit-if-changed lib/, and ./scripts/check-translations.sh. Together these are much faster than a platform build, so prefer them for verifying a change.