Go to file
Jan Kiszka 4f23045ce8 Add kconfiglib-based menu plugin
This uses the kconfiglib python module to implement simple interactive
configuration for complex layers with many kas options and even variable
input. See the menu.py documentation header for details on the Kconfig
format and its translation to kas.

Rather than using the limited menuconfig implementation of kconfiglib,
this comes with an own, python-newt based version. The permits smooth
integration in the workflow, e.g. to offer an option that directly
triggers a build after completing a configuration. And it comes with a
nicer layout.

Unfortunately, python-newt can't be fulfilled via pip. But it is
available as proper package via common distros. So warn if the package
is missing.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2021-10-09 15:00:05 +02:00
.github ci: Validate shellcheck archive 2021-10-09 15:00:04 +02:00
contrib Dockerfile: Carry oe-git-proxy locally 2021-08-30 21:56:04 +02:00
docs Add kconfiglib-based menu plugin 2021-10-09 15:00:05 +02:00
kas Add kconfiglib-based menu plugin 2021-10-09 15:00:05 +02:00
scripts checkcode: Address shellcheck warnings 2021-01-29 21:00:08 +01:00
tests tests: test_patch: Restore current directory on exit 2021-10-08 17:58:20 +02:00
.dockerignore add dockerignore 2017-06-26 09:29:07 +02:00
.flake8 flake8: Ignore obsolete warning W503 2020-11-13 20:54:20 +01:00
.gitignore Add release artifact to .gitignore 2020-11-20 12:05:51 +01:00
CHANGELOG.md Release 2.5 2021-05-26 07:27:23 +02:00
container-entrypoint kas-container: Add support for checkout and for-all-repos 2021-05-20 16:39:39 +02:00
CONTRIBUTING.md CONTRIBUTING: Drop reference to non-existing maintainer list 2020-12-17 18:13:19 +01:00
Dockerfile Dockerfile: install g++-multilib 2021-10-06 15:03:51 +02:00
Dockerfile.isar Dockerfile: install git-lfs from buster-backports. 2021-08-06 12:56:10 +02:00
kas-container kas-container: Simplify translation of file argument list 2021-08-24 19:19:36 +02:00
kas-docker rename kas-docker to kas-container, leave symlink in place 2020-09-29 08:30:10 +02:00
LICENSE Correct grammar, spelling and copyright year in files 2018-09-05 12:46:35 +02:00
README.rst Switch to github workflow 2020-09-24 13:13:12 +02:00
requirements_rtd.txt requirements_rtd: Add jsonschema module 2020-06-02 10:36:54 +02:00
run-kas Correct grammar, spelling and copyright year in files 2018-09-05 12:46:35 +02:00
setup.py Add kconfiglib-based menu plugin 2021-10-09 15:00:05 +02:00

Setup tool for bitbake based projects
=====================================

+--------------------+
|    Build Status    |
+====================+
| |workflow-master|_ |
+--------------------+
| |workflow-next|_   |
+--------------------+

.. |workflow-master| image:: https://github.com/siemens/kas/workflows/master/badge.svg
.. _workflow-master: https://github.com/siemens/kas/actions?query=workflow%3Amaster
.. |workflow-next| image:: https://github.com/siemens/kas/workflows/next/badge.svg
.. _workflow-next: https://github.com/siemens/kas/actions?query=workflow%3Anext

This tool provides an easy mechanism to setup bitbake based
projects.

The OpenEmbedded tooling support starts at step 2 with bitbake. The
downloading of sources and then configuration has to be done by
hand. Usually, this is explained in a README. Instead kas is using a
project configuration file and does the download and configuration
phase.

Key features provided by the build tool:

- clone and checkout bitbake layers
- create default bitbake settings (machine, arch, ...)
- launch minimal build environment, reducing risk of host contamination
- initiate bitbake build process

See the `kas documentation <https://kas.readthedocs.io>`_ for further details.