mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-26 18:31:52 +00:00
42 lines
1.4 KiB
Markdown
42 lines
1.4 KiB
Markdown
# StartOS Backend
|
|
|
|
- Requirements:
|
|
- [Install Rust](https://rustup.rs)
|
|
- Recommended: [rust-analyzer](https://rust-analyzer.github.io/)
|
|
- [Docker](https://docs.docker.com/get-docker/)
|
|
- [Rust ARM64 Build Container](https://github.com/Start9Labs/rust-arm-builder)
|
|
- Scripts (run within the `./backend` directory)
|
|
- `build-prod.sh` - compiles a release build of the artifacts for running on
|
|
ARM64
|
|
- A Linux computer or VM
|
|
|
|
## Structure
|
|
|
|
The StartOS backend is packed into a single binary `startbox` that is symlinked under
|
|
several different names for different behaviour:
|
|
|
|
- startd: This is the main workhorse of StartOS - any new functionality you
|
|
want will likely go here
|
|
- start-cli: This is a CLI tool that will allow you to issue commands to
|
|
startd and control it similarly to the UI
|
|
- start-sdk: This is a CLI tool that aids in building and packaging services
|
|
you wish to deploy to StartOS
|
|
|
|
Finally there is a library `startos` that supports all of these tools.
|
|
|
|
See [here](/backend/Cargo.toml) for details.
|
|
|
|
## Building
|
|
|
|
You can build the entire operating system image using `make` from the root of
|
|
the StartOS project. This will subsequently invoke the build scripts above to
|
|
actually create the requisite binaries and put them onto the final operating
|
|
system image.
|
|
|
|
## Questions
|
|
|
|
If you have questions about how various pieces of the backend system work. Open
|
|
an issue and tag the following people
|
|
|
|
- dr-bonez
|