build-variant-from-local-kits

Build a Bottlerocket variant image from locally published kits.

5|12|Updated Nov 24, 2025
One-click install
npx skills add https://github.com/cbgbt/bottlerocket-forest --skill build-variant-from-local-kits
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: build-variant-from-local-kits
Source: https://github.com/cbgbt/bottlerocket-forest/tree/main/skills/build-variant-from-local-kits
Command: npx skills add https://github.com/cbgbt/bottlerocket-forest --skill build-variant-from-local-kits

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill enables end-to-end validation by building a Bottlerocket variant image from kits published to a local development registry, reducing reliance on upstream kits for testing.

Core Features & Use Cases

  • Build a complete Bottlerocket variant locally using kits published to the local registry.
  • Configure local registry overrides (Twoliter) and select which kits come from local sources.
  • Validate kit changes end-to-end by producing bootable images for local testing before upstream publication.

Quick Start

Use this skill to build a Bottlerocket variant from local kits, following these steps:

  1. cd bottlerocket
  2. brdev twoliter use-local-deps
  3. Edit Twoliter.toml and set vendor = "local" for the desired kits
  4. ./tools/twoliter/twoliter update
  5. cargo make
  6. cargo make -e BUILDSYS_VARIANT=aws-k8s-1.31
  7. cargo make -e BUILDSYS_ARCH=aarch64
  8. ls -lh build/images/*.img

Frequently Asked Questions about build-variant-from-local-kits

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

FAQPage Schema
How do I build a Bottlerocket variant image from local kits?▼

To build a Bottlerocket variant from local kits, run brdev twoliter use-local-deps, set vendor = "local" in Twoliter.toml, update with twoliter, and then execute cargo make with the desired BUILDSYS_VARIANT and architecture.

What do I need to run before building a Bottlerocket variant locally?▼

Before building a Bottlerocket variant locally, you need a running local registry, a Bottlerocket variant repository, and a Twoliter setup with vendor overrides configured to use local kits.

Why use local kits instead of upstream kits for Bottlerocket builds?▼

Using local kits reduces reliance on upstream sources and enables end-to-end validation by producing bootable images for local testing before you publish kit changes upstream.

Can I specify a target architecture when building a Bottlerocket variant?▼

Yes, you can specify the target architecture by running cargo make with the BUILDSYS_ARCH environment variable, such as setting it to aarch64 to build the variant for that architecture.

Does building a Bottlerocket variant locally require Twoliter and brdev?▼

Yes, building locally requires both brdev and Twoliter. You use brdev to apply local dependencies and Twoliter to update your configuration before running cargo make to build the variant.

Where do I find the built Bottlerocket image after a local variant build?▼

After building the Bottlerocket variant locally with cargo make, the resulting bootable image file is located in the build/images directory and can be viewed using the ls -lh command.