summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pcr/plymouth/PKGBUILD43
-rw-r--r--pcr/plymouth/plymouth-start.service2
-rw-r--r--pcr/plymouth/plymouth.encrypt_hook2
-rw-r--r--pcr/plymouth/plymouth.initcpio_install7
-rw-r--r--pcr/plymouth/sd-plymouth.initcpio_install63
5 files changed, 93 insertions, 24 deletions
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 <lauseb644@gmail.com>
+# Contributor (AUR) Damian01w <damian01w@gmail.com>
+# Contributor (AUR): Padfoot <padfoot@exemail.com.au>
+#
# Maintainer: David P. <megver83@parabola.nu>
-# Contributor: Sebastian Lau <lauseb644@gmail.com>
-# Contributor Damian01w <damian01w@gmail.com>
-# Contributor: Padfoot <padfoot@exemail.com.au>
+
+# 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 <<HELPEOF
+This hook includes plymouth in a systemd-based initramfs image.
+HELPEOF
+}