Development

On this site

External links

Thanks for considering contributing to Ironclad, it means a lot.

There are several ways one can help the Ironclad project, from writing and correcting documentation to contributing source code. A great way to help Ironclad as well is sharing it with people that may find it interesting!

Finding what to contribute

For all of Ironclad's projects, like ironclad itself, this website, and util-ironclad, open tasks, along with their progress, effort required, and priority, are tracked on the Savannah task manager (Submit a new item). Feel free to read the available items to give input, take the lead and contribute, or submit your own items.

Testing changes

For testing changes to Ironclad itself, one will need a system running Ironclad. Our recommendation is using Gloire in a virtual machine or real hardware to test modifications. For a guide on how to modify Gloire's Ironclad, building images with custom kernels, and testing them, please check this article.

Submitting changes

One can send a patch to any of the Ironclad's Patch Manager (create an item) or the project's mailing lists as well.

When submitting contributions, only contributions licensed under the GPL, or alternatively, a GPL-compatible license, will be accepted.

In order to ensure this is the case, submitted patches will need to certify their work by accepting the project's Developer Certificate of Origin (DCO). This is done by either adding Signed-off-by to the patch, either manually or using git's -s flag, or by stating compliance in the patch submission.

This is not the same as a CLA, no copyright assignment is done, and the contributor keeps each and every right over their contribution. Individual contributor copyright is one of the core pillars of free software. This process only ensures that legal code is submitted, and gives a bit of legal shielding for the project if that is not the case.

Development contact

Ironclad has several mailing lists and official servers and services for users as well as developers to talk with each other and coordinate, feel free to check them out at the community page.

Userland development

A kernel is really dependent on its user programs. Here is a list of projects that are a great option to get involved with, without having to do kernel development: