|
As part of the systemd user session removal, some changes were
made to attempt to fix pulling in polkit for core-image-weston,
agl-image-weston, and agl-image-compositor so that the compositors
would correctly start up in the resulting images. Unfortunately,
just gating the dependency on polkit being in DISTRO_FEATURES breaks
the usecase of using poky and meta-agl-core with our poky-agl distro
configuration without also pulling in the meta-oe layer. This
combination is used for testing meta-agl-core on the Yocto Project
autobuilder, so that broke and was reported by upstream.
To fix this usecase, the polkit dependency logic has been shifted to
weston-init and agl-compositor-init via bbappends that are only used
when meta-oe is present via our existing BBFILES_DYNAMIC set up.
Since the dependency on polkit stems from a combination of the
compositor PAM configuration from the -init packages and having
systemd, pam, and polkit in DISTRO_FEATURES, this seems more correct,
anyways.
Other changes:
- The explicit pam DISTRO_FEATURES checking that was added in the
previous cleanup has been removed; it is actually redundant due to
weston and weston-init having checks. Using the .inc file for that
from upstream has been added to the agl-compositor and
agl-compositor-init recipes to match the weston recipes and make
the dependency visible in our tree.
- There is no further need for our bbappend to core-image-weston, so
it has been removed.
Bug-AGL: SPEC-4836
Change-Id: Ia3052023dfb06d1c2190a03c72606ab4b27bbdd2
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29014
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>
|
|
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>
|