aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-agl-lxc/recipes-demo/cluster-refgui/cluster-refgui/cluster.service4
-rw-r--r--meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.env1
-rw-r--r--meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.ini9
-rw-r--r--meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.service19
-rw-r--r--meta-agl-lxc/recipes-graphics/wayland/weston-init-guest_0.1.bb47
-rw-r--r--meta-agl-lxc/recipes-platform/images/guest-image-cluster-demo.bb3
6 files changed, 79 insertions, 4 deletions
diff --git a/meta-agl-lxc/recipes-demo/cluster-refgui/cluster-refgui/cluster.service b/meta-agl-lxc/recipes-demo/cluster-refgui/cluster-refgui/cluster.service
index d0c1ba4e..b43c475b 100644
--- a/meta-agl-lxc/recipes-demo/cluster-refgui/cluster-refgui/cluster.service
+++ b/meta-agl-lxc/recipes-demo/cluster-refgui/cluster-refgui/cluster.service
@@ -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
index 00000000..d6b1a197
--- /dev/null
+++ b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.env
@@ -0,0 +1 @@
+XDG_RUNTIME_DIR=/run/user/0
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
index 00000000..2c05c58a
--- /dev/null
+++ b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.ini
@@ -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
index 00000000..5f23ea79
--- /dev/null
+++ b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest/weston.service
@@ -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
index 00000000..e18dbe52
--- /dev/null
+++ b/meta-agl-lxc/recipes-graphics/wayland/weston-init-guest_0.1.bb
@@ -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"
diff --git a/meta-agl-lxc/recipes-platform/images/guest-image-cluster-demo.bb b/meta-agl-lxc/recipes-platform/images/guest-image-cluster-demo.bb
index bbf72fbf..3d88b8d0 100644
--- a/meta-agl-lxc/recipes-platform/images/guest-image-cluster-demo.bb
+++ b/meta-agl-lxc/recipes-platform/images/guest-image-cluster-demo.bb
@@ -5,8 +5,7 @@ require guest-image-minimal.bb
IMAGE_INSTALL += " \
weston \
- weston-init \
- weston-ini-conf-landscape \
+ weston-init-guest \
cluster-refgui \
pipewire-ic-ipc \
"