Skip to content

Commit 7abaca2

Browse files
gcomnenoderibaucourt
authored andcommitted
Add BitBake getting started walkthrough
1 parent a2fdba8 commit 7abaca2

5 files changed

Lines changed: 105 additions & 0 deletions

File tree

package.json

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,69 @@
222222
"files.trimTrailingWhitespace": false
223223
}
224224
},
225+
"walkthroughs": [
226+
{
227+
"id": "bitbake.getStarted",
228+
"title": "Get Started with BitBake",
229+
"description": "Configure the BitBake extension and learn the main VS Code features for Yocto Project workspaces.",
230+
"steps": [
231+
{
232+
"id": "bitbake.getStarted.host",
233+
"title": "Check your host setup",
234+
"description": "Check that your workspace runs on a supported Linux host.",
235+
"media": {
236+
"markdown": "walkthroughs/host-setup.md"
237+
}
238+
},
239+
{
240+
"id": "bitbake.getStarted.dependencies",
241+
"title": "Install the required dependencies",
242+
"description": "Install the required host packages and locale before starting BitBake from the extension.",
243+
"media": {
244+
"markdown": "walkthroughs/dependencies.md"
245+
}
246+
},
247+
{
248+
"id": "bitbake.getStarted.settings",
249+
"title": "Configure BitBake settings",
250+
"description": "Open VS Code Settings and search for `BitBake`. Configure the basic workspace settings needed to start BitBake, such as `bitbake.pathToBuildFolder`, `bitbake.pathToEnvScript`, and `bitbake.pathToBitbakeFolder`.",
251+
"media": {
252+
"image": "images/config-picker.png",
253+
"altText": "BitBake configuration picker"
254+
},
255+
"completionEvents": [
256+
"onCommand:bitbake.pick-configuration",
257+
"onSettingChanged:bitbake.pathToBuildFolder",
258+
"onSettingChanged:bitbake.pathToEnvScript",
259+
"onSettingChanged:bitbake.pathToBitbakeFolder"
260+
]
261+
},
262+
{
263+
"id": "bitbake.getStarted.language",
264+
"title": "Try language features",
265+
"description": "Open a BitBake recipe and try language server features such as hover information, completion, and go to definition.",
266+
"media": {
267+
"markdown": "walkthroughs/language-features.md"
268+
}
269+
},
270+
{
271+
"id": "bitbake.getStarted.gui",
272+
"title": "Use BitBake views and commands",
273+
"description": "Use the Recipes Explorer and command links to try common BitBake extension actions.",
274+
"media": {
275+
"markdown": "walkthroughs/bitbake-gui.md"
276+
},
277+
"completionEvents": [
278+
"onView:bitbakeRecipes",
279+
"onCommand:bitbake.watch-recipe",
280+
"onCommand:bitbake.rescan-project",
281+
"onCommand:bitbake.terminal-profile",
282+
"onCommand:bitbake.build-recipe"
283+
]
284+
}
285+
]
286+
}
287+
],
225288
"taskDefinitions": [
226289
{
227290
"type": "bitbake",

walkthroughs/bitbake-gui.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Use BitBake views and commands
2+
3+
Use the actions below to try the main BitBake UI features:
4+
5+
- [Watch recipe (track recipe in the workspace)](command:bitbake.watch-recipe)
6+
- [Rescan project](command:bitbake.rescan-project)
7+
- [Open BitBake terminal](command:bitbake.terminal-profile)
8+
- [Build recipe](command:bitbake.build-recipe)
9+
10+
The Recipes Explorer shows recipes you choose to track, not every recipe in the workspace.
11+
12+
![BitBake recipes view](../images/recipe-view.png)

walkthroughs/dependencies.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Install the required dependencies
2+
3+
Install the host packages required by the [Yocto Project quick build guide](https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html) before using BitBake from this extension.
4+
5+
Make sure an `en_US.UTF-8` locale is available.
6+
7+
On Ubuntu 24.04 and newer, BitBake may also require an AppArmor exception for user namespaces. See the Yocto Project documentation for the current distribution-specific requirements.

walkthroughs/host-setup.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Check your host setup
2+
3+
This extension is designed for BitBake workspaces on Linux hosts.
4+
5+
For the best experience, use one of the Linux distributions supported by the [Yocto Project quick build guide](https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html).
6+
7+
Windows users should run BitBake from a Linux environment, such as WSL.

walkthroughs/language-features.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Try language features
2+
3+
Open a BitBake recipe file such as a `.bb`, `.bbappend`, or `.bbclass` file.
4+
5+
This extension can help with:
6+
7+
- syntax highlighting for BitBake files
8+
- hover information for known BitBake variables
9+
- context-aware completions
10+
- go to definition for recipes, classes, includes, and symbols
11+
12+
![BitBake hover information](../images/hover-information.gif)
13+
14+
Completions are context-aware and use information from the parsed BitBake workspace. After the extension is configured and the project has been scanned, suggestions become more useful for common BitBake statements such as `inherit`, `require`, and `include`.
15+
16+
![BitBake context-aware completions](../images/directive-statements.gif)

0 commit comments

Comments
 (0)