summaryrefslogtreecommitdiffstats
path: root/meta-app-framework
AgeCommit message (Collapse)AuthorFilesLines
2023-06-16polkit-rule-agl-app: add useradd class and USERADD_PARAMpike_15.91.0pike/15.91.015.91.0Jan-Simon Moeller1-1/+4
The only diff left to e.g. polkit and systemd is the USERADD_PARAM. Add it into the recipe. Bug-AGL: SPEC-4824 Change-Id: I7eb2862dc5c40577a1c3311ac9b7a7cc43c5be2a Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29023
2023-06-14polkit-rule-agl-app: try to prevent transaction errorJan-Simon Moeller1-3/+5
While creating the final filesystem we see this error in CI: Running transaction test Error: Transaction test error: file /etc/polkit-1/rules.d conflicts between attempted installs of polkit-rule-agl-app-1.0-r0.11.corei7_64 and polkit-0.119-r0.11.corei7_64 ERROR: Logfile of failure stored in: /w/workspace/release-jjb-pike-snapshot/MACHINE/qemux86-64/label/agl-test-slave/repoclone/output/tmp/work/qemux86_64-agl-linux/agl-demo-platform-crosssdk/1.0-r0/temp/log.do_rootfs.44779 NOTE: recipe agl-demo-platform-crosssdk-1.0-r0: task do_rootfs: Failed Try to work this around. Bug-AGL: SPEC-4837 Change-Id: I855bfe88651cc5e738630936639e599523eb811c Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29016 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2023-06-12Remove systemd user session and clean up packagegroups and imagesScott Murray12-191/+9
Remove the use of a systemd user session to align with how upstream runs Weston, and to allow using all systemd sandboxing features with the compositor and homescreen, launcher, etc. applications. The changes for this touched enough packagegroups and images that further rework was done to address some of the cleanup described in SPEC-4813, see below for details. Changes: - Remove agl-session and update various recipes that were manually adding dependencies to the user session it created. The compositor (be it weston or agl-compositor) and Wayland clients now run in the system session as non-root users. - Revive agl-users recipe, this time living in meta-agl-core, with the purpose of creating the agl-driver user. For simplicity, agl-compositor is always run as the agl-driver user, as opposed to trying to wrangle running it as different users depending on build configuration. This can potentially be made more configurable if a downstream user has a usecase to be able to specify another user. - Fully split agl-compositor's systemd unit with a tweaked fork of the weston-init recipe and unit which lives in meta-agl-core. This will be easier to maintain than the attempt to reuse weston-init for builds without meta-app-framework that was done previously. - Create packagegroup-agl-graphical-compositor, distinct from the weston packagegroup. This should make it more straightforward for downstreams that want agl-compositor or weston. - Rename agl-image-agl-compositor to agl-image-compositor to remove redundancy. - Tweak the logic for the inclusion of a few debug packages (e.g. agl-shell-activator) to ensure they only show up in images when agl-devel is enabled. - Split weston-terminal and the required icon resources into separate packages in our weston bbappend to avoid pulling in weston just to get the terminal for testing. - Add a agl-core-image.bbclass to use as a base for images. - Move our cross-SDK configuration to a agl-crosssdk.bbclass to ease reuse. - Remove various empty packagegroups. - Unify image .inc files with their .bb files as a simplification, and to move towards more how upstream Yocto Project does things. - Split pipewire tools into their own -devel packagegroup. - Remove rcar3 additions to packagegroup-agl-graphical-multimedia, as that packagegroup is not machine-specific. They will be added back in via a change in meta-agl-demo. If a downstream user desires a platform-specific packagegroup for such packages in meta-agl-core, this can be revisited, though a different implementation should be used. - Replace some :append usage with += to avoid creating problems for downstream users. Bug-AGL: SPEC-4714, SPEC-4813 Change-Id: I55b29bf749f0d5d50993a362c665bce62b785f67 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28996 Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2023-06-02applaunchd: update Flutter app systemd template unitScott Murray1-1/+5
Applications built with newer meta-flutter package their bundles in a directory hierarchy containing the Flutter SDK version and multiple runtime flavors (release, debug, profile). Rework our applaunchd systemd template unit to work with that. FLUTTER_VERSION and FLUTTER_RUNTIME environment variables are used in the ExecStart command line, with working defaults defined in the unit. The unit also includes sourcing a global /etc/default/flutter environment file as well as a per-application one to give us hooki for setting the version based on the value of FLUTTER_SDK_TAG in meta-agl-flutter. Bug-AGL: SPEC-4819 Change-Id: I4879760bfd9c01f29daf25d6cd4a3c70d07429fd Signed-off-by: Scott Murray <scott.murray@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28979 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2023-05-31agl-session: remove agl-driver user from applaunchd groupDenys Dmytriyenko1-3/+2
Previously agl-driver user was part of applaunchd group for D-Bus activation to work woth the correct access rights. Now that D-Bus activation has been removed from applaunchd, agl-driver user no longer needs to be in the same group with applaunchd. Bug-AGL: SPEC-4801 Change-Id: Ia473b391432d8c797cd38c0841f7fe655dcdb8e6 Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28930 Reviewed-by: Scott Murray <scott.murray@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2023-05-31applaunchd: bump SRCREV for D-Bus removalDenys Dmytriyenko1-2/+2
Update to the latest version of applaunchd that has D-Bus services removed. Since D-Bus definitions are no longer installed, update FILES list accordingly. Bug-AGL: SPEC-4801 Change-Id: Ia502e62ab7797c509433ced5347c3ebaf8e09e7c Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28929 Reviewed-by: Scott Murray <scott.murray@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2023-05-30Ensure all layers do pass yocto-check-layer and run-yocto-check-layer.sh scriptsJan-Simon Moeller4-5/+43
Ensure the layers do pass again and that the scripts are up-to-date. Bug-AGL: SPEC-4680 Bug-AGL: SPEC-4681 Bug-AGL: SPEC-4682 Bug-AGL: SPEC-4683 Bug-AGL: SPEC-4684 Change-Id: I5ab1bc49dc361a7fc30a62c5c82d286e66bad72e Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28875 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2023-04-18applaunchd: bump SRCREV for "failed" signal handlingDenys Dmytriyenko1-1/+1
Bump SRCREV to include the latest fix for handling "failed" signal when apps exit abnormally. Bug-AGL: SPEC-4199 Change-Id: I6a4ce6755df65f43b53f61ca1873286f2218328e Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28646 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2023-01-26weston-ini-conf: Add weston-ini-landscape-no-activateRoger Zanoni1-0/+1
This change adds an option to use a weston.ini config in landscape mode with automatic activation disabled by default, to be used by wam. Bug-AGL: SPEC-4647, SPEC-4528 Signed-off-by: Roger Zanoni <rzanoni@igalia.com> Change-Id: Ibaeefc4cae07b3f4cb4bbc619bb068fd259d81fc Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28371 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-12-10meta-app-framework: Add Flutter app icon installationScott Murray1-0/+8
Add logic to agl-app.bbclass to install an icon for Flutter apps if there is one present as ${AGL_APP_ID}.svg in a "package" directory in their source repository. Bug-AGL: SPEC-4634 Change-Id: If48cb5b085f74a713e293d6554c45d265f69f686 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28155 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2022-10-08meta-app-framework: applaunchd: run under a separate userDenys Dmytriyenko3-3/+7
Since applaunchd needs to start/stop systemd units, the user is granted elevated systemd unit-management permissions via PolKit policy. If applaunchd and all the apps run under the same agl-driver user, all the apps have these elevated systemd permissions too. Separating them into different users allows removing elevated systemd unit-management permission from individual apps, but leaving such permission for applaunchd, which enhances overall security of the system. - add new applaunchd user and group - switch applaunchd (gRPC) service to be started under new user - since HTML5 apps haven't migrated to gRPC yet and still use D-Bus API, applaunchd-dbus gets activated by agl-session and runs under agl-driver - temporarily add agl-driver user into the applaunchd group and switch PolKit policy to check for applaunchd group, instead of the user - once D-Bus API is completely deprecated, agl-driver user can be removed from applaunchd group Bug-AGL: SPEC-4579 Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Change-Id: I75384177578bba6cb458a81df6a9dc1738c972e0 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28039 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-09-22weston-ini-conf: Add weston-ini-config-no-activateMarius Vlad1-0/+1
This patch adds a way to tick dynamically activate-by-default to false, and provide a safe migration towards disabling by default activation entirely. We do this with just only the Qt toolkit and will proceed with WAM/chromium once that has support as well for this. Bug-AGL: SPEC-4528 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: I3573ea92d3ea865db223bd01e58b9ec202cfa7ae Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27990 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-09-21meta-app-framework: applaunchd: update for gRPC additionScott Murray2-2/+21
Changes to facilitate building gRPC enabled versionm of applaunchd: - Bump SRCREV to pick up gRPC changes - Add required protobuf and gRPC dependencies to DEPENDS - Add new systemd unit for standalone gRPC API daemon Bug-AGL: SPEC-4559 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I21778f27b2eabd952e983b4571de05ad5d6c5af2 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27984 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-08-04meta-app-framework: update Flutter app templateScott Murray1-1/+1
Update systemd template unit for Flutter based applications for the embedder binary rename (to flutter-auto) and a required rename of the application id command-line option (to --xdg-shell-app-id). Bug-AGL: SPEC-4485 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Icb03775f379929a852d3b270d52b3e88277aa3cc Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27862 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-boot-test: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-07-29meta-app-framework: add Flutter app templateScott Murray2-1/+15
Add a systemd template unit for Flutter based applications to the applaunchd recipe. Bug-AGL: SPEC-4466 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ia7cb24d27beebf7c7e4bcfb7a256bd45ffa432ce Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27838 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-boot-test: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-07-29meta-app-framework: Update app template schemeScott Murray5-10/+107
Changes to support the move to systemd unit based app enumeration in applaunchd: - Bump applaunchd SRCREV to pick up enumeration changes. - Tweak the polkit rule to match agl-app* instead of agl-app@* to allow more flexibility with respect to different app templates. - Tweak the Description field definition in the agl-app service template to just use the instance name, as that field is now used for the application display name by applaunchd. - Add a agl-app-web service template for web apps. - Add a agl-app.bbclass for use in application recipes to simplify installation of the now required systemd template instances and potential generation of override files to tweak application configuration. - Split the agl-app and agl-app-web templates into their own packages in the applaunchd recipe so they can be depended on by applications as required. - Move applaunchd installed systemd units and override files to /lib/systemd/system since that matches the upstream recommendation for units installed as part of the system installation. Bug-AGL: SPEC-4466 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I32ff6c9624850662856b79a2b14b33a05e7f9a65 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27835 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jose Dapena Paz <jdapena@igalia.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-07-13applaunchd: update and install agl-app@ template and sandboxing configsDenys Dmytriyenko4-5/+33
The new applaunchd adds systemd_manager that allows launching apps as systemd services in a sandboxed environment. And dbus_activation_manager is deprecated. * Update SRCREV for the new code * Bump version to indicate a major change * Install supporting config files * Add build dependency on systemd * Add runtime dependency on polkit rule to manage agl-app@ services Bug-AGL: SPEC-4466 Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Change-Id: I01b0247d18be8d97b4ea2866d161cffbda8f9155 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27752 Reviewed-by: Marius Vlad <marius.vlad@collabora.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-by: Scott Murray <scott.murray@konsulko.com> Tested-by: Jenkins Job builder account
2022-07-13polkit: add rule to allow agl-driver to control agl-app@ systemd servicesDenys Dmytriyenko2-0/+23
Bug-AGL: SPEC-4466 Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> Change-Id: I8007aacc12f8b6bdfbca660c994d321ef1b5eca7 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27751 Reviewed-by: Scott Murray <scott.murray@konsulko.com> Reviewed-by: Marius Vlad <marius.vlad@collabora.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-06-29Remove use of AGL_APP_REVISIONJan-Simon Moeller1-1/+1
We did use the variable AGL_APP_REVISION to change between the HEAD of the branch via to the fixed tag at release time (regs/tags/xyz) . While this worked well previously, it turns out that bitbake will query git every time it runs for either or tags likewise. For tags it cannot trust whatever is known locally is actually the latest tags as there can be force pushed tags. To fix this we use a well-defined SRCREV for apps/* in the same way as we do it for src/* . Bug-AGL: SPEC-4455 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Change-Id: I54bad2ef6c8b171b1ae1270b4adb951fb180b260 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27693 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account
2022-05-26applaunchd: Correct "HOMEPAGE" in applaunchd_git.bbduerpei1-1/+1
The originally link in homepage cannot be opened when copied to the browser. Replace it with link that can be opened Bug-AGL: SPEC-4368 Signed-off-by: duerpei <duep.fnst@fujitsu.com> Change-Id: I33fccf7711527a657b6b4a0170c85a6f4b6d3767 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27500 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-05-26agl-compositor-init_agl-app-fw: Include agl-shell-activatorMarius Vlad1-0/+1
Turns out we weren't including the agl-shell-activator activation tool so include it by default. It remains to be seen if it makes sense to have in the compositor, rather than outside, but for the time being just include it by default. Bug-AGL: SPEC-4324 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: I5a16baca8be83715f86e02809324497a837a235a Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27385 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-03-29Declare layer compatibility with kirkstoneScott Murray1-1/+1
For tracking upstream, we need to update the layer compatibility. Bug-AGL: SPEC-3819 Change-Id: Ic1bc22653e59b2891d77d44cdd409a805e5cc332 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-03-02meta-app-framework: depend on weston-iniJose Dapena Paz1-1/+1
To allow different default layouts depending on target or kind of demo make app framework layer depend on weston-ini instead of the default one. This allows HTML5 demo, that runs in landscape, to initialize properly. Bug-AGL: SPEC-4250 Change-Id: I199a2bf27f65094fbebf62976c33968ce3841aaa Signed-off-by: Jose Dapena Paz <jdapena@igalia.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27236 Reviewed-by: Scott Murray <scott.murray@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2022-01-30meta-app-framework: add agl-driver to pipewire groupAshok Sidipotu1-1/+2
- Update agl-session recipe to add agl-driver to pipewire group - Apps in the new framework can access pipewire services if agl-driver is a part of pipewire group. Bug-AGL: SPEC-4210 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Change-Id: Iba3856006b36c0182aaa0e36e8e98f85d9c49af3 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27100 Reviewed-by: Georgios Kiagiadakis <george.kiagiadakis@collabora.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2022-01-19agl-compositor.service.in: Add default EnvironmentFileMarius Vlad1-0/+1
Debugging compositor protocol requires passing environmental variable to the compositor. This adds /etc/default/agl-compositor file which was in the past under /etc/default/weston filename, for this same purpose. Bug-AGL: SPEC-4219 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: Ia6231c6360625f0e194a246d0c392a0a05e8a5d9 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27084 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-12-22meta-app-framework: tweak agl-driver definitionScott Murray1-1/+3
Tweak agl-driver user definition in agl-session recipe to ensure it is a member of the video and display groups (the latter has been added back to the static group file). This is required to avoid agl-compositor startup failures on rcar3. The display group membership potentially could be dropped if we were to bbappend rcar3's gles-user-module recipe to tweak its udev rules. For now, take the most straightforward approach. Bug-AGL: SPEC-4161 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I7237ade5d8680655f17716ac048349a476eb5f29 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27060 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2021-12-21meta-app-framework: agl-session: Ensure XDG_DATA_DIRS is setScott Murray2-1/+16
Add installation of a systemd user-environment-generator scriptlet to the agl-session recipe to ensure that XDG_DATA_DIRS is set to a reasonable default value. This is required for locating D-Bus activation .service files and icons. Bug-AGL: SPEC-4182 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I5d1a72022ca97f25a915b64205bf70ab33516ec6 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27048 Reviewed-by: Arnaud Ferraris <arnaud.ferraris@collabora.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-12-17meta-app-framework: recipes-core: add applaunchd recipeArnaud Ferraris1-0/+28
Bug-AGL: SPEC-4160 Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com> Change-Id: I7b2d5e660625091d665727d48a45eb1b7958904e Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27015 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-12-17meta-app-framework: start agl-compositor in a systemd user sessionArnaud Ferraris7-0/+100
`weston-init` installs a system service for starting the compositor. As we want it to run as a user service, this patch replaces this package with `agl-compositor-init`. This involves: - resetting RDEPENDS from `weston-ini-conf` so it doesn't pull in `weston-init` anymore - making `agl-compositor-init` RCONFLICT with `weston-init` as it's still a RRECOMMENDS to `weston` `agl-compositor-init` installs a systemd user service and socket, and ensures agl-compositor is automatically started with the user session, so the compositor is automatically started on boot. It also adds a config fragment for the `agl-session@agl-driver` service (instance of `agl-session` for user `agl-driver`) for properly configuring the TTY to use for display. Bug-AGL: SPEC-4161 Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com> Change-Id: Ifb10a206cfa97c147283bc78c46f7f09209a9591 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26975 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account Reviewed-by: Scott Murray <scott.murray@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-boot-test: Jenkins Job builder account
2021-12-17meta-app-framework: add new agl-session recipeArnaud Ferraris3-0/+64
For the new App FW, we want to create a systemd user session, to be started on boot, which will be used to start the compositor and all user background services. This commit adds the corresponding target and service file (enabled by default) so the session is started on boot. Bug-AGL: SPEC-4161 Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com> Change-Id: I51ca7e0c1a994c6798b20b2592bec56a07f41c98 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26974 ci-image-build: Jenkins Job builder account Tested-by: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-12-08meta-app-framework: add new AGL feature and fix buildArnaud Ferraris2-4/+2
This layer uses a new `agl-app-fw` feature to guard bbappends, so this commit declares it in the conf include and makes sure it's used when the feature is enabled. Moreover, the `layer.conf` files referenced a non-existent `licenses` folder, causing build issues. This commit fixes this by not adding this folder to LICENSE_PATH. Bug-AGL: SPEC-4161 Change-Id: I3360b0f3b36413e741de2d2d3e4a98fff1e1e8db Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26973 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2021-12-02Add templates for new application framework componentsJan-Simon Moeller1-0/+1
Setup the templates. Bug-AGL: SPEC-4161 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Change-Id: I4ea66291413dac8ddfc98f0536afd8f823b38391 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26946
2021-12-02Add sublayer for new application framework componentsJan-Simon Moeller2-0/+53
Setup the layer and a scripts/run-yocto-check-layer.sh . Bug-AGL: SPEC-4161 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Change-Id: I762773107ada7263b854b2f9ea54d1f11adf1487 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26945 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2021-11-04Prepare master for new framework integrationJan-Simon Moeller127-11041/+0
During the last workshop the transition to the new framework was presented. This change essentially deprecates the SMACK-based application framework. To prepare the integration of it, we remove the deprecated components: - meta-agl-core: remove Smack kernel patches - meta-app-framework - meta-pipewire/dynamic-layers/meta-app-framework/ v2: rebased Bug-AGL: SPEC-4121 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Change-Id: Icdaeadfb5d2193f3a4c535168c88da6073423e67 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26752
2021-11-03Update github.com git:// SRC_URIsmarlin_12.90.1marlin/12.90.112.90.1Scott Murray2-2/+2
GitHub is dropping unauthenticated git protocol access in January 2022, per: https://github.blog/2021-09-01-improving-git-protocol-security-github/#no-more-unauthenticated-git While a workaround in the BitBake git fetcher is forthcoming, not specifying protocol=https for github.com git:// SRC_URIs will start resulting in warnings in Yocto 3.5/Kirkstone. To ease our upgrade path, go ahead and update our affected SRC_URIs. Note that this has been done by running the scripts/contrib/convert-srcuri.py script from latest poky, which also makes git branch specification explicit since the git fetcher is likely to require that in the future due to widespread switches from master to main branches. Bug-AGL: SPEC-4126 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I1b5003a79de5283f88bb51f2decadbabeaff8ed5 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26779 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-10-12meta-app-framework: bump version for dbus bbappendScott Murray1-0/+0
Rename the dbus bbappend to handle the upgrade to 1.12.20 in the poky 3.1.11 update. Bug-AGL: SPEC-4104 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I2876920f0ac949f4dee0835af03c096c4e186973 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26729 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-08-23Convert to new override syntaxScott Murray50-191/+190
This is mostly the result of running a slightly customized version of the convert-overrides.py script from poky with additional overrides added. A few minor fixups were done by hand afterwards during a review of the changes. The intent of these changes is to minimize the effort to keep the "next" branch that builds against poky master up to date and tested in preparation for the switch to the next Yocto LTS release in early 2022. Bug-AGL: SPEC-4052 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ia3bf63b7cb1aa1d95ada373d1a3ab56def0a125d Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26564 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-07-27libafb-helpers: update SRCREVScott Murray1-1/+1
Update SRCREV to pick up: 16b77f6 gcc 11.x fixes 6fb187b Update .gitreview file Bug-AGL: SPEC-3819 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ia148a09bc01c4a7188bc29fa339075d5ec1ee963 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26540 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-07-27af-binder: update SRCREVScott Murray1-1/+1
Update SRCREV to pick up: c5c15f8 gcc 11.x fixes 9a8aea1 CMake: Link with -latomic Bug-AGL: SPEC-3819 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I41a1aa7c38eceb1ca10904a060d52deba6dac6ff Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26539 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-06-29Refactor kernel configuration fragment handlingScott Murray4-20/+23
Refactor the kernel configuration fragment handling to shift all AGL applied configuration fragments into a new AGL_KCONFIG_FRAGMENTS variable that is used to generate SRC_URI and KERNEL_CONFIG_FRAGMENTS additions for the various BSPs. The intent is to make it simple to disable AGL provided configuration in downstream builds as the IC EG has expressed as a requirement. Additionally, the rework has allowed for some clean up of accumulated cruft. In practice, clearing AGL_KCONFIG_FRAGMENTS drops all non-BSP provided kernel configuration with the exception of some qemu BSP related additions required for AGL CI and some explicitly configurable things like netboot support. Notable changes: - Instead of always using AGL's own fragment merging logic on top of the BSP kernel recipe, an effort is now made to leverage the BSP recipes' own merging schemes, so there are now separate include files for kernel-yocto.bbclass and plain kernel.bbclass based kernel recipes, as well as a common include file that defines the AGL_KCONFIG_FRAGMENTS variable and its derivations. That file can be included directly in bbappends for BSP kernel recipes that use the KERNEL_CONFIG_FRAGMENTS scheme (e.g. meta-ti, meta-qcom). - The SMACK enabling configuration in meta-app-framework has been updated to supply different fragments for enabling SMACK by default for 4.x and 5.x kernels. This removes a warning from always supplying the old configuration, and allows providing a CONFIG_LSM definition to ensure over-riding any BSP modifications. This allows removing the previous hack to handle CONFIG_LSM being set in the defconfigs in linux-raspberrypi. - By request, the linux-yocto support from meta-agl-bsp/meta-core has been rationalized into meta-agl-core to improve the experience when using meta-agl-core standalone for testing. - All demo supporting kernel configuration has been removed, a subsequent change to meta-agl-demo will add it there by leveraging AGL_KCONFIG_FRAGMENTS. - The hardware device support has been split out of the can-bus.cfg fragment, in favor of shifting it to meta-agl-demo. A few other stray non-CAN configuration options have also been removed from can-bus.cfg, as they do not seem to be required. Bug-AGL: SPEC-3983 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: If6662fd36e26cec767b1d53b1188a74d01ef9dcf Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26460 Reviewed-by: Hiroyuki Ishii <ishii.hiroyuki002@jp.panasonic.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2021-01-11Remove smacknet from packagegroup-security-frameworkJan-Simon Moeller1-1/+0
smacknet is not present in 'dunfell' branches. See: https://layers.openembedded.org/layerindex/branch/dunfell/recipes/?q=smacknet . Bug-AGL: SPEC-3762 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Change-Id: I14cdb89394388399a26a4d2f4e0bc40505a54ecf Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25883 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
2020-12-17SPEC-3723: restructure meta-aglJan-Simon Moeller113-102/+9909
Goal is to reach a minimal meta-agl-core as base for IVI and IC work at the same time. Trim dependencies and move most 'demo' related recipes to meta-agl-demo. v2: changed to bbapend + .inc , added description v3: testbuild of all images v4: restore -test packagegroup and -qa images, compare manifests and adapt packagegroups. v5: rebased v6: merged meta-agl-distro into meta-agl-core, due to dependency on meta-oe, moved -test packagegroup and -qa images to own layer meta-agl-core-test v7: Fixed comments from Paul Barker v8: Update the markdown files v9: restore wayland/weston/agl-compositor recipes/appends, reworked to move app f/w specific changes to bbappends in meta-app-framework and only demo specific weston-init changes to meta-agl-demo v10: fix s/agldemo/aglcore/ missed in weston-init.bbappend Description: This patch is part 1 out of 2 large patches that implement the layer rework discussed during the previous workshop. Essentially meta-agl-core is the small but versatile new core layer of AGL serving as basis for the work done by the IC and IVI EGs. All demo related work is moved to meta-agl-demo in the 2nd patchset. This should be applied together as atomic change. The resulting meta-agl/* follows these guidelines: - only bsp adaptations in meta-agl-bsp - remove the agl-profile-* layers for simplicity -- the packagegroup-agl(-profile)-graphical and so on have been kept in meta-agl-demo - meta-agl-profile-core is now meta-agl-core - meta-agl-core does pass yocto-check-layer -- therefore use the bbappend + conditional + .inc file construct found in meta-virtualization - meta-agl/meta-security has been merged into meta-agl/meta-app-framework - meta-netboot does pass yocto-check-layer - meta-pipewire does pass yocto-check-layer Migration: All packagegroups are preserved but they're now enabled by 'agl-demo'. Bug-AGL: SPEC-3723 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ia6c6e5e6ce2b4ffa69ea94959cdc57c310ba7c53 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25769
2020-12-11Add README files to layersJan-Simon Moeller1-0/+4
This is a requirement of the yocto-check-layer script. Bug-AGL: SPEC-3724 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Change-Id: I60c41d77d4b83eccf4e69651c1fe7cd334a16cc5 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25768
2020-12-04meta-app-framework: update app-framework-main SRCREVScott Murray1-1/+1
Pick up changes: 3ea6f4a Merge "Add network and bluetooth permissions to service template" 0a24bbd Add network and bluetooth permissions to service template ad47803 deal with extra quotes Bug-AGL: SPEC-2714, SPEC-3509 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ie1c9bcb958aa5bda810a68c4e579e81321d55dda Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25706 ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
2020-10-02meta-app-framework: Handle html5 apps not having debug widgetsScott Murray1-4/+15
The previous aglwgt.bbclass change to make build/package errors fatal now trips up on the HTML5 applications, as they do not produce a debug widget, and the logic changes assumed that all widget builds would have one. To handle this, if there is no debug widget present when doing do_install, check the config.xml file in the release widget and do not throw an error if the widget type is "text/html". Bug-AGL: SPEC-3593 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: If58c3065464d2d2ea3d78b8ce31304d00fae6504 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25368 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2020-09-24meta-app-framework: Make autobuild failures fatal in aglwgt.bbclassScott Murray1-22/+13
Now that all upstream widgets have updated autobuild scripts, aglwgt.bbclass can stop ignoring autobuild failures, any failure will now again be caught in do_compile and not at packaging time. Bug-AGL: SPEC-3593 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Idd70a7decf422fa9390d675ad9a4f2729023f322 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25338 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
2020-08-19meta-app-framework/recipes-core/af-binder: bump to latest revisionLi, Xiaoming1-1/+1
pickup changes: 1b62498 fix(migration-to-binding-v3.sed): add a legacy call replacing rule 53228dc Fix typo Change-Id: Ie090ad3b81047352fb002dc5cb4ec10e82418e01 Signed-off-by: Li, Xiaoming <lixm.fnst@cn.fujitsu.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25132 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2020-07-24meta-app-framework: update app-framework-main SRCREVScott Murray1-1/+1
Pick up changes: af8db35 Fix native compilation 3a2efc3 Merge "Add wait for start jobs" 55e6be4 Add wait for start jobs 70d6c64 Fix labelling of files of widgets Bug-AGL: SPEC-3365, SPEC-3427, SPEC-3457, SPEC-3489 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I5be593e8e3e91f461dfa3db8063b21839ed6460d Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25051 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2020-06-27meta-app-framework: add do_configure task in aglwgt.bbclassScott Murray1-2/+6
Add a placeholder stub do_configure to aglwgt.bbclass instead of marking it as noexec to make things like externalsrc that bbappend or add prefunc's to do_configure work. For externalsrc specifically, this fixes the creation of the convenience oe-logs and oe-workdir symlinks. Bug-AGL: SPEC-3300 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ice6bc23c21f2206963b258c57dac5045721fcfe5 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/24889 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2020-06-26meta-app-framework: rework aglwgt.bbclass to solely use autobuildScott Murray1-58/+65
Changes include: - OE_QMAKE_STRIP definition added to re-enable strip so it will work for qmake based widgets. - AGLWGT_HAVE_TESTS and AGLWGT_PACKAGE_WARN changed to use 0/1 instead or true/false to match more typical OE flag usage. As well, their definitions are now done with ?= to make over-riding more straightforward. - The AGLWGT_AUTOINSTALL_${PN} variable has been renamed to just be AGLWGT_AUTOINSTALL, and a default definition has been added to make the behavior more explicit. There is only one in-tree user (the agl-service-can-high-viwi binding), which is currently not built and has been slated for removal, so this change is thought to have no impact. - A new AGLWGT_CMAKE_CONFIGURE_ARGS variable has been added with a definition derived from what is used in cmake.bbclass, and a combination of anonymous python and a prefunc is used to append its value to AGLWGT_EXTRA_BUILD_ARGS if cmake.bbclass has been inherited. This fixes issues with e.g. widgets that use CMake and Qt5, as the Qt5 CMake modules seem to have issues with finding module includes if the generated toolchain.cmake and OE_CMAKE* values are not passed down to CMake. - The do_aglwgt_package and do_aglwgt_deploy tasks have been converted into aglwgt_do_compile and aglwgt_do_install, and aglwgt_do_compile now calls autobuild to build and package all widgets. This fixes a lot of inconsistencies with respect to the debug/test/coverage widget build environment that were seen with the previous approach. - Logic has been added to clear out the target build directory (${B}) if it is not the same as the source directory (${S}) to match the behavior of do_configure in cmake.bbclass. - All autobuild invocations are now done with the working directory being the build directory (${B}). If a widget build for some reason needs it to be inside the source tree (i.e. ${S}), as before, it should either over-ride the value of B in its recipe, or change directories in its autobuild script. An example of widgets that this affects are the html5-* applications, their autobuild scripts have been appropriately updated. - The BUILD_DIR* output directory arguments passed to the autobuild script now point into ${B} and not ${S}, to ensure that the widget source trees are not contaminated if at all possible. It is believed that the previous rounds of autobuild script rework have addressed the need to support this in all in-tree widgets. - The do_install_bbappend in the agl-service-network binding recipe has been updated for the change to build output directory location. Bug-AGL: SPEC-2049, SPEC-3300 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I88ca33ad7a460436008442a3a8f1adf197f5a669 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/24884 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>