Welcome to the K-Scale Operating System!
cross
toolchain
You can install cross
by running:
cargo install cross
Native build:
cargo build
You can run the kos-stub
endpoint for testing purposes using the command:
cargo run --bin kos-stub
After doing this, you can test the endpoint using the pykos
client:
import pykos
client = pykos.KOS("127.0.0.1")
Cross build for kbot
:
cross build --release --target aarch64-unknown-linux-gnu
RUST_LOG=debug cargo run
You can specify logging levels for individual modules by adding module_name=log_level
to the RUST_LOG
environment variable. For example:
RUST_LOG=debug,krec=warn cargo run
Features are how you specify the specific platform to run K-OS on (e.g. -F kos-kbot when running on K-Bot)
- kos-kbot
- zeroth-01 (not finished)
- sim (not finished)
Reference the existing platforms / features in platforms.
You essentially create another package (Cargo.toml, lib.rs, etc) with the necessary actuator and imu implementations according to the specifications in kos-core
To save trace logs to a file, pass the --log
flag:
cargo run -- --log
- Use
cargo fmt --all
to format the code. - Use
cargo clippy
to check for lint errors. - Use
cargo test
to run the tests. - Use
tracing
for logging. - Use
eyre
to handle errors. - No
unwrap()
orexpect()
.
This project is licensed under the MIT License. See the LICENSE file for details.