Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

https://docs.buildstream.build/master/_static/release.svg GitHub Workflow Status https://img.shields.io/pypi/v/BuildStream.svg

What is BuildStream?

BuildStream is a powerful software integration tool that allows developers to automate the integration of software components including operating systems, and to streamline the software development and production process.

Some key capabilities of BuildStream include:

  • Defining software stacks in a declarative format: BuildStream allows users to define the steps required to build and integrate software components, including fetching source code and building dependencies.

  • Integrating with version control systems: BuildStream can be configured to fetch source code from popular source code management solutions such as GitLab, GitHub, BitBucket as well as a range of non-git technologies.

  • Supporting a wide range of build technologies: BuildStream supports a wide range of technologies, including key programming languages like C, C++, Python, Rust and Java, as well as many build tools including Make, CMake, Meson, distutils, pip and others.

  • Ability to create outputs in a range of formats: e.g. debian packages, flatpak runtimes, sysroots, system images, for multiple platforms and chipsets.

  • Flexible architecture: BuildStream is designed to be flexible and extensible, allowing users to customize their build and integration processes to meet their specific needs and tooling.

  • Enabling fast and reliable software delivery: By extensibly use of sandboxing techniques and by its capability to distribute the build, BuildStream helps teams deliver high-quality software faster.

Why should I use BuildStream?

BuildStream offers the following advantages:

  • Declarative build instructions/definitions

    BuildStream provides a flexible and extensible framework for the modelling of software build pipelines in a declarative YAML format, which allows you to manipulate filesystem data in a controlled, reproducible sandboxed environment.

  • Support for developer and integrator workflows

    BuildStream provides traceability and reproducibility for integrators handling stacks of hundreds/thousands of components, as well as workspace features and shortcuts to minimise cycle-time for developers.

  • Fast and predictable

    BuildStream can cache previous builds and track changes to source file content and build/config commands. BuildStream only rebuilds the things that have changed.

  • Extensible

    You can extend BuildStream to support your favourite build-system.

  • Bootstrap toolchains and bootable systems

    BuildStream can create full systems and complete toolchains from scratch, for a range of ISAs including x86_32, x86_64, ARMv7, ARMv8, MIPS.

How do I use BuildStream?

Please refer to the documentation for information about installing BuildStream, and about the BuildStream YAML format and plugin options.

How does BuildStream work?

BuildStream operates on a set of YAML files (.bst files), as follows:

  • Loads the YAML files which describe the target(s) and all dependencies.

  • Evaluates the version information and build instructions to calculate a build graph for the target(s) and all dependencies and unique cache-keys for each element.

  • Retrieves previously built elements (artifacts) from a local/remote cache, or builds the elements in a sandboxed environment using the instructions declared in the .bst files.

  • Transforms/configures and/or deploys the resulting target(s) based on the instructions declared in the .bst files.

How can I get started?

To get started, first install BuildStream by following the installation guide and then follow our tutorial in the user guide.

Running BuildStream on macOS or Windows may work under Docker Desktop, WSL, or Podman Desktop, but it is not officially supported, and CI runs tests only on Linux.

We also recommend exploring some existing BuildStream projects:

If you have any questions please ask on one of our communication channels: - Matrix: #buildstream room on matrix.org - Mailing List: dev@buildstream.apache.org on lists.apache.org

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

buildstream-2.8.0.dev0.tar.gz (2.5 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

buildstream-2.8.0.dev0-cp314-cp314t-manylinux_2_28_x86_64.whl (33.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

buildstream-2.8.0.dev0-cp314-cp314-manylinux_2_28_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

buildstream-2.8.0.dev0-cp313-cp313-manylinux_2_28_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

buildstream-2.8.0.dev0-cp312-cp312-manylinux_2_28_x86_64.whl (33.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

buildstream-2.8.0.dev0-cp311-cp311-manylinux_2_28_x86_64.whl (33.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

buildstream-2.8.0.dev0-cp310-cp310-manylinux_2_28_x86_64.whl (33.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

File details

Details for the file buildstream-2.8.0.dev0.tar.gz.

File metadata

  • Download URL: buildstream-2.8.0.dev0.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for buildstream-2.8.0.dev0.tar.gz
Algorithm Hash digest
SHA256 94f580be8d673a5b9d8e6493f0dc6954460e35d937c015d5f210a9e7c77fd302
MD5 39a0dba310577a20cf00f08f4a03de13
BLAKE2b-256 63f644f05b1acc609ec89234af2e03f9d2bc3b3d41dfb94241230a54891bf9e4

See more details on using hashes here.

File details

Details for the file buildstream-2.8.0.dev0-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for buildstream-2.8.0.dev0-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f25071d9a8b6a4beadea33d4d5ae1227bae38627b79fa8f2949a299b9538df53
MD5 d63c1d5fe6147a27e44a6f3cdd82c25b
BLAKE2b-256 5470754d1a1696cc5be5c7ea99b606ce5493bce0105ac46739ff65592f1c224e

See more details on using hashes here.

File details

Details for the file buildstream-2.8.0.dev0-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for buildstream-2.8.0.dev0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 31a13b9c3384903ce497731b8b3dd462a0b4e47c0140e5282541eb76fd36b363
MD5 78e6370a48d71367bc8db0f075e5403d
BLAKE2b-256 3bd6164c177f18a2bb562690990cd0beebe93f8e085bbe6fbb9aa7087332ac4e

See more details on using hashes here.

File details

Details for the file buildstream-2.8.0.dev0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for buildstream-2.8.0.dev0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c43607bc67cce279156a29e096ff307f0d85a8d22b7550e6f784d9a7d54d3dd2
MD5 d3c5be129679bba9711ed2491d97bff6
BLAKE2b-256 4f6bab83a9f23270cfbb304142ecd6bcf3c9f4e1f27aa34f43217df52c50d2d8

See more details on using hashes here.

File details

Details for the file buildstream-2.8.0.dev0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for buildstream-2.8.0.dev0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9030517b1dbfb1b1ae9d2cc96f0d65e54cd6de0786e4d3506b945b2fc049dde5
MD5 0d532309148a67025f43d1398d71e792
BLAKE2b-256 f152762cfc09e5cdba800bf05d74df87767f8c531ee507f5b4541b560bf47553

See more details on using hashes here.

File details

Details for the file buildstream-2.8.0.dev0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for buildstream-2.8.0.dev0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1777a8d7240f5bcdb5ec543969ce9d9f4c5e88476464404c168ad200fd9c3d21
MD5 a0457a19b1a4e71f8ad20a0f4910594b
BLAKE2b-256 3459ef24f41e6010633dffd715f830fecfb23f78f54d4c299d9b5afeb9ab4dc6

See more details on using hashes here.

File details

Details for the file buildstream-2.8.0.dev0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for buildstream-2.8.0.dev0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3c2d778c6c00c2f22d3e3a056c7f2c5bad217f378d68304cbd9cf488c141eda3
MD5 5373704162a7b5adc29ed76cb845e763
BLAKE2b-256 fece6ca50b7d8fb00bc24d3cb7892c2e0a054596b8c39c5e8f203cc402c0d742

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page