Yocto 1.2 Features
From Yocto Project
Jump to navigationJump to search
Potential Yocto Project 1.2 Features
Yocto Project 1.2 - Target release = April 2012
Yocto Project 1.2 Themes
The topics below are the themes that some members of the team have started brainstorming for Yocto Project v1.2. These will be improved with community input.
Yocto Project 1.2 Objectives
The objectives of the Yocto 1.2 release are to increase adoption of the Yocto Project.
Yocto Project 1.2 Theme List
The Yocto Project 1.2 Themes towards the Objectives listed above are:
- Improved usability of the build system for new experienced users, new novice users and existing users.
Process for Entering New Feature Requests
- Create a new entry in the appropriate feature table below (Poky, SDK, Hardware)
- Suggestion: start by copying an existing request as a template
- Give the feature a short, descriptive name
- Provide a one or two sentence brief description of the feature
- Set the priority as appropriate (see the legend below)
- Set the Status to "Review"
- In the Source field, enter your name along with the origination of the request (e.g. OSV, OEM, Community) if applicable; provide as much detail here as you can
- In the Comments / Bugzilla field, provide any additional information for the request, such as a link to a bugzilla entry
- Preview your Entry to make sure it looks ok and then save it
Legend
Priority: 1 = Must Have, 2 = Nice to Have, 3 = Optional
Status: Accept = Engineering agreement to include in release, Review = Under Review for Inclusion in this release, Reject = Will not be included in this release
Sample Table
This is a sample table to show how to submit features.
Feature Name | Description | Priority | Status | Source | Comments / Bugzilla Links |
Placeholder feature name | Placeholder description of the feature | 1, 2, or 3 | Review | name | Comment |
Usability
Feature Name | Description | Priority | Status | Source | Owner | Comments / Bugzilla Links |
build appliance | Intended for developers to very easily "Check it out" and do a Yocto Project build with minimal pain. Should be a virtual image of a desktop OS which will boot into HOB and offer a terminal or an app to deploy resulting images to media or to run QEMU. | 1 | Review | davest/tracey/RP | TBD | See here for Build Appliance Design |
Visual Hob | Massively update interface for Hob, perhaps similar to SuSE Studio. This is for both local (non-network) builds as well as network. | 1 | Review | davest/tracey/RP | TBD | xx |
Hob improvements | Update Hob with performance improvements and improvements to package disabling | 1 | Review | davest/tracey/RP | TBD | xx |
Support for non-developers | Create clear instructions for how a Windows user can take an example image from the YP web site and deploy it to a board. Assume no Linux knowledge. These instructions should be applicable in example images in BSPs | 1 | Review | davest/tracey/RP | TBD | xx |
Firewall / Proxy handling in git | Develop a git plugin which will fall back to tunneling through HTTP if the git:// interface will not work because it is blocked by a firewall and the correct proxy is not set up. | 2 | Review | davest/tracey/RP | TBD | same for svn,hg,ftp,etc? -dvhart |
Build Yocto behind firewall - implementation | 2 | Dev | Dave | Darren/Joshua | Yocto 1.2, from 1.1, the above one seems to be part of this. |
Core/Bitbake
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
Recipe-specific sysroot | 3 | Review | from 1.0 | Saul (Dongxiao) | 1.2 | Yocto 1.2 (1 month task) | |
Handle old versions in WORKDIR | 3 | Review | from 1.0 | 1.2 | Yocto 1.2 | ||
Executable images | Create images that are executable - for example a pre-installed Ubuntu image with YP installed | 3 | Review | LCS | 1.2 | Yocto 1.2 | |
Yocto OOPS-type messages | add the equivalent of kernel OOPS to Yocto | 2.5 | Review | LCS | 1.2 | Yocto 1.2 | |
Ability to archive work dir | Add the ability to archive the work directory to handle the GPL compliance issue. | 3 | Review | LCS | 1.2 | Yocto 1.2, On Janitor\'s list |
QA Items
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
Patch Test System | Create a machine where developers can upload/test patches before submitting them to master to ensure builds won\'t break when patches are added. (developer autobuilders? Fuzz builds?) | 2 | Review | Team | Jiajun | 1.2 | This should work already for the pokycontrib tree |
Open Source Test Cases | Perform technical, legal, and QA steps necessary to move test cases into open source. | 3 | Review | QA | 1.2 | Yocto 1.2 | |
Start a framework for automated BSP testing | Build-testing is only half the job of BSP testing, and new BSP development is and will be ramping up even more rapidly soon. We need to start building a framework to make as much of this as automated as possible. Phase I, what we can complete for 1.2, should be the ability to load an image from the autobuilder and make it ready for booting, or actually boot it, on a given target. It would be good to use systems running Yocto images as much as possible for this. | 2 | Review | Tom | 1.2 | Maybe use CATS? | |
Test framework | this is a test framework that we can include in the distribution | 3 | Review | RP Notes | 1.2 | Yocto 1.2 - Is it the TI’s test framework we discussed before? A: Not necessarily, we\'re still waiting for someone to step up and really take ownership of this area but it needs some resource commitment as its not a simple task. | |
Package History | Write out data about the size of packages, their contents, dependencies, build time and so on allowing changes to be detected. One idea is we could do this in the form of a git repository | 1 | Review | RP | 1.2 | Yocto 1.2 | |
Package History Analysis Tool | Take the above data, highlight significant deltas and allow the user to confirm or red flag changes. Why did the package double in size? Why did some dependencies go missing? | 1 | Review | RP | 1.2 | Yocto 1.2 | |
Extend current QA Tests | Automate some of the existing QA tests such as LSB, posix and rt tests | 1 | Review | RP | 1.2 | Yocto 1.2 |
Meta Data
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
Replacement for video/audio players currently in Yocto | Codec… | 3 | Review | Meta-data | 1.2 | Yocto 1.2 | |
Investigate New UI | For demos, we would like need a reference UI that is not Sato. Investigate possibilities that the Yocto team won\'t need to maintain. OpenBox? Gnome-desktop? GP? LXDE? KDE Mobile? | 3 | Review | Meta-data | 1.2 | Yocto 1.2 | |
Qemugl upstreaming | Opengl ES Support | 3 | Review | Meta-data | 1.2 | Yocto 1.2 | |
selinux patch integration | add SE Linux patches in a similar way to PAM | 3 | Review | Meta-data | 1.2 | Yocto 1.2 | |
build statistics reporting | As someone interested in how long it takes to build different images on different hardware configurations and other assorted build metrics, I would like a web based service, that takes output generated by an extended buildstats.bbclass and stores it, to compare against different machines. The end result should be a way to visualize the collected data. See: https://wiki.yoctoproject.org/wiki/Yocto_Buildbot_Autobuilder_Discussions | 2 | M3, Sprint A | eflanagan/Jay7/ka6sox | Beth/Jay | 1.2 | Yocto 1.2, from 1.1 |
Document multiple library versions co-existing | 3 | Review | Team | Saul (Dongxiao?) | 1.2 | http://bugzilla.yoctoproject.org/show_bug.cgi?id=1548 | |
Embedded java environment or even JDK support | 3 | Review | Team | 1.2 | Yocto 1.2 | ||
Target module build | Allow for building kernel modules on the target device | 2 | Review | RP Notes | Darren | 1.2 | Yocto 1.2, On Janitor\'s list |
gtk+ sato filechooser patch | 3 | Review | RP Notes | 1.2 | Yocto 1.2 | ||
sato refresh | 3 | Review | RP Notes | 1.2 | Yocto 1.2 | ||
Sanity checks on per recipe basis | 2 | Accept | RP Notes Bug#405 | Saul (Scott G) | 1.2 | Yocto 1.2, from 1.1 | |
perf scripting\' integration | Make it easy and convenient for the user to write and execute \'perf scripts\' from the IDE. We should be able to leverage and build on the Systemtap integration for this. | 2 | Dev | Tom | Jessica/Tom | 1.2 | Yocto 1.2, from 1.1 |
Add Directfb(license LGPL) function | Directfb is more appropriate embedded device than other graphic software | 3 | Moved from M1 | Meta-data | WR Distro team | 1.2 | Yocto 1.2, from 1.1 |
Autobuilder
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
autobuilder layer support | 2 | Beth | Beth | 1.2 | 2 weeks | ||
autobuilder split of nightly (really an M4 task) few days license.bbclass refactor | 2 | Beth | Beth | 1.2 | 1 week | ||
buildstats memory measurements | 2 | Beth | Beth | 1.2 | 1 week and half | ||
license manifest | 2 | Beth | Beth | 1.2 | 1 week | ||
autobuilder release checkbox (running a yocto release right from the autobuilder) | 2 | Beth | Beth | 1.2 | 2 weeks |
BSPs
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
AMT driver integration | incorporate Linux AMT into the Yocto BSPs | 1.2 | Intel | ||||
Zaurusd++ (devmand?) | I keep seeing changes to toggle certain features for various boards (audio on the beagleboard, N450 and spring to mind), rather than writing lots of recipes for this perhaps we could resurrect zaurusd and evolve it to reflect the projects original goals as devmand; a daemon to handle hardware quirks across a range of boards and devices. | 1.2 | Joshua | ||||
BSP update/intro | determine and integrate / create arch reference BSPs (e500, Cortex, ARM, MIPs) | 2 | Dev | Bruce/Richard/team | Bruce | 1.2 | Yocto 1.2, from 1.1 |
Drop Grub for Syslinux | Grub is considerably more complicated than we need for any of our current BSPs. Syslinux can be used in place of every known usage of Grub. For upcoming EFI BSPs, we can look to Efilinux. This will reduce our bootloader maintenance burden and simplify our images. | 2 | Review | Darren | Darren | 1.2 | |
Integrate alsa-state | Remove all the BSP specific $MACHINE-audio recipes in favor of the more generic alsa-state mechanism in use by OE already. | 1 | Review | Darren | 1.2 | This possibly conflicts with the item to refresh zaurusd. | |
Upgrade to EFI | Where possible, update our existing BSPs to boot using EFI. This will support development of efilinux as well as help us prepare for the newer boards which will be EFI only. | 2 | Review | Darren | Darren | 1.2 | |
BSP/kernel wrappers/wizards | Create some simple scripts or 'wizards' that make it easy for users to start writing a new BSP and/or easily make simple kernel modifications to a BSP. Ideally, users shouldn't need to know anything low-level about the kernel, git, or the mechanics of appending config items to recipes in order to get a BSP up and running or to make the simple modifications needed to tweak or maintain it. | 2 | Review | tomz | tomz | 1.2 |
ADT
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
Enhance the deploy part in remote debug | ADT is currently using org.eclipse.cdt.remote.launch for remote debug. One limitation in this plug-in is that it can only deploy one single file to the target during the debug. Though it is ok for debugging static linked program, debugging dynamic linked program might require deploying multiple files(including executables and libraries) to the target. | 2 | Review | Lianhao | Jessica | 1.2 | |
Secure login | 2 | Review | ADT Team | Jessica | 1.2 | Yocto 1.2 | |
Linux tools upstream integration | There're some activities within the Eclipse Linux Tools community for various tools remote invocation improvement, we need to sync up with the community for their latest deliveries and make some contribution if possible | 2 | Review | ADT Team | Jessica | 1.2 | Yocto 1.2 |
Add recipe supporting autoconf-nativesdk and automake-nativesdk | The new libtool m4 macros(supporting --with-libtool-sysroot) resides in the directory where host aclocal can not find it by default. This requires the user to manually add that directory using -I options. Adding automake(autoconf)-nativesdk into meta-toolchain would help this. | 2 | Review | Lianhao | 1.2 | Yocto 1.2 | |
Prebuit SDK integration | speedup target image generation by reusing prebuilt tools from SDK native and target binaries. See: http://wiki.secretlab.ca/Yocto_prebuilt_SDK_integration | 2 | Reject | Adrian | Jessica | 1.2 | Yocto 1.2 - This functionality looks to have been provided by sstate packages? |
Eclipse BSP/Kernel Plugin | Provide an Eclipse plugin to facilitate configuring new BSPs and streamlining the linuix-yocto development workflow. | 2 | Review | Darren | 1.2 |
Documentation
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
Various Demo Videos | The idea here is to create screen-capture type tutorials similar to what exists for the ADT Eclipse Plug-in. However, we want to contract out some help for professional voice-over talent to be used with the images. These don\'t have to be limited to screen-capture material but could include well-done PPT decks - similar to how other business units in Intel create various training modules. For 1.1 it would be good to capture the script for the existing ADT Eclipse Plug-in module and have it voiced over. Also, for 1.1 it would be good to create a similar module for the Image Creator application. | 2 | Not Started | From ADT module and scratch | ScottR | 1.2 | Q3 at the earliest |
Performance & usability
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
POSIX support | address POSIX failures found in 1.1 | 2 | Review | Team | 1.2 | Yocto 1.2, On Janitor\'s list |
Kernel
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
Minimal Image unique | make minimal image smaller | 3 | Accept | Team | WR Distro Team | 1.2 | Yocto 1.2, from 1.1 |
Tracing: tuna, oscilloscope recipes | This might be more useful with the increased importance of RT | 3 | Review | from 1.0 | 1.2 | Yocto 1.2 | |
Kernel Tools | Implement plan for kernel tools | 2 | Dev (20%) | Bruce/Mark | Bruce | 1.2 | Yocto 1.2, from 1.1 |
use cases | BSP config streamlining, building the kernel standalone, yoctoization, meta data sharing | 1 | Accept | Bruce | Bruce | 1.2 | Yocto 1.2, from 1.1 |
kernel bloat - development | target = boot a minimal image in < 8M - development complete | 1 | Dev | Darren | Darren | 1.2 | Yocto 1.2, from 1.1, continuation needed? |
Fast boot time | 2 second boot time target | 1 | Dev | Team | Darren | 1.2 | Yocto 1.2, from 1.1, continuation needed? |
Upstream config fragments | Work with John Stultz to upstream a Linux kernel config fragment manager and rework the yocto-kernel-tools to use it. This will simplify our tooling and increase our usage/test base. | 1 | Review | Darren | 1.2 | ||
Real-time process-executed timers | Timers currently run at the priority of the softirq that processes them and they are accounted to whichever task was preempted for them to run. This negatively impacts determinism and accounting accuracy. | 2 | Review | Darren | 1.2 | ||
Define Kernel policy | We need to clearly document kernel policy and make the config fragments reflect it. This will facilitate a more modular approach to building BSP kernel configs, as well as make it clear what can be expected to be supported when running a "linux-yocto kernel". | 1 | Review | Darren | 1.2 |
Project-wide Features
Feature Name | Description | Priority | Status | Source | Owner | Due | Comments / Bugzilla Links |
LayerTooling – remote layer tool | Consider integrating Jeremy Puhlman\'s remote layers patch | 2 | Community | Paul | 1.2 | ||
running post installs at rootfs gen time | 2 | Review | RP Notes | Saul (Dexuan) | 1.2 | ||
Clean up warning messages | 2 | Review | Saul | 1.2 | http://bugzilla.yoctoproject.org/show_bug.cgi?id=1544 | ||
Multi-lib - 11 | Directly support multlibs within the toolchain itself [post 1.1] | 2 | RP | Ke | 1.2 | ||
Multi-lib - 8 | Add support to RPM packaging backend to turn modified package names into true rpm multilib packages | 1 | RP | Mark | 1.2 | ||
Multi-lib - 7 | Investigate better TARGET_VENDOR handling for config.sub. Currently we can only have ARCH-VENDOR-linux where VENDOR cannot contain \"-\" but it might be possible to relax that constraint [not high priority]. | 2 | Review | RP | Ke | 1.2 | |
Multi-lib - 6 | Create some \"standard\" multilib configurations (x86 32+64 bit) | 1 | Review | RP | Ke | 1.2 | |
Patchwork | is it worth the overhead, are there alternatives | 3 | Review | RP Notes | 1.2 | Yocto 1.2 | |
Bugzilla to Wiki | Create a script which automatically populates and updates the Wiki based on changes in bugzilla. | 2.5 | Review | Darren | 1.2 | Yocto 1.2 | |
Sync qemugl with MeeGo - Implementation | sync qemugl with MeeGo is complete | 2 | Dev (70%) | Meta-data | Saul (Edwin) | 1.2 | Yocto 1.2, from 1.1 |
Tracing/profiling HOWTOs | Create a document or extend the current Yocto tracing wiki page to explain in detail how to use all the tracing tools in Yocto. It should detail not only how to use each tool individually, but also how to use them in conjunction with each other, highlighting situations in which each is most useful. There should also be some extensive worked examples of real-life use-cases and how they could be investigated using the Yocto tracing/profiling tools. | 2 | Accept | Tom | Tom | 1.2 | Yocto 1.2, from 1.1 |
Error Handling Improvements | 1 | Dev | Saul (Scott G) | 1.2 | http://bugzilla.yoctoproject.org/show_bug.cgi?id=1543 | ||
btrfs | Kernel enabling | 2 | Dev | Meta-data | Saul (Nitin) | 1.2 | Yocto 1.2, from 1.1 |
replace qemuppc | Bruce | 1.2 | Come from bug 414 | ||||
MeeGo GPLv2 Sync | compare with Yocto, sync any patches | 2 | Accept | RP Notes | Saul (Ke) | 1.2 | Yocto 1.2, from 1.1 |
Package Documentation Audit: All recipes build | 31 recipes were identified as not building during the package documentation audit done in M1, Sprint B. Those all need to build and we need to re-run a new package documentation audit. | 2 | Accept | Team | Scott G | 1.2 | Yocto 1.2, from 1.1 |
Tracing: Systemtap usability in Yocto | Right now, there are instructions on the wiki on how to configure and use Systemtap with Yocto. While straightforward, they are tedious and unlikely to be useful to most people pressed for time. We need to make it easier to use - in addition to documentation/HOWTO tasks listed elsewhere on this page, we need to make it usable \'out of the box\' (i.e. outside of ADT) e.g. all paths and configuration handled via script or something similar | 2 | Accept | Tom | Tom | 1.2 | Yocto 1.2, from 1.1 |
Tracing: create separate recipe for perf | Perf is currently built as part of the kernel build. If we want to make use of everything perf has to offer we should get rid of the dependency. For example, the kernel build shouldn\'t depend on libnewt, and x32 shouldn\'t have to deal with embedded Python | 2 | Review | Tom | Tom | 1.2 | |
Tracing: perf trace scripting support | Basically this means allowing perf to be built with the Perl and Python bindings, which turned out to be a headache last time. | 2 | Dev (50%) | from 1.0 | Tom | 1.2 | Yocto 1.2, from 1.1 |
Monitor disk availability | Monitor disk availability and warn the user if it is running low. May only focus on a few directories, for example: poky/build and poky/build/downloads, this would solve the multiple mount point problem | 2 | Review | RP and Robert | WR Distro Team (Robert) | 1.2 | Yocto 1.2, from 1.1 |
Ability to build SRPM | 3 | Accept | RP Notes | Jeff Polk/Mark | 1.2 | Yocto 1.2, from 1.1 | |
Classes to help install binary packages | It\'s been suggested that it would be a useful feature to be able to easily take an RPM or similar containing a software binary from a 3rd party software vendor and integrate it into an image created by the build system. | 2 | Review | 1.2 | |||
Host intrusion prevention | We have Swabber but it\'s not integrated into our process. I believe this is because there are several recipes which don\'t work when run under strace with parallelisation. We should determine a path for inclusion of swabber into our process and execute on it so that we can be aware of, and fix, any host intrusion issues. | 2 | Review | 1.2 | |||
Security layer | Many of our users are likely to want to use kernel level security mechanisms and so I\'d like to investigate supporting one of the in-kernel LSM (Linux Security Modules), possibly SMACK as used in MeeGo, and adding policy to the oe-core metadata. The LSM, policy and user-space tools could all be enabled via a distro feature. This work may well want to be in a separate layer? | 2 | Review | Joshua | 1.2 | ||
Factory reset | Implement a factory reset image feature. We\'ll use one of the union mount technologies (aufs/overlayfs/union mounts) to create an overlay on the file system as the final piece of rootfs creation. The overlaid file-system will be the target of all writes made to the image after the image is generated. A user-space mechanism to disable the overlay, and therefore reset to the state of the image just after it was created, will also be provided. This feature could be further enhanced by integrating with the package manager, and other user-space switches, to create system restore points which can later be rolled back to. | 2 | Review | Joshua | 1.2 | ||
Gstreamer | Refactor gstreamer recipes to better support COMMERCIAL_LICENSE and enabling/disabling of various codecs and features | 2 | Review | 1.2 | http://bugzilla.pokylinux.org/show_bug.cgi?id=923 | ||
Init | Interest in systemd as a replacement for Sys V init is growing but it may not be appropriate for deeply embedded systems. I\'d like to investigate a crop of service based and process monitoring init systems and compare them on a variety of criteria as determined by the community. Furthermore I would like to investigate supporting multiple init systems, the current SysV system, systemd and possibly others. As part of this work, and because increasingly many upstreams support systemd (no doubt thanks to its adoption in Fedora) I would like to investigate implementing some infrastructure which translates from systemd units to the appropriate init format for the supported init systems. | 2 | Review | 1.2 | |||
Enhance Automated QA Tests | Add tests for the RT pieces, consider run-time security checking tools used by Fedora and Gentoo | 2 | Review | 1.2 | |||
Collect data at build time to increase accuracy of estimation (hob) | Collect data at build time to allow hob to: predict the size of the generated image, more accurately reflect the built image contents, etc. This will likely involve generating data on the autobuilder which the UI can fetch and consume (with local caching for offline usage) | 2 | Review | 1.2 | http://bugzilla.pokylinux.org/show_bug.cgi?id=1316 | ||
Finish and enable PR server | We\'re still seeing people being forced to cleansstate too often, we need to finish up and enable the PR server so the checksummed sstate future can live | 2 | Review | 1.2 | http://thread.gmane.org/gmane.comp.handhelds.openembedded.core/1272/focus=1357 http://thread.gmane.org/gmane.comp.handhelds.openembedded.core/835/focus=852 | ||
Provide a click through license mechanism | Implement the mechanism described in Section 1.2. BSP \'Click-Through\' Licensing Procedure in the BSP Developer\'s Guide | 2 | Review | Tom | Tom | 1.2 | |
Finish Oracle/Sun Hotspot JDK/JRE support | I created an initial hack of a recipe for this for the demo - finish it up (involves licensing issues (click-through license support would be a prerequisite) as well) | 2 | Review | Tom | Tom | 1.2 | 50% done already |
BSPs or layers for a specific category of devices | This will demonstrate the value of Yocto to developers and help them get up to speed quicker for this category of devices. | 2 | Review | Dirk/Dave/Andy | TBD | 1.2 | |
enhance the bitbake commander eclipse plugin | By having the Eclipse as a frontend UI to bitbake server, eclipse may talk to bitbake server, enable the user to glimpse on the variables' values when editing the recipes, try out building the recipe being edited, etc. | 2 | Review | Dongxiao/Lianhao | TBD | TBD | This requires new features both in eclipse plugin and bitbake server. |
Parallel Locale Generation | Add makefile to allow the locale generation to happen in parallel | 2 | Review | RP | |||
Make BasicHash the default | We'd like to start adding the sstate signature to the stampfiles using the BasicHash signature generator and stop bumping PR values. This will require some additions to the PR server work we previously started | 2 | Review | RP | |||
Address git fetcher concerns | The community has raised some git fetcher concerns we should address | 2 | Review | RP |