buildstream-element-reference

Reference BuildStream `.bst` element variables, kinds, hooks, and systemd paths.

134|27|Updated Nov 16, 2025
One-click install
npx skills add https://github.com/projectbluefin/dakota --skill buildstream-element-reference
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: buildstream-element-reference
Source: https://github.com/projectbluefin/dakota/tree/main/.opencode/skills/buildstream-element-reference
Command: npx skills add https://github.com/projectbluefin/dakota --skill buildstream-element-reference

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a quick and easy reference for understanding and writing BuildStream .bst element files, streamlining the process of defining software components and their build configurations.

Core Features & Use Cases

  • Variable Lookup: Quickly find the expansion and purpose of common BuildStream variables like %{install-root} and %{prefix}.
  • Element & Source Kind Definitions: Understand the different types of elements and sources available in BuildStream and their typical use cases.
  • Command Hook Syntax: Learn how to use command hooks for conditional execution and command manipulation.
  • Use Case: When authoring a new .bst file for a Rust project, you can quickly look up the correct kind (e.g., make + cargo2) and relevant source_kind (e.g., cargo2) to ensure proper configuration.

Quick Start

Consult this skill for BuildStream element kind definitions and their use cases.

Frequently Asked Questions about buildstream-element-reference

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a BuildStream .bst element file for a Rust project?

To write a BuildStream .bst element file for a Rust project, you specify the element kind, such as make combined with cargo2, and define the appropriate source kind like cargo2. This ensures the correct build configuration and dependency resolution for packaging.

What are BuildStream variables used for in .bst files?

BuildStream variables in .bst files are used to define path expansions and configurations, such as %{install-root} and %{prefix}. They provide a standardized way to manage installation paths and system integration during software packaging and image assembly.

What is the difference between element kinds and source kinds in BuildStream?

Element kinds in BuildStream define the build logic and integration methods, while source kinds specify how dependencies are fetched and processed. Understanding both is essential for authoring .bst files that correctly assemble software components into a final image.

How do command hooks work in BuildStream element definitions?

Command hooks in BuildStream element definitions allow for conditional execution and command manipulation during the build process. They provide a mechanism to customize build steps by injecting specific commands at predefined stages of the packaging workflow.

Does BuildStream support systemd integration paths in .bst files?

Yes, BuildStream supports systemd integration paths within .bst element files. This allows developers to define systemd service configurations and units directly during image assembly, ensuring software components are properly integrated with the system manager.

When do I need to use .bst files for software packaging?

You need to use .bst files for software packaging when defining software components and their build configurations for BuildStream. They are required to automate the assembly of reproducible software stacks and system images.