Skip to content

First Build

This tutorial walks you through cloning meta-tolomeo, starting the development environment,and building a QEMU development image. By the end you will have a running virtual machine you can SSH into.

This tutorial targets the QEMU x86-64 development image. Hardware target builds are not covered here.


Prerequisites


Clone the repository

git clone git@gitlab.com:DAVEEmbeddedSystems/public/tolomeo-public-projects/meta-tolomeo.git
cd meta-tolomeo

Open in the devcontainer

  1. In VS Code: File → Open Folder, select the cloned directory.
  2. VS Code detects .devcontainer/devcontainer.json and prompts to Reopen in Container. Click it. Alternatively: Command Palette → Dev Containers: Reopen in Container.
  3. The container builds on first run. This takes 5–10 minutes. When the terminal prompt inside the container appears, the environment is ready.

Verify the environment:

kas --version
curl -I https://reed-cache01.tolomeo.io/sstate-cache/
# Expected: HTTP/2 200 (or a redirect)

Set up build keys

The build system requires a keys/ directory in the repository root containing the signing key material. For this tutorial, use the development keys that DAVE provides in devel-keys/:

ln -s devel-keys keys

Warning

The keys in devel-keys/ are publicly known and exist only for build validation. Never use them on a production device. See Generate a Signed Update Package for generating your own key material.

If keys/ already exists as a symlink or directory, skip this step.


Build the development image

kas build kas/tolomeo-qemux86-64_tolomeo-devel_image-devel.yml

A full build from an empty cache takes 2–4 hours. With the remote sstate mirrors populated, most tasks are cache hits and the build completes in 20–40 minutes.

The build is complete when BitBake reports:

NOTE: Tasks Summary: Attempted NNNN tasks of which NNNN didn't need to be rerun and all succeeded.

Build artifacts land in build/tmp-glibc/deploy/images/tolomeo-qemux86-64/.


Boot the image in QEMU

Follow Run Standalone to prepare the working directory and launch QEMU. Use the devel image artifact (image-devel-tolomeo-qemux86-64.rootfs.ext4.gz) in place of the production image referenced in that guide.

Connect via SSH once the VM has booted:

ssh -p 2222 admin@127.0.0.1

Next steps