Skip to content

Latest commit

 

History

History
94 lines (59 loc) · 2.4 KB

File metadata and controls

94 lines (59 loc) · 2.4 KB

Readme

A quickly sketched tool to generate yocto bitbake recipes from a python requirements file.

Prequisites

Entering the reproducible environment

$ cd /path/to/this/repo
$ nix develop
# ..

Once within the environment, all required dependencies will be available for this tool to run properly.

The above requires that nix is installed and that the flakes feature is enabled.

Usage

Specifying python requirements

Create a ./in-requirements.txt file with the requirements of your choice:

py-pkg-a==2.2.1
py-pkg-b==5.6.1
py-pkg-c

Running the tool

Run the tool as follow:

$ just
# ..
# -> ./out/

You will find the generated yocto bitbake recipes under ./out/recipe and the intermediate python sdist under ./out/sdist.

To do

  • Improve support for optional / extra dependencies.

    Currently, those are all output under a single RDEPENDS:${PN}-extras extra group with enough human readable meta information for the end user to manually classify those later as needed.

    Note that as complex combinations of logical operators are allowed, it would be pretty involved to classify each dependency under its proper extra group.

  • Add support for generating transitive depdencies.

    Currently, this tool only generate recipes explicitly listed in the requirement input file and won't generate anything else.

  • Add support to customize input and output paths.

    Currently, the tool assume input requirements are in file at a hardcoded location (./in-requirements.txt) and produces its outputs under an hardcoded directory (./out/).

Similar tools

License

Licensed under Apache License, Version 2.0 LICENSE.