diff options
author | Scott Murray <scott.murray@konsulko.com> | 2023-06-05 10:08:59 -0400 |
---|---|---|
committer | Scott Murray <scott.murray@konsulko.com> | 2023-06-07 13:33:53 -0400 |
commit | 2507e4a69862808a6331b0e4c665b694f49a49b9 (patch) | |
tree | 7031fe828a07407a21dcf82dd37fbd1774d5f6af /recipes-platform/images | |
parent | cce52591f8e00ae41ae380a597d620b0856d004d (diff) |
Remove systemd user session and clean up packagegroups and imagespike_15.91.0pike/15.91.015.91.0
Remove the use of 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:
- Rework systemd units and recipes of affected applications.
- Rework images to pull in image .bb files instead of .inc files.
- Pull in the new agl-image-compositor as a base image where
appropriate.
- Update weston-terminal-conf recipe to use new split out
weston-terminal package.
- Use new agl-crosssdk bbclass where appropriate.
- Pull some local common cross-SDK additions into a new
agl-ivi-crosssdk.inc include file and use as appropriate. Note
that this does have a side effect of likely correcting the contents
of agl-image-ivi-crosssdk for some recent additions.
- Remove flutter-gallery bbappend that turned it into an app, as we
are not using it in images, have other examples now, and it seems
better to not affect the contents of agl-image-flutter.
- Remove unused agl-image-graphical-html5. If a downstream user does
desire an image with Chromium+WAM without applications, restoring it
can be considered.
- Remove unused agl-image-graphical-qt5-crosssdk.
- Remove all packagegroup-agl-profile-* packagegroups, as they were
either empty or not providing value at this point. Any future plans
for defining profiles can start from a clean sheet.
- Added new packagegroup-agl-ivi-multimedia-hardware to hold some
rcar3 specific additions (via override) that were previously being
appended onto packagegroup-agl-graphical-multimedia even though
they are machine-specific and that packagegroup is not. This may
be a stopgap solution if the agl-ivi-* packagegroups are reworked
further.
- Replace some :append usage with += to avoid creating problems
for downstream users.
Bug-AGL: SPEC-4714, SPEC-4813
Change-Id: I544b1495bed1e2e2412a8e46b7d20d7622ec28c9
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Diffstat (limited to 'recipes-platform/images')
14 files changed, 54 insertions, 150 deletions
diff --git a/recipes-platform/images/agl-cluster-demo-platform-flutter.bb b/recipes-platform/images/agl-cluster-demo-platform-flutter.bb index bf3820aa9..fc3cc51fc 100644 --- a/recipes-platform/images/agl-cluster-demo-platform-flutter.bb +++ b/recipes-platform/images/agl-cluster-demo-platform-flutter.bb @@ -2,7 +2,7 @@ SUMMARY = "Baseline Flutter Image for Release" LICENSE = "MIT" -require recipes-platform/images/agl-image-weston.inc +require recipes-platform/images/agl-image-compositor.bb IMAGE_FEATURES += "splash package-management ssh-server-openssh" @@ -21,12 +21,9 @@ IMAGE_KUKSA_PACKAGES = " \ " # generic -IMAGE_INSTALL:append = "\ - agl-compositor \ - agl-compositor-init \ +IMAGE_INSTALL += "\ ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ \ - packagegroup-agl-profile-graphical \ packagegroup-agl-networking \ cluster-receiver \ \ @@ -35,7 +32,7 @@ IMAGE_INSTALL:append = "\ " # Flutter -IMAGE_INSTALL:append = "\ +IMAGE_INSTALL += "\ flutter-cluster-dashboard \ ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "flutter-cluster-dashboard-conf-demo", "flutter-cluster-dashboard-conf", d)} \ cluster-demo-config-flutter \ diff --git a/recipes-platform/images/agl-cluster-demo-platform.bb b/recipes-platform/images/agl-cluster-demo-platform.bb index 8a3b9a793..f0b04a6b5 100644 --- a/recipes-platform/images/agl-cluster-demo-platform.bb +++ b/recipes-platform/images/agl-cluster-demo-platform.bb @@ -2,7 +2,7 @@ DESCRIPTION = "AGL Cluster Demo Platform image currently contains a simple clust LICENSE = "MIT" -require recipes-platform/images/agl-image-boot.inc +require recipes-platform/images/agl-image-compositor.bb IMAGE_FEATURES += "splash package-management ssh-server-openssh" @@ -11,7 +11,7 @@ inherit features_check REQUIRED_DISTRO_FEATURES = "wayland" # add packages for cluster demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ +IMAGE_INSTALL += " \ packagegroup-agl-cluster-demo-platform \ ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "cluster-demo-config", "", d)} \ ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ diff --git a/recipes-platform/images/agl-cluster-demo-qtcompositor.bb b/recipes-platform/images/agl-cluster-demo-qtcompositor.bb index a9da97639..69dee2dfc 100644 --- a/recipes-platform/images/agl-cluster-demo-qtcompositor.bb +++ b/recipes-platform/images/agl-cluster-demo-qtcompositor.bb @@ -1,23 +1,11 @@ DESCRIPTION = "AGL Cluster Demo Qtwayland Compositor image currently contains a \ -simple cluster interface and some AGL service." +simple cluster interface." LICENSE = "MIT" -require recipes-platform/images/agl-image-boot.inc +require recipes-platform/images/agl-image-weston.bb IMAGE_FEATURES += "splash package-management ssh-server-dropbear" -inherit features_check - -REQUIRED_DISTRO_FEATURES = "wayland" - -# add packages for cluster demo qtcompositor -IMAGE_INSTALL:append = " \ - packagegroup-agl-cluster-demo-qtcompositor \ -" - -# NOTE: This should be revisited after upgrading to hardknott or later, -# as it may no longer be required. However, since Wayland is not -# being used, the new "weston" image feature may not be a viable -# option. -SYSTEMD_DEFAULT_TARGET = "graphical.target" +# Add packages for qtcompositor demo +IMAGE_INSTALL += "cluster-gauges-qtcompositor" diff --git a/recipes-platform/images/agl-image-graphical-html5.bb b/recipes-platform/images/agl-image-graphical-html5.bb deleted file mode 100644 index c25a92750..000000000 --- a/recipes-platform/images/agl-image-graphical-html5.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "An image containing all packages required to run web applications" - -require recipes-platform/images/agl-image-minimal.inc - -IMAGE_FEATURES += "splash" - -IMAGE_FEATURES += "${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'ssh-server-dropbear' , '', d)}" - -inherit features_check - -REQUIRED_DISTRO_FEATURES = "wayland" - - -LICENSE = "MIT" - -IMAGE_INSTALL:append = "\ - packagegroup-agl-profile-graphical-html5 \ - " - diff --git a/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb b/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb deleted file mode 100755 index 596ac80eb..000000000 --- a/recipes-platform/images/agl-image-graphical-qt5-crosssdk.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "Cross SDK of Full AGL Distribution for IVI profile" - -DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \ -It includes the full meta-toolchain, plus developement headers and libraries \ -to form a standalone cross SDK." - -#require agl-image-graphical-qt5.bb -require recipes-platform/images/agl-image-weston.inc - - -LICENSE = "MIT" - -require recipes-platform/images/agl-image-minimal-crosssdk.inc - -# Add wayland-scanner to SDK (SPEC-945) -# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup -# wayland-scanner is in nativesdk-wayland-dev ! -# option: add also nativesdk-qtwayland-tools -TOOLCHAIN_HOST_TASK:append = " nativesdk-wayland nativesdk-wayland-dev" - -TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " - -# Add qtwaylandscanner to the SDK -TOOLCHAIN_HOST_TASK:append = " nativesdk-qtwayland-tools " - - -inherit populate_sdk populate_sdk_qt5 - -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs diff --git a/recipes-platform/images/agl-image-ivi-crosssdk.bb b/recipes-platform/images/agl-image-ivi-crosssdk.bb index 2f722b21c..be008832b 100644 --- a/recipes-platform/images/agl-image-ivi-crosssdk.bb +++ b/recipes-platform/images/agl-image-ivi-crosssdk.bb @@ -1,20 +1,11 @@ -require recipes-platform/images/agl-image-minimal-crosssdk.inc +require agl-image-ivi.bb -require recipes-platform/images/agl-image-minimal.inc +SUMMARY = "Cross SDK of minimal AGL Distribution for IVI profile" -IMAGE_INSTALL:append = "\ - packagegroup-agl-image-ivi \ - packagegroup-agl-ivi-services \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'packagegroup-pipewire', '', d)} \ - can-utils \ - iproute2 \ - " +DESCRIPTION = "SDK image for minimal AGL Distribution for IVI profile. \ +It includes the full toolchain, plus development headers and libraries \ +to form a standalone cross SDK." -IMAGE_FEATURES += "splash package-management ssh-server-openssh" +inherit agl-crosssdk -inherit populate_sdk - -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs +require agl-ivi-crosssdk.inc diff --git a/recipes-platform/images/agl-image-ivi.bb b/recipes-platform/images/agl-image-ivi.bb index b5cf0a545..417665144 100644 --- a/recipes-platform/images/agl-image-ivi.bb +++ b/recipes-platform/images/agl-image-ivi.bb @@ -4,22 +4,16 @@ DESCRIPTION = "Basic image for baseline of AGL Distribution for IVI profile." LICENSE = "MIT" -require recipes-platform/images/agl-image-weston.inc +require recipes-platform/images/agl-image-compositor.bb -IMAGE_INSTALL:append = "\ +IMAGE_INSTALL += " \ packagegroup-agl-image-ivi \ packagegroup-agl-ivi-services \ ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'packagegroup-agl-ivi-services-devel' , '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'packagegroup-pipewire', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'wireplumber-config-agl wireplumber-policy-config-agl', '', d)} \ can-utils \ iproute2 \ " IMAGE_FEATURES += "splash package-management ssh-server-openssh" -# NOTE: In hardknott or later this can be replaced by adding "weston" -# to IMAGE_FEATURES. -SYSTEMD_DEFAULT_TARGET = "graphical.target" - diff --git a/recipes-platform/images/agl-ivi-crosssdk.inc b/recipes-platform/images/agl-ivi-crosssdk.inc new file mode 100644 index 000000000..551c03437 --- /dev/null +++ b/recipes-platform/images/agl-ivi-crosssdk.inc @@ -0,0 +1,21 @@ +# +# Common IVI SDK configuration +# +# Only host tool additions should done here +# + +# Add wayland-scanner to SDK (SPEC-945) +# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup +# wayland-scanner is in nativesdk-wayland-dev ! +# option: add also nativesdk-qtwayland-tools +TOOLCHAIN_HOST_TASK += "nativesdk-wayland nativesdk-wayland-dev" + +TOOLCHAIN_HOST_TASK += "nativesdk-perl-modules" + +# add grpc for building natively for grpc_cpp_plugin +TOOLCHAIN_HOST_TASK += "nativesdk-grpc nativesdk-grpc-dev" + +# Add gcc-sanitizers to support building applications using the SDK with +# AddressSanitizer support to detect use-after-frees along with other +# memory issue. +TOOLCHAIN_TARGET_TASK += "gcc-sanitizers" diff --git a/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb b/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb index 3e3d478d3..c9ed07a0a 100644 --- a/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb +++ b/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb @@ -1,50 +1,16 @@ require agl-ivi-demo-platform.bb -SUMMARY = "Cross SDK of Full AGL Distribution for IVI profile" +SUMMARY = "Cross SDK of demo AGL Distribution for IVI profile" DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \ -It includes the full meta-toolchain, plus developement headers and libraries \ -to form a standalone cross SDK." +It includes the full toolchain, plus development headers and libraries \ +for everything in the demo platform to form a standalone cross SDK." -require recipes-platform/images/agl-image-minimal-crosssdk.inc +inherit agl-crosssdk -# Add wayland-scanner to SDK (SPEC-945) -# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup -# wayland-scanner is in nativesdk-wayland-dev ! -# option: add also nativesdk-qtwayland-tools -TOOLCHAIN_HOST_TASK:append = " nativesdk-wayland nativesdk-wayland-dev" +require agl-ivi-crosssdk.inc -TOOLCHAIN_HOST_TASK:append = " nativesdk-perl-modules " +inherit populate_sdk_qt5 # Add qtwaylandscanner to the SDK -TOOLCHAIN_HOST_TASK:append = " nativesdk-qtwayland-tools " - -# add grpc for building natively for grpc_cpp_plugin -TOOLCHAIN_HOST_TASK:append = " nativesdk-grpc nativesdk-grpc-dev " -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs - -inherit populate_sdk populate_sdk_qt5 - -# Task do_populate_sdk and do_rootfs can't be exec simultaneously. -# Both exec "createrepo" on the same directory, and so one of them -# can failed (randomly). -addtask do_populate_sdk after do_rootfs - -# Add gcc-sanitizers to support building applications using the SDK with -# AddressSanitizer support to detect use-after-frees along with other -# memory issue. -TOOLCHAIN_TARGET_TASK += "gcc-sanitizers" - - -TOOLCHAIN_HOST_TASK += " \ - nativesdk-lua \ -" - -# Required dependencies for app and test builds -TOOLCHAIN_TARGET_TASK += " \ - lua-dev \ - lua-staticdev \ -" +TOOLCHAIN_HOST_TASK += "nativesdk-qtwayland-tools" diff --git a/recipes-platform/images/agl-ivi-demo-platform-flutter.bb b/recipes-platform/images/agl-ivi-demo-platform-flutter.bb index f385c1e08..85f892fc0 100644 --- a/recipes-platform/images/agl-ivi-demo-platform-flutter.bb +++ b/recipes-platform/images/agl-ivi-demo-platform-flutter.bb @@ -6,7 +6,7 @@ require agl-demo-features.inc require agl-demo-container-guest-integration.inc # add packages for demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ +IMAGE_INSTALL += " \ packagegroup-agl-demo-platform-flutter \ weston-ini-conf-flutter \ ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "weston-terminal-conf", d)} \ diff --git a/recipes-platform/images/agl-ivi-demo-platform-html5.bb b/recipes-platform/images/agl-ivi-demo-platform-html5.bb index dc82ce4e5..85d2ca059 100644 --- a/recipes-platform/images/agl-ivi-demo-platform-html5.bb +++ b/recipes-platform/images/agl-ivi-demo-platform-html5.bb @@ -6,6 +6,6 @@ DESCRIPTION = "Contains the web runtime and sample web apps" require agl-demo-container-guest-integration.inc # add packages for demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ +IMAGE_INSTALL += " \ packagegroup-agl-demo-platform-html5 \ " diff --git a/recipes-platform/images/agl-ivi-demo-platform.bb b/recipes-platform/images/agl-ivi-demo-platform.bb index f5fcad912..a07fa2faa 100644 --- a/recipes-platform/images/agl-ivi-demo-platform.bb +++ b/recipes-platform/images/agl-ivi-demo-platform.bb @@ -1,13 +1,12 @@ require agl-image-ivi.bb -DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and \ -demos." +DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and demos." require agl-demo-features.inc require agl-demo-container-guest-integration.inc # add packages for demo platform (include demo apps) here -IMAGE_INSTALL:append = " \ +IMAGE_INSTALL += " \ packagegroup-agl-demo-platform \ ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "weston-terminal-conf", d)} \ " diff --git a/recipes-platform/images/agl-kvm-demo-platform.bb b/recipes-platform/images/agl-kvm-demo-platform.bb index 378ea8322..4337ec025 100644 --- a/recipes-platform/images/agl-kvm-demo-platform.bb +++ b/recipes-platform/images/agl-kvm-demo-platform.bb @@ -2,13 +2,12 @@ DESCRIPTION = "AGL KVM+QEMU Demo Platform image." LICENSE = "MIT" -require recipes-platform/images/agl-image-weston.inc +require recipes-platform/images/agl-image-compositor.bb IMAGE_FEATURES += "splash package-management ssh-server-openssh" # Add packages for KVM+QEMU demo platform here -IMAGE_INSTALL:append = " \ - packagegroup-agl-image-minimal \ +IMAGE_INSTALL += " \ packagegroup-agl-core-connectivity \ kernel-image \ agl-compositor \ diff --git a/recipes-platform/images/agl-telematics-demo-platform.bb b/recipes-platform/images/agl-telematics-demo-platform.bb index b8a99617c..7a113b65b 100644 --- a/recipes-platform/images/agl-telematics-demo-platform.bb +++ b/recipes-platform/images/agl-telematics-demo-platform.bb @@ -2,12 +2,12 @@ DESCRIPTION = "AGL Telematics Demo Platform image." LICENSE = "MIT" -require recipes-platform/images/agl-image-boot.inc +require recipes-platform/images/agl-image-minimal.bb inherit features_check REQUIRED_DISTRO_FEATURES = "3g" -IMAGE_INSTALL:append = " \ +IMAGE_INSTALL += " \ packagegroup-agl-telematics-demo-platform \ " |