The policies section lays out the procedures and rules that guide Apertis development.

Images

Apertis has a release lifecycle which is roughly three months long. Each release consists of a round of development, testing and bug fixing, followed by a stable release. The currently recommended versions for evaluation can be found on the download page. Apertis provides images from daily build artifacts through to historic releases (which have reached their end of life) for supported platforms. This allows users and developers to both look at the latest changes as well as look at the historic state, which can be useful when testing just merged fixes and tracking down the origin of a bug respectively. [Read More]

Release Schedule

Apertis has a three month release cycle. Development happens through most of the cycle with emphasis on bug fixing towards the end. The quarterly release cycle was chosen as it fits well with the fast paced development of Apertis. Release timeline The Apertis release cycle starts at the end of the previous release cycle. At this point, new features are proposed, discussed and implemented. The soft feature freeze takes place about 4 weeks before the bug fixing stops. [Read More]

Roadmap

This is a rough list of areas which are planned to be worked on in releases in the near future. This is not a full list and is intended to be used only as a rough guide and is subject to change. 2020 Q3 Concepts Use of Eclipse hawkBit for Apertis updates Addition of NTFS support for offline updates HMI Import of agl-compositor as a reference HMI Infrastructure Move project health checks from Jenkins to GitLab CI pipelines Evaluate need for further testing and monitoring of Apertis infrastructure Move tiny-image-recipe build pipeline from Jenkins to GitLab CI System Update Integration of Eclipse hawkBit as update option Q2 Concepts Integration of OP-TEE Automated OSS compliance Addition of exFAT support for offline updates Documentation Integrated search on www. [Read More]

Hardware Enablement

This page documents what is required from hardware platform (and specifically the software interfaces used) to integrate well into Apertis. For Apertis to easily support a variety of hardware platforms, it is important that a consistent set of user space components can be used across the range of supported devices. To achieve this (in-line with its Upstream First strategy), Apertis relies on upstream interfaces and frameworks to access the hardware. Interfaces that aren't supported upstream (or cannot go upstream for whatever reason) require extra effort to support, test and maintain. [Read More]

HWpack Requirements

This documentation covers the requirements and considerations that should be taken into account when implementing “hardware packs” for the Apertis project. Concepts This section briefly covers the concepts and expectations of the Apertis platform. Image Building Stages Apertis images are built from binary packages, packaged in the .deb format. Building these packages is expected to be carried out from source by the Apertis infrastructure, ensuring all packages dependencies are properly described and reducing the risk of unexpected dependencies. [Read More]

Community

Apertis is a free software project which is designed and developed in the open. The Apertis community is made up of both contributors who work to improve Apertis and users. Join the community The best ways to get in touch with the community are through: Mailing lists The devel mailing list is the place to discuss Apertis development and project If you are interested in adding a new mailing list, please contact listmaster at apertis. [Read More]

Upstreaming

Upstreaming changes made to a piece of Open Source software provides distinct advantages for the author of the changes and the ecosystem of users of software. The author can expect to see: Reduced overhead in on-going maintenance of their code base: With the changes available in the upstream version, the author will no longer need to port changes when upgrading to a newer version of the software. Reduced risk of incompatible changes and/or features being added to the upstream code base: When making local modifications to a code base, there is a risk that at some future point any local changes will fail to apply without significant changes or a comparable feature will be implemented with different semantics requiring either conversion to this feature to be carried out or continuing to carry the local change with much reduced advantages. [Read More]

Coding Conventions

This document specifically relates to software which is or has been created for the Apertis project. It is important that any code added to an existing project utilises the coding conventions as used by that project, maintaining consistency across that projects codebase. Coding conventions is a nebulous topic, covering code formatting and whitespace, function and variable naming, namespacing, use of common GLib coding patterns, and other things. Since C is quite flexible, this document mostly consists of a series of patterns (which it’s recommended code follows) and anti-patterns (which it’s recommended code does not follow). [Read More]

Contribution Checklist

This document covers the steps that should be taken at the various stages of making a contribution to Apertis with the rationale more fully explained in the policy. It covers both those steps to be taken by the contributor as well as the maintainer(s) accepting the contribution on behalf of Apertis. It is presented in this manner to provide transparency of the steps that are taken and the considerations that are made when accepting a contribution into Apertis, be that a modification of an existing component, addition of a new component or concept design. [Read More]

Contributions

This guide covers the expectations and processes for Apertis developers wishing to make contributions to the Apertis project and the wider open source ecosystem. These policies should be followed by all developers, including core and third party contributors. A checklist is provided in conjunction with these policies to aid contributors. Suitability of contributions Like most open source projects, Apertis requires contributions are submitted via a process (which in the case of Apertis is defined below) to ensure that Apertis continues to meet it's design goals and remain suitable for it's community of users. [Read More]