diff --git a/main/postmarketos-bootsplash/APKBUILD b/main/postmarketos-bootsplash/APKBUILD index 0ffaf2f46..e4fd330d2 100644 --- a/main/postmarketos-bootsplash/APKBUILD +++ b/main/postmarketos-bootsplash/APKBUILD @@ -1,6 +1,7 @@ +# Co-Maintainer: Ferass El Hafidi maintainer="Clayton Craft " pkgname=postmarketos-bootsplash -pkgver=0.5.0 +pkgver=0.5.1 pkgrel=0 pkgdesc="pmOS integration components for boot/shutdown splash screen" url="https://postmarketos.org" @@ -13,19 +14,23 @@ depends=" plymouth-drm postmarketos-plymouth-themes " -depends_openrc="plymouth-openrc-plugin" options="!check" # no testsuite subpackages="$pkgname-openrc" source=" 20-plymouth.conf + kill-plymouth plymouthd.conf postmarketos-bootsplash.files " replaces="plymouth" +install="postmarketos-bootsplash-openrc.post-install postmarketos-bootsplash-openrc.post-upgrade" provides="postmarketos-bootsplash-virtual" provider_priority=100 package() { + # Temporary workaround for OpenRC, see pmaports#4536 + install -Dm755 "$srcdir/kill-plymouth" -t "$pkgdir"/etc/init.d/ + # NOTE: install files to initramfs-extra due to size install -Dm644 "$srcdir"/postmarketos-bootsplash.files \ "$pkgdir"/usr/share/mkinitfs/files-extra/30-postmarketos-bootsplash.files @@ -48,6 +53,7 @@ openrc() { sha512sums=" dc6d38d3048ee3be47871cb9f4909cc7572f57be792c1cf39688abfd9659e5149699308ead35fe7fd37b87fbac5668cbf03d3b6acd74ec05c8c4b39735e9e8df 20-plymouth.conf +5d11ab555600606f5f27146aa982075d622068bb82b34144459c174da9e22c19b3adcd076d780885cd97313f1e3aee87052769e32d8b1332e4516abd0c9dda0d kill-plymouth d4cab2578116afa4ca33ca94671191d44e71d4c46cfb11248c42f6bd1e49714eae56339330f483b247a3da0865892a100dc6f33e378a9cbfaea2f56e9616fcd8 plymouthd.conf c261e23acc70c8062abf4d5419806a832889a70ed8222535269206bb333dfa6f9ab953fe2ddfcf032fe7f89c2ca0ed6497e6a61cf9fd99f6b6372b3dd55658af postmarketos-bootsplash.files " diff --git a/main/postmarketos-bootsplash/kill-plymouth b/main/postmarketos-bootsplash/kill-plymouth new file mode 100644 index 000000000..a20af2601 --- /dev/null +++ b/main/postmarketos-bootsplash/kill-plymouth @@ -0,0 +1,19 @@ +#!/sbin/openrc-run +# This is a *temporary* workaround to OpenRC hanging at times if plugins are +# used on a musl-based system (such as plymouth-openrc-plugin). This also means +# plymouth will not be ran on shutdown, but given this service is temporary, it +# should be fine. It will be replaced with the plymouth-openrc-plugin again when +# this is fixed upstream, which has better integration. +# +# See also: +# * https://gitlab.postmarketos.org/postmarketOS/pmaports/-/work_items/4536 +# * https://github.com/OpenRC/openrc/pull/1007 + +name="Exit plymouthd" +description="Stop plymouthd before running the graphical UI" +command="/usr/bin/plymouth" +command_args="quit" + +depend() { + before display-manager +} diff --git a/main/postmarketos-bootsplash/postmarketos-bootsplash-openrc.post-install b/main/postmarketos-bootsplash/postmarketos-bootsplash-openrc.post-install new file mode 100644 index 000000000..4a7c47627 --- /dev/null +++ b/main/postmarketos-bootsplash/postmarketos-bootsplash-openrc.post-install @@ -0,0 +1,3 @@ +#!/bin/sh + +rc-update add kill-plymouth default diff --git a/main/postmarketos-bootsplash/postmarketos-bootsplash-openrc.post-upgrade b/main/postmarketos-bootsplash/postmarketos-bootsplash-openrc.post-upgrade new file mode 120000 index 000000000..2f0b337a7 --- /dev/null +++ b/main/postmarketos-bootsplash/postmarketos-bootsplash-openrc.post-upgrade @@ -0,0 +1 @@ +postmarketos-bootsplash-openrc.post-install \ No newline at end of file