Fix: weston is not running after BSP 5.5 merged in cluster-demo 94/26894/1
authorNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Sat, 6 Nov 2021 15:11:36 +0000 (00:11 +0900)
committerNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Mon, 22 Nov 2021 06:33:08 +0000 (15:33 +0900)
weston is not running after BSP 5.5 merged.
This patch create new weston-init for gest usage.

Bug-AGL: SPEC-4131

Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Change-Id: I9b6edc1c45aad0f985a307f3ffb0fe6a47195dd5

meta-agl-lxc/recipes-demo/cluster-refgui/cluster-refgui/cluster.service
meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.env [new file with mode: 0644]
meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.ini [new file with mode: 0644]
meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.service [new file with mode: 0644]
meta-agl-lxc/recipes-graphics/wayland/weston-init-guest_0.1.bb [new file with mode: 0644]
meta-agl-lxc/recipes-platform/images/guest-image-cluster-demo.bb

index d0c1ba4..b43c475 100644 (file)
@@ -1,7 +1,7 @@
 [Unit]
 Description=AGL Cluster Reference GUI
-After=weston@root.service
-Requires=weston@root.service
+After=multi-user.target weston.service
+Requires=multi-user.target weston.service
 
 [Service]
 Environment=XDG_RUNTIME_DIR=/run/user/0
diff --git a/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.env b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.env
new file mode 100644 (file)
index 0000000..d6b1a19
--- /dev/null
@@ -0,0 +1 @@
+XDG_RUNTIME_DIR=/run/user/0\r
diff --git a/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.ini b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.ini
new file mode 100644 (file)
index 0000000..2c05c58
--- /dev/null
@@ -0,0 +1,9 @@
+[core]
+backend=drm-backend.so
+require-input=false
+modules=systemd-notify.so
+repaint-window=34
+
+[shell]
+panel-position=none
+background-color=0xff808080
diff --git a/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.service b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.service
new file mode 100644 (file)
index 0000000..5f23ea7
--- /dev/null
@@ -0,0 +1,19 @@
+[Unit]
+Description=Weston Wayland Compositor
+RequiresMountsFor=/run
+After=multi-user.target
+Wants=multi-user.target
+
+[Service]
+User=root
+PAMName=login
+EnvironmentFile=-/etc/default/weston
+StandardError=journal
+PermissionsStartOnly=true
+IgnoreSIGPIPE=no
+Type=notify
+
+ExecStart=/usr/bin/weston --config /etc/xdg/weston/weston.ini --idle-time=0 --drm-lease=${DRM_LEASE_DEVICE} --log=/var/log/weston.log
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest_0.1.bb b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest_0.1.bb
new file mode 100644 (file)
index 0000000..e18dbe5
--- /dev/null
@@ -0,0 +1,47 @@
+SUMMARY = "Startup script and systemd unit file for the Weston Wayland compositor in guest cotainer"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+
+SRC_URI = "file://weston.env \
+           file://weston.ini \
+           file://weston.service \
+          "
+
+S = "${WORKDIR}"
+
+inherit features_check systemd
+
+do_install() {
+    install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
+    install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston
+
+    # Install Weston systemd service and accompanying udev rule
+    install -D -p -m0644 ${WORKDIR}/weston.service ${D}${systemd_system_unitdir}/weston.service
+    sed -i -e s:/etc:${sysconfdir}:g \
+        -e s:/usr/bin:${bindir}:g \
+        -e s:/var:${localstatedir}:g \
+        ${D}${systemd_unitdir}/system/weston.service
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+# rdepends on weston which depends on virtual/egl
+REQUIRED_DISTRO_FEATURES = "wayland"
+
+FILES_${PN} += " \
+    ${sysconfdir}/xdg/weston/weston.ini \
+    ${systemd_system_unitdir}/weston.service \
+    ${sysconfdir}/default/weston \
+    "
+CONFFILES_${PN} += " \
+    ${sysconfdir}/xdg/weston/weston.ini \
+    ${sysconfdir}/default/weston \
+    "
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "weston.service"
+SYSTEMD_AUTO_ENABLE = "enable"
+
+RDEPENDS_${PN} = "weston"
+
+RCONFLICTS_${PN} = "weston-init"
index 36f1ec7..ee52d57 100644 (file)
@@ -5,7 +5,6 @@ require guest-image-minimal.bb
 
 IMAGE_INSTALL += " \
     weston \
-    weston-init \
-    weston-ini-conf-landscape \
+    weston-init-guest \
     cluster-refgui \
 "