awesome-yocto-project

Custom Linux distro maker

A collection of resources and tools to help developers create custom Linux distributions using Yocto Project

It's not an embedded Linux Distribution, It creates a custom one for you.

GitHub

50 stars
6 watching
7 forks
last commit: 3 months ago
Linked from 1 awesome list


Awesome Yocto Project / Books

Embedded Linux Development using Yocto Projects (2nd edition, 2017) Short 162 pages long read
Embedded Linux Development Using Yocto Project Cookbook (2nd edition, 2018) 456 pages long read
Embedded Linux Development with Yocto Project (2014) Short 142 pages long read
Embedded Linux Projects Using Yocto Project Cookbook (2015) 324 pages long read
Embedded Linux Systems with the Yocto Project (2016) 480 pages long read
Learning Embedded Linux Using the Yocto Project (2015) 334 pages long read
Mastering Embedded Linux Programming: Create fast and reliable embedded solutions with Linux 5.4 and the Yocto Project 3.1 (3rd edition, 2021)
Yocto for BeagleBone Black (2015) Short 144 pages long read specific to the BeagleBone Black
Yocto for Raspberry Pi (2016) Short 214 pages long read specific to the Raspberry Pi

Awesome Yocto Project / Development tools

autobuilder-worker-prereq-tests Checks if all needed configuration is present on new autobuilder workers
bitbake-prserv-tool
bitbake-whatchanged Print what will be done between the current and last builds
buildhistory-collect-srcrevs Collects recorded SRCREV values from buildhistory and reports on them
buildhistory-diff Reports significant differences in the buildhistory repository since a specific revision
buildstats-diff Compares buildstats from two different builds
combo-layer
combo-layer-hook-default.sh

Awesome Yocto Project / Development tools / contrib

bbperf/bb-matrix-plot.sh Generates tree views from .dat files generated with bb-matrix.sh
bbperf/bb-matrix.sh Generates .dat file with image build statistics (core-image-sato) considering all combinations of BB_RANGE and PM_RANGE values
bbperf/buildstats-plot.sh Visualizes data generated with buildstats.sh
bbperf/buildstats.sh Generates statstics about builds
bbvars.py Checks for undocumented variables
build-perf-test-wrapper.sh Initializes build environment, runs oe-build-perf-test and archives the results
ddimage Writes an image to a device
devtools-stress Stress tests devtools
dialog-power-control
documentation-audit.sh Performs an audit of which packages provide documentation and which are missing -doc packages
graph-tool
list-packageconfig-flags.py List info w.r.t. PACKAGECONFIG flags and recipes
oe-build-perf-report-email.py Sends build performance test report via email
patchreview.py
patchtest.sh
serdevtry
test_build_time.sh Regression test build performance
uncovered Finds python modules uncovered by oe-seltest
verify-homepage Verifies HOMEPAGE values for all recipes in the current configuration

Awesome Yocto Project / Development tools

cp-noerror Copies directories recursively
create-pull-request Prepare a series of patches and a cover letter in an appropriate and consistent format for submission to Open Embedded and The Yocto Project, as well as to related projects and layers
crosstap Builds a systemtap script for a given image, kernel
devtool OpenEmbedded Development tool
kas 391 8 days ago Setup tool for bitbake based projects
oe-build-perf-report Generates build performance test results
oe-build-perf-test Tests build performance
oe-check-sstate Queries which tasks will be restored from sstate
oe-depends-dot
oe-git-archive Commits data to git and pushes upstream
oe-git-proxy
oe-pkgdata-util
oe-publish-sdk
oe-pylint Runs pylint3 against our common python module spaces and print a report of potential issues (for Yocto Project development)
oe-run-native
oe-selftest Executes automated tests for different bitbake tools (for Yocto Project development)
oe-test OpenEmbedded test tool (For Yocto Project development)
oe-trim-schemas Removes unneeded schema locale translations from gconf schema files
opkg-query-helper.py opkg query helper utility
pybootchartgui Visualizes and analyzes the GNU/Linux boot process
pythondeps Determines dependencies of python scripts or available python modules in a search path
recipetool Creates recipes
relocate_sdk.py Called by the SDK installer script, replaces the dynamic loader path in all binaries and also fixes the SYSDIR paths/lengths and the location of ld.so.cache in the dynamic loader binary
resulttool Manipulates (merge, etc.) OEQA test result json files
rootfs_rpm-extract-postinst.awk
rpm2cpio.sh
runqemu Handles running OE images standalone with QEMU
runqemu-addptable2image Adds a partion table to an ext2 image file
runqemu-export-rootfs
runqemu-extract-sdk Extracts an SDK image tarball using pseudo, and stores the pseudo database in var/pseudo within the rootfs
runqemu-gen-tapdevs Creates a "bank" of tap network devices that can be used by the runqemu script
runqemu-ifdown QEMU network configuration script to bring down tap devices
runqemu-ifup QEMU network interface configuration script to bring up single tap device (alternative to runqemu-gen-tapdevs)
send-error-report Sends an error report (if the report-error class was enabled) to a remote server
send-pull-request Sends a patch series prepared by the create-pull-request script to Open Embedded and The Yocto Project, as well as to related projects and layers
SPDX Online Tool Upload and parse SPDX documents for validation, comparison and conversion and search SPDX license list
sstate-cache-management.sh sstate cache management utilities to e.g. remove dublicated files
sstate-diff-machines.sh Compares sstate checksums between MACHINES
sstate-sysroot-cruft.sh Used to find files installed in sysroot which are not tracked by sstate manifest
sysroot-relativelinks.py Takes a sysroot directory and turns all the abolute symlinks and turns them into relative ones such that the sysroot is usable within another system
task-time Reports time consumed for one or more task
test-reexec Tests w.r.t. task re-execution
test-remote-image Tests public autobuilder images on remote hardware

