native-shell-client: Add systemd unit 93/28193/1
authorScott Murray <scott.murray@konsulko.com>
Tue, 22 Nov 2022 08:36:44 +0000 (03:36 -0500)
committerScott Murray <scott.murray@konsulko.com>
Tue, 22 Nov 2022 08:36:44 +0000 (03:36 -0500)
Add a bbappend for native-shell-client to add a systemd unit that
runs in the agl-driver user session.  This is required to actually
get it started if it is built into an image.

Bug-AGL: SPEC-4618

Change-Id: If6c1c015544ee6f126fb30ca67822a38a83df64c
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
recipes-demo/native-shell-client/files/native-shell-client.service [new file with mode: 0644]
recipes-demo/native-shell-client/native-shell-client_agldemo.inc [new file with mode: 0644]
recipes-demo/native-shell-client/native-shell-client_git.bbappend [new file with mode: 0644]

diff --git a/recipes-demo/native-shell-client/files/native-shell-client.service b/recipes-demo/native-shell-client/files/native-shell-client.service
new file mode 100644 (file)
index 0000000..4d77513
--- /dev/null
@@ -0,0 +1,11 @@
+[Unit]
+Requires=agl-compositor.service
+After=agl-compositor.service
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/native-shell-client
+Restart=on-failure
+
+[Install]
+WantedBy=agl-session.target
diff --git a/recipes-demo/native-shell-client/native-shell-client_agldemo.inc b/recipes-demo/native-shell-client/native-shell-client_agldemo.inc
new file mode 100644 (file)
index 0000000..5e2538e
--- /dev/null
@@ -0,0 +1,13 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
+
+SRC_URI += "file://native-shell-client.service"
+
+do_install:append() {
+    install -d ${D}${systemd_user_unitdir}/agl-session.target.wants
+    install -m0644 ${WORKDIR}/native-shell-client.service ${D}${systemd_user_unitdir}/native-shell-client.service
+    ln -s ../native-shell-client.service ${D}${systemd_user_unitdir}/agl-session.target.wants/native-shell-client.service
+}
+
+FILES:${PN} += " ${systemd_user_unitdir}"
+
+RCONFLICTS:${PN} = "homescreen"
diff --git a/recipes-demo/native-shell-client/native-shell-client_git.bbappend b/recipes-demo/native-shell-client/native-shell-client_git.bbappend
new file mode 100644 (file)
index 0000000..0f2cf75
--- /dev/null
@@ -0,0 +1 @@
+require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'native-shell-client_agldemo.inc', '', d)}