Muthur Command Operating System (MCOS) is a Linux based operating system optimized to host Muthur Command services and managed apps.
MCOS uses Docker as its container engine. By default it deploys the MCIO Supervisor as a container. MCIO Supervisor then controls MC stack services in separate containers. MCOS is not based on a regular Linux distribution like Ubuntu. It is built using Buildroot and targets SBC devices like Raspberry Pi/ODROID as well as x86-64 systems with UEFI.
- Lightweight and memory-efficient
- Minimized I/O
- Over The Air (OTA) updates
- Offline updates
- Modular using Docker container engine
The list of supported hardware is maintained in this repository's board metadata and migration planning documents.
If you just want to use MCOS, follow your project's installation and release notes for the latest images and OTA channels.
On the host OS, the CLI is installed as mc (primary), with mcos-cli and ha
as symlinks to the same wrapper used to reach the Supervisor CLI container.
If you don't have experience with embedded systems, Buildroot or the build process for Linux distributions it is recommended to read up on these topics first (e.g. Bootlin has excellent resources).
Project-specific MCOS documentation is maintained in the mc_os note repository.
- Bootloader:
- Operating System:
- Buildroot LTS Linux
- File Systems:
- Container Platform:
- Docker Engine for running MC components in containers
- Updates:
- RAUC for Over The Air (OTA) and USB updates
- Security:
- AppArmor Linux kernel security module
The Development build GitHub Action Workflow is a manually triggered workflow which creates MCOS development builds. Development builds are published to the configured MCOS artifacts endpoint for the repository environment.