Skip to content

AngryMane/bbclient

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BBClient

BBClient provides command interface for bitbake server.

The typical use case is as follows. You can do it via shell or python easily.

  • Get recipe variable value
  • Get layer info
  • Get image recipes
  • Get all the packages
  • Start a task of packages

For example, see below.
Please note that before using bbclient in shell, you have to initialize env by oe-init-build-env.

# Please note that before using bbclient in shell, you have to initialize env by oe-init-build-env.
$ source oe-init-build-env
$ bbclient find_best_provider gcc
[null, null, null, "/PATH/TO/POKY/meta/recipes-devtools/gcc/gcc_12.1.bb"]

You can do the same with python.

# get recipe file path for specified package
ret: List[str] = client.find_best_provider("gcc")
target_recipe_file_path: str = ret[3]

# parse the recipe file
data_store_index: int = client.parse_recipe_file(target_recipe_file_path)

# get variable in the recipe file
ret: Any = client.data_store_connector_cmd(data_store_index, "getVar", "PN")

System Requirements

  • python: 3.7 or later
  • yocto: dunfell or kirkstone or main

Please note that this command(and also bitbake) doesn't support dunfell with python3.10.
This is because collections.Iterable has not been removed, so dunfell with python3.10 will cause exception.

Installation

pip3 install bbclient

Document

Note For using with shell, we have not documented yet. Please see $bbclient --help.

About

provides utility commands for bitbake

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages