-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This change removes the `Install and Build Aranya` section in favor of organizing these steps with the integration details.
- Loading branch information
Showing
1 changed file
with
27 additions
and
50 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -93,9 +93,22 @@ most recent version of the following tools: | |
- [patchelf](https://github.com/NixOS/patchelf) | ||
- [cargo-make](https://github.com/sagiegurari/cargo-make?tab=readme-ov-file#installation) | ||
|
||
### Install and Build Aranya | ||
### Integrate Aranya | ||
|
||
Aranya may be integrated into your application using one of the following: | ||
|
||
#### Rust | ||
1. [Rust library](#rust-lib) | ||
2. [C API](#c-api) | ||
|
||
Regardless of the version of the Aranya library being integrated, you will need | ||
the [Aranya Daemon](crates/aranya-daemon/) executable. A prebuilt version is | ||
available for supported platforms in the Aranya | ||
[release](https://github.com/aranya-project/aranya/releases). Otherwise, | ||
build the daemon locally. | ||
|
||
#### <a href name="rust-lib"></a>Rust Library | ||
|
||
First, install the Aranya client. | ||
|
||
##### From this repository: | ||
|
||
|
@@ -105,7 +118,8 @@ Once the source-code is downloaded, navigate to the Aranya project workspace and | |
|
||
`cargo build --release` | ||
|
||
This will build the Aranya client. | ||
This will build the Aranya [client](crates/aranya-client/) and the | ||
[daemon](crates/aranya-daemon/) executable. | ||
|
||
##### From crates.io: | ||
|
||
|
@@ -120,59 +134,19 @@ Or, add it to your project's `Cargo.toml`: | |
aranya-client = { git = "[email protected]:aranya-project/aranya.git" } | ||
``` | ||
|
||
#### C | ||
|
||
Pre-built versions of the library are uploaded (along with the [header file](https://github.com/aranya-project/aranya/blob/main/crates/aranya-client-capi/output/aranya-client.h)) to each Aranya [release](https://github.com/aranya-project/aranya/releases). | ||
|
||
#### Additional build options | ||
|
||
This repository uses `cargo-make` to automate different tasks, including | ||
building the code, documentation and examples. Once the repository is | ||
downloaded and Rust is installed on your device, run the following to install | ||
`cargo-make`: | ||
|
||
`$ cargo install cargo-make` | ||
|
||
Then, navigate to this directory and run the following to build Aranya: | ||
|
||
`$ cargo make build-code` | ||
|
||
Or, build the C API, example and its associated documentation: | ||
|
||
`$ cargo make build-capi` | ||
|
||
Run `$ cargo make` to see a list of all available tasks. | ||
|
||
### Integrate Aranya | ||
|
||
Aranya may be integrated using one of the following: | ||
|
||
1. [Rust library](#rust-lib) | ||
2. [C API](#c-api) | ||
|
||
Regardless of the version of the Aranya library being integrated, you will need | ||
the [Aranya Daemon](crates/aranya-daemon/) executable. A prebuilt version is | ||
available for supported platforms in the Aranya | ||
[release](https://github.com/aranya-project/aranya/releases). Otherwise, | ||
build the daemon locally. | ||
|
||
#### <a href name="rust-lib"></a>Rust Library | ||
|
||
Using the installation instructions above, get the code through this repository | ||
or crates.io and add it to your project. | ||
|
||
Integrate the [client](crates/aranya-client) library into your application. The | ||
Integrate the client library into your application. The | ||
[client's README](crates/aranya-client/README.md) has more information on using | ||
the Rust client. | ||
|
||
#### <a href name="c-api"></a>C API | ||
|
||
Use the [`aranya-client-capi` C API](crates/aranya-client-capi/) or download | ||
a prebuilt version (along with the [header file](https://github.com/aranya-project/aranya/blob/main/crates/aranya-client-capi/output/aranya-client.h)) for your target platform from the | ||
Aranya [release](https://github.com/aranya-project/aranya/releases/) to | ||
integrate into your application using `cmake`. | ||
Pre-built versions of the library are uploaded (along with the [header file](https://github.com/aranya-project/aranya/blob/main/crates/aranya-client-capi/output/aranya-client.h)) to each Aranya [release](https://github.com/aranya-project/aranya/releases). | ||
|
||
A [CMakeLists.txt](https://github.com/aranya-project/aranya/blob/main/examples/c/CMakeLists.txt) | ||
Otherwise, build the [`aranya-client-capi` C API](crates/aranya-client-capi/) | ||
for your target platform. | ||
|
||
Aranya can then be integrated using `cmake`. A | ||
[CMakeLists.txt](https://github.com/aranya-project/aranya/blob/main/examples/c/CMakeLists.txt) | ||
is provided to make it easier to build the library into an application. | ||
|
||
### Run Aranya | ||
|
@@ -235,6 +209,9 @@ Step 7. Call the Fast Channels API from `Member A`'s daemon to send a message. | |
Optionally, call the Fast Channels API from `Member B`'s daemon to send a | ||
message back. | ||
For more details on how Aranya starts and the steps performed in the examples, | ||
see the [walkthrough](https://aranya-project.github.io/aranya-docs/walkthrough/). | ||
## Maintainers | ||
This repository is maintained by software engineers employed at [SpiderOak](https://spideroak.com/) |