Files
start-os/backend
Aiden McClelland 6ad9a5952e Feature/multi platform (#1866)
* wip

* wip

* wip

* wip

* wip

* wip

* remove debian dir

* lazy env and git hash

* remove env and git hash on clean

* don't leave project dir

* use docker for native builds

* start9 rust

* correctly mount registry

* remove systemd config

* switch to /usr/bin

* disable sound for now

* wip

* change disk list

* multi-arch images

* multi-arch system images

* default aarch64

* edition 2021

* dynamic wifi interface name

* use wifi interface from config

* bugfixes

* add beep based sound

* wip

* wip

* wip

* separate out raspberry pi specific files

* fixes

* use new initramfs always

* switch journald conf to sed script

* fixes

* fix permissions

* talking about kernel modules not scripts

* fix

* fix

* switch to MBR

* install to /usr/lib

* fixes

* fixes

* fixes

* fixes

* add media config to cfg path

* fixes

* fixes

* fixes

* raspi image fixes

* fix test

* fix workflow

* sync boot partition

* gahhhhh
2022-11-29 09:43:54 -07:00
..
2022-09-01 10:32:01 -06:00
2022-11-29 09:43:54 -07:00
2022-01-21 20:35:52 -07:00
2022-11-29 09:43:54 -07:00
2022-10-11 12:15:42 -06:00
2022-11-29 09:43:54 -07:00
2022-01-21 20:35:52 -07:00
2022-10-03 12:13:48 -06:00
2022-01-21 20:35:52 -07:00
2022-09-01 10:32:01 -06:00
2022-01-21 20:35:52 -07:00

embassyOS Backend

  • Requirements:
  • Scripts (run withing the ./backend directory)
    • build-prod.sh - compiles a release build of the artifacts for running on ARM64
    • build-dev.sh - compiles a development build of the artifacts for running on ARM64
  • A Linux computer or VM

Structure

The embassyOS backend is broken up into 4 different binaries:

  • embassyd: This is the main workhorse of embassyOS - any new functionality you want will likely go here
  • embassy-init: This is the component responsible for allowing you to set up your device, and handles system initialization on startup
  • embassy-cli: This is a CLI tool that will allow you to issue commands to embassyd and control it similarly to the UI
  • embassy-sdk: This is a CLI tool that aids in building and packaging services you wish to deploy to the Embassy

Finally there is a library embassy that supports all four of these tools.

See here for details.

Building

You can build the entire operating system image using make from the root of the embassyOS 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
  • ProofOfKeags