[yocto] [PATCH] psplash: Adding support for systemd service files

Saul Wold sgw at linux.intel.com
Tue Aug 12 08:07:52 PDT 2014


Maybe I was not clear about this, this should be a patch to psplash 
upstream, not to the oe-core metadata.  Then once we merge the change to 
psplash we can update the pslash recipes.

So the patch would be to add the 2 service files to psplash upstream.

http://git.yoctoproject.org/cgit/cgit.cgi/psplash/

Make Sense?

Sau!


On 08/11/2014 03:00 AM, Sujith H wrote:
> From: Sujith H <Sujith_Haridasan at mentor.com>
>
> If the DISTRO_FEATURES has systemd, then its better
> to have corresponding service files associated with
> the psplash. This change will help to do the same.
>
> Signed-off-by: Muzaffar Mahmood <muzaffar_mahmood at mentor.com>
> Signed-off-by: Sujith H <Sujith_Haridasan at mentor.com>
> ---
>   meta/recipes-core/psplash/files/psplash-quit.service  | 11 +++++++++++
>   meta/recipes-core/psplash/files/psplash-start.service | 11 +++++++++++
>   meta/recipes-core/psplash/psplash_git.bb              | 12 +++++++++++-
>   3 files changed, 33 insertions(+), 1 deletion(-)
>   create mode 100644 meta/recipes-core/psplash/files/psplash-quit.service
>   create mode 100644 meta/recipes-core/psplash/files/psplash-start.service
>
> diff --git a/meta/recipes-core/psplash/files/psplash-quit.service b/meta/recipes-core/psplash/files/psplash-quit.service
> new file mode 100644
> index 0000000..14bd499
> --- /dev/null
> +++ b/meta/recipes-core/psplash/files/psplash-quit.service
> @@ -0,0 +1,11 @@
> +[Unit]
> +Description=Terminate Psplash Boot Screen
> +After=psplash-start.service
> +
> +[Service]
> +Type=oneshot
> +ExecStart=/usr/bin/psplash-write QUIT
> +TimeoutSec=20
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/meta/recipes-core/psplash/files/psplash-start.service b/meta/recipes-core/psplash/files/psplash-start.service
> new file mode 100644
> index 0000000..502b150
> --- /dev/null
> +++ b/meta/recipes-core/psplash/files/psplash-start.service
> @@ -0,0 +1,11 @@
> +[Unit]
> +Description=Starts Psplash Boot screen
> +Wants=systemd-vconsole-setup.service
> +After=systemd-vconsole-setup.service systemd-udev-trigger.service systemd-udevd.service
> +DefaultDependencies=no
> +
> +[Service]
> +ExecStart=/usr/bin/psplash
> +
> +[Install]
> +WantedBy=sysinit.target
> diff --git a/meta/recipes-core/psplash/psplash_git.bb b/meta/recipes-core/psplash/psplash_git.bb
> index 628ced4..16fa0ae 100644
> --- a/meta/recipes-core/psplash/psplash_git.bb
> +++ b/meta/recipes-core/psplash/psplash_git.bb
> @@ -11,6 +11,8 @@ PR = "r15"
>
>   SRC_URI = "git://git.yoctoproject.org/${BPN} \
>              file://psplash-init \
> +           file://psplash-start.service \
> +           file://psplash-quit.service \
>              ${SPLASH_IMAGES}"
>
>   SPLASH_IMAGES = "file://psplash-poky-img.h;outsuffix=default"
> @@ -65,11 +67,14 @@ python __anonymous() {
>
>   S = "${WORKDIR}/git"
>
> -inherit autotools pkgconfig update-rc.d update-alternatives
> +inherit autotools pkgconfig update-rc.d update-alternatives systemd
>
>   ALTERNATIVE_PRIORITY = "100"
>   ALTERNATIVE_LINK_NAME[psplash] = "${bindir}/psplash"
>
> +SYSTEMD_PACKAGES = "${@base_contains('DISTRO_FEATURES','systemd','${PN}','',d)}"
> +SYSTEMD_SERVICE_${PN} = "${@base_contains('DISTRO_FEATURES','systemd','psplash-start.service psplash-quit.service','',d)}"
> +
>   python do_compile () {
>       import shutil
>
> @@ -103,6 +108,11 @@ do_install_append() {
>   		install -m 0755 $i ${D}${bindir}/$i
>   	done
>   	rm -f ${D}${bindir}/psplash
> +
> +	if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
> +                install -d ${D}${systemd_unitdir}/system
> +                install -m 644 ${WORKDIR}/*.service ${D}/${systemd_unitdir}/system
> +        fi
>   }
>
>   FILES_${PN} += "/mnt/.psplash"
>



More information about the yocto mailing list