A quick welcome to start yps2022.05 on the beginner/hands-on day.
a session to help people setup their Digital Ocean account
This seminar is for people who are new to using the Yocto Project and want an introduction to the basics of how to use bitbake and start to build images to be used with QEMU.
A live coding session with Josef on extending MACHINE and DISTRO.
Hands-on session using devtool, the Yocto Project tool that helps you create/update recipes and work with recipe source trees. You will learn how to create new recipes based upon a source tree; modify the sources of a recipe, create patches and update the recipe to apply them; upgrade a recipe to a new upstream version, and more.
This seminar is for people who are new to using the Yocto Project and want an introduction to the basics of layers, building images, and other initial topics
The Linux kernel is a key component of your board support package (BSP). In this session, we will discuss various practical ways of building the Linux kernel in the Yocto Project. We will cover building a traditional git tree and defconfig, an out-of-tree kernel module, a linux-yocto based kernel, adding kernel fragments for additional functionality and other common workflow patterns. This session will be a combination of a talk and hands-on labs.
A chance for all the attendees to meet socially and show off their drink.
A quick welcome on the first day of presentations.
Recipes and configurations are the building blocks of Yocto distributions and Bitbake is the working machine that takes these blocks and assembles them. Let's explore the role Bitbake has to fulfil to execute the Yocto Project workflow and build your custom Linux distribution.
Ever wondered how to override some variables or files for a given architecture? Ever seen :append or heard of OVERRIDES mechanism before? Were you ever surprised by the content of one variable? This talk is for you!
In this talk we will discuss detailed analysis of the Yocto build on the resource-per-tool level. Understanding where the time goes in a build and what are the bottlenecks in your implementation can help with choosing the right sizing for your build machine or build grid.
Using the example of an Automotive Grade Linux build, We will analyze actual CPU time spent on compiling, packaging and performing other common tasks, gaining insights on what makes builds take as much as they do, which build-time resource constraints exist, and how they could be alleviated.
We have done Yoga inside, we have played with Legos in the basement. Now its spring, the sun is shining. Let's just go outside and get some fresh air.
Building and testing Yocto in an automated fashion with GitHub Actions and self hosted runners
Yocto/OE is a powerful tool which can cover a wide array of tasks related to generating and developing software for a wide range of devices. All that power comes with the cost which has to be paid in the form of complexities when dealing with the system. To put it simply, Yocto is not simple.
One complexity one has to deal with in Yocto is managing layers and local configuration files when starting a new project. The “repo tool” and git submodules combined with a skilled use of TEMPLATECONF do alleviate some problems, but intuitive was never quite the word to describe that flow.
kas adds a layer of abstraction making it much easier to share a yocto project and help you get started with a build. At the same time it doesn’t sacrifice agility to gain that simplicity. You can build the entire project with a single command. At the same time, you’re one command away from an initialized bitbake environment if you need to deep dive the classical way.
In this talk we will present the basic usage of kas, explore how the tool is used and show a few convenient flows that can come from using it.
Overview of 3rd party tools for build environment setup, layer management, and build configuration management.
Do you want to carve your name in the history of the Yocto Project? Or is your goal to expand your embedded Linux expertise? One way to achieve both glory and skill is to contribute to the Yocto Project and OpenEmbedded.
Tools and Techniques to investigate and resolve build dependency issues.
meta-riscv
is a OpenEmbedded / Yocto layer for RISC-V based boards and it contains a BSP for it. There aren't many boards on the market with RISC-V architecture but in 2021 SBC Nezha board with Allwinner D1 chip onboard was published and available to the market. It has basic support in mainline Linux kernel, U-Boot, and OpenSBI but also specific firmware eg. boot0 SPL, but mentioned RISC-V baseboard had no support in the Yocto Project. The presentation will show you the process of integrating a specific Nezha firmware into meta-riscv
. The idea behind it was to spread the popularity of the Nezha board in the community.
Many modern languages (such as go, rust, nodejs) include their own dependency
management components that are responsible for ensuring the correct source is
available for the build. While this addresses many of the issues with dependency
management and packaging at the source/build level, it causes issues when
several core OE features are considered: reproducibility, licensing/SBOM,
offline builds, sstate/hash equivalence, etc. There are also indirect issues
such as CVE management, debugability, recipe transparency, code sharing, that
are sources of maintenance challenges.
The approach/implementation to solving these issues are largely language
specific, but have the common themes of OE fetcher integration, dependency
packaging (and reuse) versus per-recipe source code management, dependency
specification, etc. Balancing reuse, build performance, scalability and other
issues are also challenges that remain with the different solutions.
Using golang as an example, this talk will cover these issues in more detail,
and use meta-virtualization's go recipes as an example of one way to solve the
problem. It will also summarize the issues with other languages and discuss what
should be considered when doing an OE core fetcher implementation for a given
language.
A chance for all the attendees to meet socially and show off their drink.
A quick welcome on the second day of presentations.
TuxSuite offers on-demand APIs and tools for Yocto Project and Linux kernel builds that are reliable and scalable. TuxSuite isolates the whole cloud infrastructure, allowing customers to do scalable Yocto Project builds and get their products to market faster.
By integrating Mender into the Yocto build pipeline, developers can free resources from maintaining custom solutions and use a robust end-to-end mechanism for software distribution across the whole development and maintenance period.
Today's connected device fleets are getting larger and the ability to monitor individual devices within a fleet is required for troubleshooting, optimization, and general fleet maintenance. With the ubiquity of network connectivity, we can setup this kind of fleet monitoring using a cloud-based solution, allowing for a single dashboard to view and monitor your fleet.
Wind River and the power of Yocto Project for commercial releases
Oniro project is an Eclipse Foundation project which aims high at trying to unify production-targeted features across kernels and domains. We, at Huawei, as one of the main contributors to the project, want to provide our vision on how this approach can build on top of existing open-source projects to level up real integration of components, devices, products, brands, ecosystems, etc.
This talk will provide an update and status of the changes made to Kirkstone regarding changing variables, functions and files to use more inclusive language. I will discuss some of the challenges and pitfalls.
The cve-check class in OpenEmbedded/Yocto allows to perform a check for known vulnerabilities in a given configuration. Recently the class has gained a new JSON-based output format and a possibility to report recipes without any known security issues. The Eclipse Oniro project team has also worked on fixing issues when running a 'world' build when using multiple layers. In this talk, Marta is going to explain reasons behind those features and how you can benefit from them. She will also describe issues the team encountered and their solutions.
Upstream Python has deprecated ‘distulils’ and is moving towards ‘pyproject.toml’ instead of ‘setup.py’. In this talk you will learn what changed in the Yocto Project classes and recipes for Python packages in the 4.0 ‘kirkstone’ release. You will also learn about how to look at an upstream ‘pyproject.toml’ and determine which of the new classes to use instead of ‘setuptools3’. We will also discuss recipes for packages that add Rust extensions for Python.
In this talk we will discuss how sstate-cache works and in which scenarios it shines. We will look at how it can coexist with another caching layer on the compiler level, and which in which scenarios each of the cache implementations can be useful to cut down the amount of computational work that needs to be done when doing incremental builds.
Beside of many different filesystems, Linux offers these days various methods to have confidentiality and integrity at the storage layer. The goal of this talk is giving an overview of these methods and how to use them with Yocto. Filesystems in focus are ext4, f2fs and ubifs.
The yocto project has long supported package feeds, recently the project has
gained more capabilities around binary artifacts and how they can be reused.
There is also an effort to create and support a reference package feed as part
of the outputs of the project.
This presentation will introduce the components that underpin package
capabilities, and show how they work together to enable workflows based on
binary artifacts. Package feed extension, and target update will be discussed,
as well as how containers can be used in a 'docker build' like manner to package
and deploy applications.
It will then give an overview and status update on the "5 Year" planning and
binary distribution effort. Distinctions between core project capabilities, and
what can be leveraged from the wider ecosystem will also be discussed as part of
this presentation.
A chance for all the attendees to meet socially and show off their drink.