On 5/22/23 12:34, Denys Dmytriyenko wrote:
On Mon, May 22, 2023 at 10:41:55PM +0530, Chirag Shilwant wrote:
- openembedded-core:kirkstone added a condition to package weston init.d
script only when VIRTUAL-RUNTIME_init_manager isn't systemd which wasn't in
dunfell. Hence, manually install and ship the weston init.d script.
- Add weston-init.service file which is a systemd service which will launch
the weston init.d script. Make this service file run on boot by adding it to
SYSTEMD_SERVICE.
- Reassign INITSCRIPT_NAME and INITSCRIPT_PARAMS values to nothing as
weston-init.service will now be the service file.
1. Why do you need to do this dance? Doesn't systemd-compat-units do that for
you already?
2. The plan is to convert to rootless execution of weston and hence most if
not all of this code will be replaced anyway.
Signed-off-by: Chirag Shilwant <[email protected]>
---
.../wayland/weston-init.bbappend | 20 ++++++++++++++-----
.../wayland/weston-init/weston-init.service | 10 ++++++++++
2 files changed, 25 insertions(+), 5 deletions(-)
create mode 100644
meta-arago-distro/recipes-graphics/wayland/weston-init/weston-init.service
diff --git a/meta-arago-distro/recipes-graphics/wayland/weston-init.bbappend
b/meta-arago-distro/recipes-graphics/wayland/weston-init.bbappend
index 28e7ae39..c294fba4 100644
--- a/meta-arago-distro/recipes-graphics/wayland/weston-init.bbappend
+++ b/meta-arago-distro/recipes-graphics/wayland/weston-init.bbappend
@@ -1,23 +1,33 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-PR:append = ".arago12"
+PR:append = ".arago13"
SRC_URI:append = " \
file://runWeston \
file://wayland_env.sh \
file://weston.ini \
+ file://weston-init.service \
"
do_install:append() {
install -d ${D}${bindir}
install -m 755 ${WORKDIR}/runWeston ${D}${bindir}
rm -rf ${D}${systemd_system_unitdir}
-
+
install -d ${D}${sysconfdir}/profile.d
install -m 0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}
install -m 0644 ${WORKDIR}/wayland_env.sh ${D}${sysconfdir}/profile.d/
+ install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
+ sed -i 's#ROOTHOME#${ROOT_HOME}#' ${D}/${sysconfdir}/init.d/weston
+
+ install -d ${D}${sysconfdir}/systemd/system
+ install -D -p -m0644 ${WORKDIR}/weston-init.service
${D}${sysconfdir}/systemd/system/weston.service
+ install -D -p -m0644 ${WORKDIR}/weston.socket
${D}${sysconfdir}/systemd/system
}
-FILES:${PN}:remove = "${systemd_system_unitdir}/weston.service ${systemd_system_unitdir}/weston.socket"
-FILES:${PN} += "${sysconfdir}/profile.d/* ${sysconfdir}/weston.ini"
-SYSTEMD_SERVICE:${PN}:remove = "weston.service weston.socket"
+FILES:${PN} += "${sysconfdir}/profile.d/* ${sysconfdir}/weston.ini
${sysconfdir}/systemd/system/weston.service
${sysconfdir}/systemd/system/weston.socket"
+
+SYSTEMD_SERVICE:${PN} = "weston.service"
+
+INITSCRIPT_NAME = ""
+INITSCRIPT_PARAMS = ""
diff --git
a/meta-arago-distro/recipes-graphics/wayland/weston-init/weston-init.service
b/meta-arago-distro/recipes-graphics/wayland/weston-init/weston-init.service
new file mode 100644
index 00000000..d4c7d472
--- /dev/null
+++ b/meta-arago-distro/recipes-graphics/wayland/weston-init/weston-init.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Systemd Service to Start Weston
+
+[Service]
+Type=forking
+ExecStart=/etc/init.d/weston start
+StandardOutput=journal
+
+[Install]
+WantedBy=multi-user.target
--
2.34.1
Chirag, hold off on this for now. I've got a series cleaning up a lot of
graphics patches in Weston, Qt, and the likes that also addresses this.
It likely won't make 9.0 but it's still in the works.
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#14429):
https://lists.yoctoproject.org/g/meta-arago/message/14429
Mute This Topic: https://lists.yoctoproject.org/mt/99069495/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-arago/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-