]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
weston-init: add a native systemd unit file
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>
Tue, 1 Dec 2015 15:35:56 +0000 (17:35 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 12 Dec 2015 23:31:40 +0000 (23:31 +0000)
Previously weston was started by systemd via a classic init script

[YOCTO #5582]

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/recipes-graphics/wayland/weston-init.bb
meta/recipes-graphics/wayland/weston-init/weston.service [new file with mode: 0644]

index fc2e4f80ee4aac69bd81c06bbca14e9a1c249a61..653541e3c8bb4b9aa664680db9ae2805b8983158 100644 (file)
@@ -1,17 +1,22 @@
-SUMMARY = "Startup script for the Weston Wayland compositor"
+SUMMARY = "Startup script and systemd unit file for the Weston Wayland compositor"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
 
-SRC_URI = "file://init"
+SRC_URI = "file://init \
+           file://weston.service"
 
 S = "${WORKDIR}"
 
 do_install() {
        install -d ${D}/${sysconfdir}/init.d
        install -m755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
+
+       install -d ${D}${systemd_system_unitdir}
+       install -m0644 ${WORKDIR}/weston.service ${D}${systemd_system_unitdir}
 }
 
-inherit allarch update-rc.d distro_features_check
+inherit allarch update-rc.d distro_features_check systemd
+
 # rdepends on weston which depends on virtual/egl
 REQUIRED_DISTRO_FEATURES = "opengl"
 
@@ -19,3 +24,5 @@ RDEPENDS_${PN} = "weston kbd"
 
 INITSCRIPT_NAME = "weston"
 INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
+
+SYSTEMD_SERVICE_${PN} = "weston.service"
diff --git a/meta/recipes-graphics/wayland/weston-init/weston.service b/meta/recipes-graphics/wayland/weston-init/weston.service
new file mode 100644 (file)
index 0000000..4f1f7ff
--- /dev/null
@@ -0,0 +1,15 @@
+[Unit]
+Description=Weston Wayland compositor startup
+RequiresMountsFor=/run
+
+[Service]
+User=root
+EnvironmentFile=-/etc/default/weston
+Environment="XDG_RUNTIME_DIR=/run/user/root"
+ExecStartPre=/bin/mkdir -p /run/user/root
+ExecStartPre=/bin/chmod 0700 /run/user/root
+ExecStart=/usr/bin/openvt -v -e /usr/bin/weston -- $OPTARGS
+
+[Install]
+WantedBy=multi-user.target
+