Awesome Yocto Project / Development tools / tiny

dirsize.py Displays details of the root filesystem size, broken up by directory
ksize.py Displays details of the kernel build size
ksum Generates a combined summary of vmlinux and module sizes for a built kernel, as a quick tool for comparing the overall effects of systemic tinification changes

Awesome Yocto Project / Development tools

verify-bashisms Verifies bash code
wic Generates bootable images
yocto-check-layer Checks layer in a potentially contaminated environment
yocto-check-layer-wrapper Checks layer in a clean environment

Awesome Yocto Project / Documentation / Intro

Yocto Project Quick Build
What I Wish I'd Known
Transitioning to a Custom Environment

Awesome Yocto Project / Documentation / Development Manuals / How Tos

Yocto Project Overview and Concepts Manual
Yocto Project Development Tasks Manual
Yocto Project Board Support Package (BSP) Developer's Guide
Yocto Project Profiling and Tracing Manual
Yocto Project Linux Kernel Development Manual
Yocto Project Application Development and the Extensible Software Development Kit (eSDK)

Awesome Yocto Project / Documentation / Tools Manuals

Toaster User Manual
BitBake User Manual

Awesome Yocto Project / Documentation / Reference Manuals

Yocto Project Reference Manual
Yocto Project Mega Manual

Awesome Yocto Project / Documentation / Misc

Yocto Project Wiki

Awesome Yocto Project / Online Courses

Raspberry Pi with embedded Linux made by Yocto (Udemy)
Yocto Embedded Linux with the Raspberry Pi (Udemy)

Awesome Yocto Project / Layers

OpenEmbedded Layers Index
OpenEmbedded Layer Index - Distros
OpenEmbedded Layer Index - Classes
OpenEmbedded Layers Index - Machines

Awesome Yocto Project / Services

CVE Services API The CVE Services API supports automation tooling for the CVE Program
RunSafe’s Alkemist Remotely deployable binary runtime application self-protection (RASP) and Moving Target Defense (MTD) methods to immunize Yocto distributions

Awesome Yocto Project / Presentations / 2024

video The Cyber Security Act: Navigating Its Impact on Yocto-Based Products (Embedded Open Source Summit)
video The Cyber Resilience Act and Yocto based devices

Awesome Yocto Project / Presentations / 2023

video Yocto Project/OpenEmbedded Meets Security (Embedded Open Source Summit)

Awesome Yocto Project / Presentations / 2022

video Detecting and fixing CVE security issues in yocto based embedded Linux distribution (Yocto Project Summit)

Awesome Yocto Project / Presentations / 2018

slides Buildroot vs Yocto: Differences for Your Daily Job (Embedded Linux Conference Europe) /
slides Building Container Images with OpenEmbedded and the Yocto Project / - About build bootstrap containers, Alpine-like container images, application container images and nested application sandboxes
slides Debian and Yocto: State of the Art (Embedded Linux Conference) / - About nneta-elbe, isar, meta-debian and meta-eid
slides Living on master: Using Yocto Project, Jenkins and LAVA for a rolling release (Embedded Linux Conference) /
slides OpenEmbedded/Yocto on RISC-V - New Kid on the Block (Embedded Linux Conference) /
slides Real-World Yocto: Getting the Most out of Your Build System /
slides poky-tiny and Beyond, or Trying to put the Yocto in Yocto Project (Embedded Linux Conference)
slides Creating Your Own Tiny Linux Distribution Using Yocto: Keeping it Small With Poky-Tiny / - About the poky-tiny and petalinux-tiny distribution based images which are small and boot fast
slides Why the Yocto Project for My IoT Project /
slides Working with the Linux Kernel in the Yocto Project (Embedded Linux Conference) /

Awesome Yocto Project / Presentations / Misc

Yocto Project on Vimeo Playlist with very basic, short, older screencasts about workflow, toaster and hob

Awesome Yocto Project / Presentations / Security

Linux Kernel Self-Protection Project - Guidelines

Awesome Yocto Project / Trainings / 2019

blog post A practical guide to BitBake /

Awesome Yocto Project / Trainings / 2018

slides Workshop: Yocto Project, an automatic generator of embedded linux distributions / - Shows ow to use the CROPS poky container

Awesome Yocto Project / Trainings / 2017

Yocto Project Developer Day

Backlinks from these awesome lists:

0