Skip to content

Commit

Permalink
more build docs and docs on rust module s
Browse files Browse the repository at this point in the history
  • Loading branch information
trbutler4 committed Sep 1, 2024
1 parent 946ade6 commit 7b2ce0e
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 0 deletions.
9 changes: 9 additions & 0 deletions docs/src/getting-started/building-the-os.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,15 @@ Baseline build dependencies:
- 100GiB+ of additional free storage space for a typical build of the entire
OS for a multiarch device.

Setup for Debiand GNU/Linux 12 (bookworm) based systems:

```bash
sudo apt update
sudo apt install repo yarnpkg zip rsync
echo 'export PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin' >> ~/.bashrc
source ~/.bashrc
```

More detailed dependiencies and build guide can be found
[here](https://grapheneos.org/build)

Expand Down
35 changes: 35 additions & 0 deletions docs/src/getting-started/rust-android-module.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Rust Modules in Android OS

This will follow the hello rust example from AOSP documentation
[here](https://source.android.com/docs/setup/build/rust/building-rust-modules/hello-rust-example)

Before following this example, make sure your system meets the minimum requirements, and
go through the AOSP setup steps [here](https://source.android.com/docs/setup/start)

use
```bash
lunch aosp_cf_x86_64_phone-trunk_staging-eng
```
for the build command

## Android Services

[Documentaiont](https://developer.android.com/develop/background-work/services)

Main idea: servies are long-running operations in the background that can be accessed mby multiple devices.
This is what we want for the light client, and is how Ethereum Phone implements their light client.

Must be declared in the manifest file:

```html
<manifest ... >
...
<application ... >
<service android:name=".ExampleService" />
...
</application>
</manifest>
```

Services can be started or stopped by calling ```startService()``` and ```stopService()```,
this should be managed by a light client manager app.

0 comments on commit 7b2ce0e

Please sign in to comment.