From 521cb9ea33455efb81c012746c4803479c662169 Mon Sep 17 00:00:00 2001 From: Andreas Grapentin Date: Thu, 1 Feb 2018 16:01:03 +0100 Subject: pcr/plymouth: updated to 0.9.3 --- pcr/plymouth/PKGBUILD | 43 ++++++++++++--------- pcr/plymouth/plymouth-start.service | 2 + pcr/plymouth/plymouth.encrypt_hook | 2 +- pcr/plymouth/plymouth.initcpio_install | 7 +--- pcr/plymouth/sd-plymouth.initcpio_install | 63 +++++++++++++++++++++++++++++++ 5 files changed, 93 insertions(+), 24 deletions(-) create mode 100644 pcr/plymouth/sd-plymouth.initcpio_install (limited to 'pcr/plymouth') diff --git a/pcr/plymouth/PKGBUILD b/pcr/plymouth/PKGBUILD index 3d825cedb..3b193df0d 100644 --- a/pcr/plymouth/PKGBUILD +++ b/pcr/plymouth/PKGBUILD @@ -1,28 +1,31 @@ +# +# Maintainer (AUR): Sebastian Lau +# Contributor (AUR) Damian01w +# Contributor (AUR): Padfoot +# # Maintainer: David P. -# Contributor: Sebastian Lau -# Contributor Damian01w -# Contributor: Padfoot + +# parabola changes and rationale: +# - removed arch logo FIXME: add parabola logo instead pkgname=plymouth -pkgver=0.9.2 -pkgrel=12 +pkgver=0.9.3 +pkgrel=3 pkgdesc="A graphical boot splash screen with kernel mode-setting support" url="http://www.freedesktop.org/wiki/Software/Plymouth/" - -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'armv7h') license=('GPL') depends=('libdrm' 'pango' 'systemd') -makedepends=('docbook-xsl' 'mesa') +makedepends=('docbook-xsl') optdepends=('ttf-dejavu') - -options=('!libtool' '!emptydirs') - provides=('plymouth') -conflicts=('plymouth-git') +conflicts=('plymouth-git' 'plymouth-legacy' 'plymouth-nosystemd') backup=('etc/plymouth/plymouthd.conf') -source=("http://www.freedesktop.org/software/${pkgname}/releases/${pkgname}-${pkgver}.tar.bz2" +options=('!libtool' '!emptydirs') + +source=("http://www.freedesktop.org/software/${pkgname}/releases/${pkgname}-${pkgver}.tar.xz" 'plymouth.encrypt_hook' 'plymouth.encrypt_install' 'gdm-plymouth.service' @@ -35,12 +38,13 @@ source=("http://www.freedesktop.org/software/${pkgname}/releases/${pkgname}-${pk 'plymouth-start.path' 'plymouth.initcpio_hook' 'plymouth.initcpio_install' + 'sd-plymouth.initcpio_install' 'plymouth-quit.service.in.patch' 'plymouth-set-default-theme.in.patch' 'plymouth-update-initrd.patch') -md5sums=('ff420994deb7ea203df678df92e7ab7d' - 'fbdd5d04e3089a214b9056357434df86' +md5sums=('b261c720888a5431cdfce8494805eab3' + 'd67132b297ccfb1a877a2efd78076963' '65eb269910f1b81e3f0970af456394ca' 'ae6e97bb1104bb12cbca6738e3fb872d' '1430ae2ec501d600f8f6771454dc9bbe' @@ -48,10 +52,11 @@ md5sums=('ff420994deb7ea203df678df92e7ab7d' 'a3cfc30df846b2d7057a29e7fbe8733a' 'f803c315739f46128b99232d64c268ca' '006847d16b852c7a50ee2f241fd9647e' - '78340207f7391c682601b1b36baed14d' + '606cd558141551a1ce0d80150a045d83' '672ad913e2383483bcb4599a0a6bee48' '32f04fdbd1eb94ade30d1e63fdcdd9b5' - 'a6dca3d57fd38b875d0520ec033dbf66' + 'c17e915b19a469198a37dd7376a846c7' + 'df764c8c3fec069a6f1eb03d3c4f8dc3' '165a39dbedcc6e123c8ca05d5b4b2e25' 'f79edbbb30c71b0dbcd102c7dd31660b' '0357775c16b5f90f1af485e6a4c80a9e') @@ -66,7 +71,8 @@ prepare() { build() { cd "$srcdir"/${pkgname}-${pkgver} - LDFLAGS="$LDFLAGS -ludev" ./configure --prefix=/usr \ + LDFLAGS="$LDFLAGS -ludev" ./configure \ + --prefix=/usr \ --exec-prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ @@ -98,6 +104,7 @@ package() { install -Dm644 "$srcdir/plymouth.encrypt_install" "$pkgdir/usr/lib/initcpio/install/plymouth-encrypt" install -Dm644 "$srcdir/plymouth.initcpio_hook" "$pkgdir/usr/lib/initcpio/hooks/plymouth" install -Dm644 "$srcdir/plymouth.initcpio_install" "$pkgdir/usr/lib/initcpio/install/plymouth" + install -Dm644 "$srcdir/sd-plymouth.initcpio_install" "$pkgdir/usr/lib/initcpio/install/sd-plymouth" for i in {gdm,sddm,lxdm,slim,lightdm}-plymouth.service; do install -Dm644 "$srcdir/$i" "$pkgdir/usr/lib/systemd/system/$i" diff --git a/pcr/plymouth/plymouth-start.service b/pcr/plymouth/plymouth-start.service index b0f442f05..fb58ad729 100644 --- a/pcr/plymouth/plymouth-start.service +++ b/pcr/plymouth/plymouth-start.service @@ -10,7 +10,9 @@ ConditionKernelCommandLine=!plymouth.enable=0 ExecStart=/usr/bin/plymouthd --mode=boot --pid-file=/run/plymouth/pid --attach-to-session ExecStartPost=-/usr/bin/plymouth show-splash Type=forking +RuntimeDirectory=plymouth KillMode=none SendSIGKILL=no + [Install] WantedBy=sysinit.target diff --git a/pcr/plymouth/plymouth.encrypt_hook b/pcr/plymouth/plymouth.encrypt_hook index 963cc06e7..a623debf5 100644 --- a/pcr/plymouth/plymouth.encrypt_hook +++ b/pcr/plymouth/plymouth.encrypt_hook @@ -76,7 +76,7 @@ EOF if [ ${dopassphrase} -gt 0 ]; then echo echo "A password is required to access the ${cryptname} volume:" - plymouth ask-for-password --prompt="Password for ${cryptname} volume" --dont-pause-progress --number-of-tries=5 --command="/sbin/cryptsetup luksOpen --key-file=- ${cryptdev} ${cryptname} ${cryptargs} ${CSQUIET}" + plymouth ask-for-password --prompt="Password for ${cryptname} volume" --dont-pause-progress --number-of-tries=5 --command="/sbin/cryptsetup luksOpen --key-file=- ${resolved} ${cryptname} ${cryptargs} ${CSQUIET}" sleep 2 fi if [ -e "/dev/mapper/${cryptname}" ]; then diff --git a/pcr/plymouth/plymouth.initcpio_install b/pcr/plymouth/plymouth.initcpio_install index 40838ac4f..f43797143 100644 --- a/pcr/plymouth/plymouth.initcpio_install +++ b/pcr/plymouth/plymouth.initcpio_install @@ -20,7 +20,7 @@ build() { add_file "${PLYMOUTH_LOGO_FILE}" add_file /etc/os-release add_file /etc/plymouth/plymouthd.conf - add_file ${DATADIR}/plymouth/plymouthd.defaults + add_file ${DATADIR}/plymouth/plymouthd.defaults if [ ! -f ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" > /dev/stderr @@ -33,10 +33,7 @@ build() { add_binary ${PLYMOUTH_PLUGIN_PATH}/renderers/frame-buffer.so if [ -d ${DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME} ]; then - for x in ${DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME}/* ; do - [ ! -f "$x" ] && break - add_file $x - done + add_full_dir ${DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME} fi add_file /usr/lib/udev/rules.d/70-uaccess.rules diff --git a/pcr/plymouth/sd-plymouth.initcpio_install b/pcr/plymouth/sd-plymouth.initcpio_install new file mode 100644 index 000000000..a45a5f220 --- /dev/null +++ b/pcr/plymouth/sd-plymouth.initcpio_install @@ -0,0 +1,63 @@ +#!/bin/bash +# /etc/initcpio/install/sd-plymouth — mkinitcpio/systemd hook for plymouth + +build() { + add_dir /dev/pts + add_dir /usr/share/plymouth/themes + add_dir /run/plymouth + + DATADIR="/usr/share" +# PLYMOUTH_LOGO_FILE="${DATADIR}/plymouth/arch-logo.png" + PLYMOUTH_THEME_NAME="$(/usr/bin/plymouth-set-default-theme)" + PLYMOUTH_MODULE_NAME="$(grep "ModuleName *= *" ${DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ModuleName *= *//')" + PLYMOUTH_PLUGIN_PATH="$(plymouth --get-splash-plugin-path)" + + add_binary /usr/bin/plymouthd + add_binary /usr/bin/plymouth + + add_file ${DATADIR}/plymouth/themes/text/text.plymouth + add_binary ${PLYMOUTH_PLUGIN_PATH}/text.so + add_file ${DATADIR}/plymouth/themes/details/details.plymouth + add_binary ${PLYMOUTH_PLUGIN_PATH}/details.so + + add_file "${PLYMOUTH_LOGO_FILE}" + add_file /etc/os-release + add_file /etc/plymouth/plymouthd.conf + add_file ${DATADIR}/plymouth/plymouthd.defaults + + if [ ! -f ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then + echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" > /dev/stderr + exit 1 + fi + + add_binary ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so + + add_binary ${PLYMOUTH_PLUGIN_PATH}/renderers/drm.so + add_binary ${PLYMOUTH_PLUGIN_PATH}/renderers/frame-buffer.so + + if [ -d ${DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME} ]; then + add_full_dir ${DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME} + fi + + add_udev_rule 70-uaccess.rules + add_udev_rule 71-seat.rules + + map add_systemd_unit \ + systemd-ask-password-plymouth.path \ + systemd-ask-password-plymouth.service \ + plymouth-halt.service \ + plymouth-kexec.service \ + plymouth-poweroff.service \ + plymouth-quit-wait.service \ + plymouth-quit.service \ + plymouth-read-write.service \ + plymouth-reboot.service \ + plymouth-start.service \ + plymouth-switch-root.service +} + +help() { + cat <