Index of /


../
libs/                                              14-Aug-2024 20:48                   -
index.yaml                                         14-Aug-2024 20:48                6308
unikraft.yaml                                      14-Aug-2024 20:48                3439

Unikraft Component Index

This repository contains the complete and up-to-date list of official Unikraft microlibraries as well as the meta information about the Unikraft core repository. Each microlibrary and the unikraft core form a component with the build-system of Unikraft itself. Along for use with kraft, this list is used to retrieve information about available repositories which can be used in the Unikraft ecosystem.

Component Structure

Each component is structured in a YAML file using the following meta-data attributes:

Attribute Requirement Description
name Required The name of the component.
type Required The type of component. One of [core, arch, plat, lib and app].
description Required A short description of the component.
repository Required The remote location of the Git repository for the component.
distributions Required See Distributions.

Distributions

Each component can have multiple distributions but at least one, typically these are stable and staging and represent the active branches of the remote repository. For each distribution, the following attributes are set:

Attribute Requirement Description
name Required The name of the distribution, e.g. stable.
unikraft Optional The version of Unikraft compatibile with this component.
version Optional Only required for microlibraries wrapping an external source or the Unikraft core. This is the version of said source.
archive Required The versioned remote location of the component’s archive such as a zip or tarball.
sha256 Optional The SHA256 sum of the remote archive.

Main Index

The main index file contains the complete list of components within the manifest attribute. Each manifest has the following attributes:

Attribute Requirement Description
name Required The name of the component.
type Required The type of component. One of [core, arch, plat, lib and app].
manifest Required The remote location of the manifest (YAML).
sha256 Optional The SHA256sum of the remote manifest file.