main/postmarketos-bootsplash: revert to killing plymouth using an openrc service
plymouth-openrc-plugin (and any other OpenRC plugins really) trigger a bug in OpenRC that only happens on musl-based systems, which can result in a hang if a service fails. A PR has been submitted to OpenRC to fix this bug. While the PR is waiting for review and merging, work around this by reverting to killing the splash from an OpenRC service to at least no longer trigger this bug. See pmaports#4536 for more context. Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org> Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8560>
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
|
# Co-Maintainer: Ferass El Hafidi <funderscore@postmarketos.org>
|
||||||
maintainer="Clayton Craft <clayton@craftyguy.net>"
|
maintainer="Clayton Craft <clayton@craftyguy.net>"
|
||||||
pkgname=postmarketos-bootsplash
|
pkgname=postmarketos-bootsplash
|
||||||
pkgver=0.5.0
|
pkgver=0.5.1
|
||||||
pkgrel=0
|
pkgrel=0
|
||||||
pkgdesc="pmOS integration components for boot/shutdown splash screen"
|
pkgdesc="pmOS integration components for boot/shutdown splash screen"
|
||||||
url="https://postmarketos.org"
|
url="https://postmarketos.org"
|
||||||
@@ -13,19 +14,23 @@ depends="
|
|||||||
plymouth-drm
|
plymouth-drm
|
||||||
postmarketos-plymouth-themes
|
postmarketos-plymouth-themes
|
||||||
"
|
"
|
||||||
depends_openrc="plymouth-openrc-plugin"
|
|
||||||
options="!check" # no testsuite
|
options="!check" # no testsuite
|
||||||
subpackages="$pkgname-openrc"
|
subpackages="$pkgname-openrc"
|
||||||
source="
|
source="
|
||||||
20-plymouth.conf
|
20-plymouth.conf
|
||||||
|
kill-plymouth
|
||||||
plymouthd.conf
|
plymouthd.conf
|
||||||
postmarketos-bootsplash.files
|
postmarketos-bootsplash.files
|
||||||
"
|
"
|
||||||
replaces="plymouth"
|
replaces="plymouth"
|
||||||
|
install="postmarketos-bootsplash-openrc.post-install postmarketos-bootsplash-openrc.post-upgrade"
|
||||||
provides="postmarketos-bootsplash-virtual"
|
provides="postmarketos-bootsplash-virtual"
|
||||||
provider_priority=100
|
provider_priority=100
|
||||||
|
|
||||||
package() {
|
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
|
# NOTE: install files to initramfs-extra due to size
|
||||||
install -Dm644 "$srcdir"/postmarketos-bootsplash.files \
|
install -Dm644 "$srcdir"/postmarketos-bootsplash.files \
|
||||||
"$pkgdir"/usr/share/mkinitfs/files-extra/30-postmarketos-bootsplash.files
|
"$pkgdir"/usr/share/mkinitfs/files-extra/30-postmarketos-bootsplash.files
|
||||||
@@ -48,6 +53,7 @@ openrc() {
|
|||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
dc6d38d3048ee3be47871cb9f4909cc7572f57be792c1cf39688abfd9659e5149699308ead35fe7fd37b87fbac5668cbf03d3b6acd74ec05c8c4b39735e9e8df 20-plymouth.conf
|
dc6d38d3048ee3be47871cb9f4909cc7572f57be792c1cf39688abfd9659e5149699308ead35fe7fd37b87fbac5668cbf03d3b6acd74ec05c8c4b39735e9e8df 20-plymouth.conf
|
||||||
|
5d11ab555600606f5f27146aa982075d622068bb82b34144459c174da9e22c19b3adcd076d780885cd97313f1e3aee87052769e32d8b1332e4516abd0c9dda0d kill-plymouth
|
||||||
d4cab2578116afa4ca33ca94671191d44e71d4c46cfb11248c42f6bd1e49714eae56339330f483b247a3da0865892a100dc6f33e378a9cbfaea2f56e9616fcd8 plymouthd.conf
|
d4cab2578116afa4ca33ca94671191d44e71d4c46cfb11248c42f6bd1e49714eae56339330f483b247a3da0865892a100dc6f33e378a9cbfaea2f56e9616fcd8 plymouthd.conf
|
||||||
c261e23acc70c8062abf4d5419806a832889a70ed8222535269206bb333dfa6f9ab953fe2ddfcf032fe7f89c2ca0ed6497e6a61cf9fd99f6b6372b3dd55658af postmarketos-bootsplash.files
|
c261e23acc70c8062abf4d5419806a832889a70ed8222535269206bb333dfa6f9ab953fe2ddfcf032fe7f89c2ca0ed6497e6a61cf9fd99f6b6372b3dd55658af postmarketos-bootsplash.files
|
||||||
"
|
"
|
||||||
|
|||||||
@@ -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
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
rc-update add kill-plymouth default
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
postmarketos-bootsplash-openrc.post-install
|
||||||
Reference in New Issue
Block a user