Overview of Project Purpose =========================== The Yocto Build System is designed to produce a tailored Linux distribution for the embedded platforms. Using Yocto Project and KAS, this system automates the assembly of a custom Linux image that includes hardware support, system services, and applications needed by devices. Key aspects of the project include: - **Custom Image for OTTO Platforms:** A Linux image optimized for otto hardware, including bootloader, kernel, and user-space packages specific to the device. - **Build System (Yocto/KAS):** KAS is used to define and manage the build configuration via YAML files. It sets up the Yocto build environment (Poky, OpenEmbedded layers, etc.) and generates the final image. - **OTA Updates (SWUpdate):** The distribution supports over-the-air updates using SWUpdate (see *OTA Support* section), allowing devices to receive firmware updates remotely. - **Container Support (LXC):** The Linux image includes LXC container support (via the meta-virtualization layer) so that additional applications can be deployed in containers. Project Structure: ------------------ The repository is organized into several directories: - **distro/**: Distribution and policy configuration. - **feature/**: Optional features configuration. - **layers/**: Layer definitions (YAML configs referencing layers like Poky, meta-oe, meta-otto, etc.). - **machine/**: Machine configuration. - **mirror/**: Local mirror configuration. - **product/**: Product-specific configurations. - **site/**: (Placeholder) - **template/**: (Placeholder) Refer to the *Layers* and *Configuration* sections for detailed descriptions of each component.