From 2e683c607e5721c55b5edd61247276d8a07498cd Mon Sep 17 00:00:00 2001 From: Juan RP Date: Thu, 13 Oct 2011 12:58:31 +0200 Subject: [PATCH] New package: plymouth-0.8.3, not yet finished. --- srcpkgs/libplymouth | 1 + srcpkgs/plymouth-devel | 1 + srcpkgs/plymouth-drm | 1 + srcpkgs/plymouth-x11 | 1 + srcpkgs/plymouth/depends | 2 + srcpkgs/plymouth/files/plymouth-update-initrd | 4 + srcpkgs/plymouth/files/plymouth.hook | 112 +++++++++++++++ srcpkgs/plymouth/files/plymouth.init-bottom | 17 +++ srcpkgs/plymouth/files/plymouth.init-premount | 40 ++++++ srcpkgs/plymouth/files/xbps-logo.png | Bin 0 -> 3294 bytes srcpkgs/plymouth/libplymouth.template | 16 +++ ...efault-framebuffer-device-to-dev-fb0.patch | 17 +++ srcpkgs/plymouth/patches/03-awk.patch | 23 ++++ srcpkgs/plymouth/patches/04-stderr.patch | 128 ++++++++++++++++++ .../plymouth/patches/05-default-theme.patch | 21 +++ srcpkgs/plymouth/patches/06-tty.patch | 18 +++ srcpkgs/plymouth/patches/07-return-code.patch | 15 ++ srcpkgs/plymouth/plymouth-devel.template | 16 +++ srcpkgs/plymouth/plymouth-drm.template | 16 +++ srcpkgs/plymouth/plymouth-x11.template | 25 ++++ srcpkgs/plymouth/template | 54 ++++++++ xbps-src/common/mapping_shlib_binpkg.txt | 4 + 22 files changed, 532 insertions(+) create mode 120000 srcpkgs/libplymouth create mode 120000 srcpkgs/plymouth-devel create mode 120000 srcpkgs/plymouth-drm create mode 120000 srcpkgs/plymouth-x11 create mode 100644 srcpkgs/plymouth/depends create mode 100644 srcpkgs/plymouth/files/plymouth-update-initrd create mode 100644 srcpkgs/plymouth/files/plymouth.hook create mode 100644 srcpkgs/plymouth/files/plymouth.init-bottom create mode 100644 srcpkgs/plymouth/files/plymouth.init-premount create mode 100644 srcpkgs/plymouth/files/xbps-logo.png create mode 100644 srcpkgs/plymouth/libplymouth.template create mode 100644 srcpkgs/plymouth/patches/02-set-default-framebuffer-device-to-dev-fb0.patch create mode 100644 srcpkgs/plymouth/patches/03-awk.patch create mode 100644 srcpkgs/plymouth/patches/04-stderr.patch create mode 100644 srcpkgs/plymouth/patches/05-default-theme.patch create mode 100644 srcpkgs/plymouth/patches/06-tty.patch create mode 100644 srcpkgs/plymouth/patches/07-return-code.patch create mode 100644 srcpkgs/plymouth/plymouth-devel.template create mode 100644 srcpkgs/plymouth/plymouth-drm.template create mode 100644 srcpkgs/plymouth/plymouth-x11.template create mode 100644 srcpkgs/plymouth/template diff --git a/srcpkgs/libplymouth b/srcpkgs/libplymouth new file mode 120000 index 00000000000..45e7d97d7c4 --- /dev/null +++ b/srcpkgs/libplymouth @@ -0,0 +1 @@ +plymouth \ No newline at end of file diff --git a/srcpkgs/plymouth-devel b/srcpkgs/plymouth-devel new file mode 120000 index 00000000000..45e7d97d7c4 --- /dev/null +++ b/srcpkgs/plymouth-devel @@ -0,0 +1 @@ +plymouth \ No newline at end of file diff --git a/srcpkgs/plymouth-drm b/srcpkgs/plymouth-drm new file mode 120000 index 00000000000..45e7d97d7c4 --- /dev/null +++ b/srcpkgs/plymouth-drm @@ -0,0 +1 @@ +plymouth \ No newline at end of file diff --git a/srcpkgs/plymouth-x11 b/srcpkgs/plymouth-x11 new file mode 120000 index 00000000000..45e7d97d7c4 --- /dev/null +++ b/srcpkgs/plymouth-x11 @@ -0,0 +1 @@ +plymouth \ No newline at end of file diff --git a/srcpkgs/plymouth/depends b/srcpkgs/plymouth/depends new file mode 100644 index 00000000000..9579ac7ff26 --- /dev/null +++ b/srcpkgs/plymouth/depends @@ -0,0 +1,2 @@ +abi_depends=">=0.8.3" +api_depends="${abi_depends}" diff --git a/srcpkgs/plymouth/files/plymouth-update-initrd b/srcpkgs/plymouth/files/plymouth-update-initrd new file mode 100644 index 00000000000..7e7d1c42cf3 --- /dev/null +++ b/srcpkgs/plymouth/files/plymouth-update-initrd @@ -0,0 +1,4 @@ +#!/bin/sh + +set -e +update-initramfs -tu diff --git a/srcpkgs/plymouth/files/plymouth.hook b/srcpkgs/plymouth/files/plymouth.hook new file mode 100644 index 00000000000..2e6d5b9ce29 --- /dev/null +++ b/srcpkgs/plymouth/files/plymouth.hook @@ -0,0 +1,112 @@ +#!/bin/sh + +set -e + +PREREQ="" + +prereqs() +{ + echo "${PREREQ}" +} + +case "${1}" in + prereqs) + prereqs + exit 0 + ;; +esac + +. /usr/share/initramfs-tools/hook-functions + +THEME="$(/usr/sbin/plymouth-set-default-theme || true)" +THEMES="/usr/share/plymouth/themes" + +if [ -n "${THEME}" ] +then + THEME="${THEMES}/${THEME}/${THEME}.plymouth" +else + exit 0 +fi + +PLUGIN_PATH="$(plymouth --get-splash-plugin-path)" + +case "$(basename ${THEME} .plymouth)" in + text) + PLUGINS="details.so text.so" + ;; + + *) + PLUGINS="details.so text.so label.so" + ;; +esac + +MODULE="${PLUGIN_PATH}/$(sed -n 's/^ModuleName=\(.*\)/\1/p' ${THEME}).so" + +# copy plugin and images for current theme +copy_exec "${MODULE}" +mkdir -p "${DESTDIR}/${THEMES}" +IMAGES="$(sed -n 's/^ImageDir=\(.*\)/\1/p' ${THEME})" +# No images in text mode: +if [ -n "${IMAGES}" ] +then + cp -r "${IMAGES}" "${DESTDIR}/${THEMES}" +fi + +# copy binaries and base plugins +copy_exec /bin/plymouth +copy_exec /sbin/plymouthd + +for PLUGIN in ${PLUGINS} +do + copy_exec ${PLUGIN_PATH}/${PLUGIN} +done + +# copy base themes and logo +cp -a "${THEMES}/details" "${DESTDIR}/${THEMES}" +cp -a "${THEMES}/text" "${DESTDIR}/${THEMES}" +cp /etc/os-release "${DESTDIR}/etc" + +case "$(basename ${THEME} .plymouth)" in + text) + + ;; + + *) + # copy files for font rendering + mkdir -p "${DESTDIR}/usr/share/fonts/truetype/ttf-dejavu" + mkdir -p "${DESTDIR}/etc/fonts/conf.d" + mkdir -p "${DESTDIR}/var/cache/fontconfig" + cp -a /usr/share/fonts/TTF/DejaVuSerif.ttf "${DESTDIR}/usr/share/fonts/truetype/ttf-dejavu" + cp -a /usr/share/fonts/TTF/DejaVuSans.ttf "${DESTDIR}/usr/share/fonts/truetype/ttf-dejavu" + cp -a /etc/fonts/fonts.conf "${DESTDIR}/etc/fonts" + cp -rL /etc/fonts/conf.d/60-latin.conf "${DESTDIR}/etc/fonts/conf.d" + if [ -d /usr/lib/pango/1.6.0 ]; then + # pre-multiarch fallback + PANGO_DIR=/usr/lib/pango/1.6.0 + fi + mkdir -p "${DESTDIR}${PANGO_DIR}/modules" + mkdir -p "${DESTDIR}/etc/pango" + cp /etc/pango/pango.modules ${DESTDIR}/etc/pango + copy_exec ${PANGO_DIR}/modules/pango-basic-fc.so + + # copy renderers + copy_exec /usr/lib/plymouth/renderers/frame-buffer.so + copy_exec /usr/lib/plymouth/renderers/drm.so + + # add drm/fb modules + manual_add_modules intel-agp + manual_add_modules ati-agp + manual_add_modules i915 + manual_add_modules radeon + ;; +esac + +# copy config files +mkdir -p "${DESTDIR}/etc/plymouth" + +if [ -r /etc/plymouth/plymouthd.conf ] +then + cp -a /etc/plymouth/plymouthd.conf "${DESTDIR}/etc/plymouth/" +fi + +cp -a /usr/share/plymouth/plymouthd.defaults "${DESTDIR}/usr/share/plymouth/" diff --git a/srcpkgs/plymouth/files/plymouth.init-bottom b/srcpkgs/plymouth/files/plymouth.init-bottom new file mode 100644 index 00000000000..e7d92490246 --- /dev/null +++ b/srcpkgs/plymouth/files/plymouth.init-bottom @@ -0,0 +1,17 @@ +#!/bin/sh + +PREREQ="udev" + +prereqs() +{ + echo "${PREREQ}" +} + +case ${1} in + prereqs) + prereqs + exit 0 + ;; +esac + +/bin/plymouth --newroot=${rootmnt} diff --git a/srcpkgs/plymouth/files/plymouth.init-premount b/srcpkgs/plymouth/files/plymouth.init-premount new file mode 100644 index 00000000000..0675c61e2bd --- /dev/null +++ b/srcpkgs/plymouth/files/plymouth.init-premount @@ -0,0 +1,40 @@ +#!/bin/sh + +PREREQ="udev" + +prereqs() +{ + echo "${PREREQ}" +} + +case ${1} in + prereqs) + prereqs + exit 0 + ;; +esac + +SPLASH="false" + +for ARGUMENT in $(cat /proc/cmdline) +do + case "${ARGUMENT}" in + splash*) + SPLASH="true" + ;; + + nosplash*) + SPLASH="false" + ;; + esac +done + +if [ "${SPLASH}" = "true" ]; then + modprobe i8042 + modprobe atkbd + + mkdir -p /var/lib/plymouth + mkdir -p /run/plymouth + /sbin/plymouthd --mode=boot --attach-to-session --pid-file=/run/plymouth/pid + /bin/plymouth --show-splash +fi diff --git a/srcpkgs/plymouth/files/xbps-logo.png b/srcpkgs/plymouth/files/xbps-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..076b7b9137a6523fd76428089aeb02e9047e2323 GIT binary patch literal 3294 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 W#yfzx8tCoALI%@@YvDBPBL4%pI#9X* literal 0 HcmV?d00001 diff --git a/srcpkgs/plymouth/libplymouth.template b/srcpkgs/plymouth/libplymouth.template new file mode 100644 index 00000000000..6894fa389b6 --- /dev/null +++ b/srcpkgs/plymouth/libplymouth.template @@ -0,0 +1,16 @@ +# Template file for 'libplymouth'. +# +short_desc="${short_desc} - shared libraries" +long_desc=" + ${long_desc} + + This package includes the shared libraries provided by plymouth." + +Add_dependency run glibc +Add_dependency run libpng + +do_install() +{ + vmove "lib/*.so*" lib + vmove "usr/lib/*.so*" usr/lib +} diff --git a/srcpkgs/plymouth/patches/02-set-default-framebuffer-device-to-dev-fb0.patch b/srcpkgs/plymouth/patches/02-set-default-framebuffer-device-to-dev-fb0.patch new file mode 100644 index 00000000000..2d315ab21a2 --- /dev/null +++ b/srcpkgs/plymouth/patches/02-set-default-framebuffer-device-to-dev-fb0.patch @@ -0,0 +1,17 @@ +Author: Guido Guenther +Description: + Set default framebuffer device to /dev/fb0 instead of /dev/fb which doesn't + exist by default (Closes: #573724). + +diff -Naurp plymouth.orig//src/plugins/renderers/frame-buffer/plugin.c plymouth/src/plugins/renderers/frame-buffer/plugin.c +--- plymouth.orig//src/plugins/renderers/frame-buffer/plugin.c 2010-11-20 16:22:53.066407620 +0100 ++++ plymouth/src/plugins/renderers/frame-buffer/plugin.c 2010-11-20 16:23:21.861484753 +0100 +@@ -56,7 +56,7 @@ + #include "ply-renderer-plugin.h" + + #ifndef PLY_FRAME_BUFFER_DEFAULT_FB_DEVICE_NAME +-#define PLY_FRAME_BUFFER_DEFAULT_FB_DEVICE_NAME "/dev/fb" ++#define PLY_FRAME_BUFFER_DEFAULT_FB_DEVICE_NAME "/dev/fb0" + #endif + + struct _ply_renderer_head diff --git a/srcpkgs/plymouth/patches/03-awk.patch b/srcpkgs/plymouth/patches/03-awk.patch new file mode 100644 index 00000000000..4724ad9797f --- /dev/null +++ b/srcpkgs/plymouth/patches/03-awk.patch @@ -0,0 +1,23 @@ +Author: Daniel Baumann +Description: Hack to fix awk call. + +diff -Naurp plymouth.orig/scripts/plymouth-set-default-theme.in plymouth/scripts/plymouth-set-default-theme.in +--- plymouth.orig/scripts/plymouth-set-default-theme.in 2010-03-27 16:29:57.000000000 +0100 ++++ plymouth/scripts/plymouth-set-default-theme.in 2010-03-28 22:58:10.000000000 +0200 +@@ -45,15 +45,7 @@ function list_themes () + function read_theme_name_from_file () + { + echo $(grep -v '^#' $1 2> /dev/null | +- awk ' +- BEGIN { +- RS="[[][[:blank:]]*[^[:space:]]+[:blank:]*[]\n]"; +- FS="[=[:space:]]+"; +- OFS=""; +- ORS="" +- } +- $1 ~/Theme/ { print $2 } +- ') ++ awk -F= '/Theme=/ { print $2 }') + } + + function get_default_theme () diff --git a/srcpkgs/plymouth/patches/04-stderr.patch b/srcpkgs/plymouth/patches/04-stderr.patch new file mode 100644 index 00000000000..0dafcc17960 --- /dev/null +++ b/srcpkgs/plymouth/patches/04-stderr.patch @@ -0,0 +1,128 @@ +Author: Daniel Baumann +Description: + Use fd for stdout instead of device, since the latter may not always exist, + e.g. in chroots (Closes: #581649). + +diff -Naurp plymouth.orig/scripts/plymouth-populate-initrd.in plymouth/scripts/plymouth-populate-initrd.in +--- plymouth.orig/scripts/plymouth-populate-initrd.in 2010-05-14 19:22:15.000000000 +0200 ++++ plymouth/scripts/plymouth-populate-initrd.in 2010-05-14 19:23:25.000000000 +0200 +@@ -38,7 +38,7 @@ function usage() { + local output="/dev/stdout" + local rc=0 + if [ "$1" == "error" ]; then +- output="/dev/stderr" ++ output=">&2" + rc=1 + fi + +@@ -84,14 +84,14 @@ inst ${PLYMOUTH_POLICYDIR}/plymouthd.def + inst ${PLYMOUTH_CONFDIR}/plymouthd.conf $INITRDDIR + + if [ -z "$PLYMOUTH_THEME_NAME" ]; then +- echo "No default plymouth plugin is set" > /dev/stderr ++ echo "No default plymouth plugin is set" >&2 + exit 1 + fi + + PLYMOUTH_MODULE_NAME=$(grep "ModuleName *= *" ${PLYMOUTH_DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ModuleName *= *//') + + if [ ! -f ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then +- echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" > /dev/stderr ++ echo "The default plymouth plugin (${PLYMOUTH_MODULE_NAME}) doesn't exist" >&2 + exit 1 + fi + +diff -Naurp plymouth.orig/scripts/plymouth-set-default-theme.in plymouth/scripts/plymouth-set-default-theme.in +--- plymouth.orig/scripts/plymouth-set-default-theme.in 2010-05-14 19:22:15.000000000 +0200 ++++ plymouth/scripts/plymouth-set-default-theme.in 2010-05-14 19:23:04.000000000 +0200 +@@ -79,14 +79,14 @@ while [ $# -gt 0 ]; do + + -l|--list) + if [ -n "$THEME_NAME" ]; then +- echo "You can only specify --list or a theme name, not both" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify --list or a theme name, not both" >&2 ++ echo $(usage) >&2 + exit 1 + fi + + if [ $DO_RESET -ne 0 ]; then +- echo "You can only specify --reset or --list, not both" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify --reset or --list, not both" >&2 ++ echo $(usage) >&2 + exit 1 + fi + +@@ -99,14 +99,14 @@ while [ $# -gt 0 ]; do + + -r|--reset|default) + if [ -n "$THEME_NAME" ]; then +- echo "You can only specify --reset or a theme name, not both" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify --reset or a theme name, not both" >&2 ++ echo $(usage) >&2 + exit 1 + fi + + if [ $DO_LIST -ne 0 ]; then +- echo "You can only specify --reset or --list, not both" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify --reset or --list, not both" >&2 ++ echo $(usage) >&2 + exit 1 + fi + +@@ -119,20 +119,20 @@ while [ $# -gt 0 ]; do + + *) + if [ -n "$THEME_NAME" ]; then +- echo "You can only specify one theme at a time" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify one theme at a time" >&2 ++ echo $(usage) >&2 + exit 1 + fi + + if [ $DO_RESET -ne 0 ]; then +- echo "You can only specify --reset or a theme name, not both" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify --reset or a theme name, not both" >&2 ++ echo $(usage) >&2 + exit 1 + fi + + if [ $DO_LIST -ne 0 ]; then +- echo "You can only specify --list or a theme name, not both" > /dev/stderr +- echo $(usage) > /dev/stderr ++ echo "You can only specify --list or a theme name, not both" >&2 ++ echo $(usage) >&2 + exit 1 + fi + +@@ -158,7 +158,7 @@ if [ $DO_RESET -eq 0 ] && [ $DO_INITRD_R + fi + + if [ `id -u` -ne 0 ]; then +- echo "This program must be run as root" > /dev/stderr ++ echo "This program must be run as root" >&2 + exit 1 + fi + +@@ -169,14 +169,14 @@ if [ $DO_RESET -ne 0 ]; then + fi + + if [ ! -e ${PLYMOUTH_DATADIR}/plymouth/themes/${THEME_NAME}/${THEME_NAME}.plymouth ]; then +- echo "${PLYMOUTH_DATADIR}/plymouth/themes/${THEME_NAME}/${THEME_NAME}.plymouth does not exist" > /dev/stderr ++ echo "${PLYMOUTH_DATADIR}/plymouth/themes/${THEME_NAME}/${THEME_NAME}.plymouth does not exist" >&2 + exit 1 + fi + + MODULE_NAME=$(grep "ModuleName *= *" ${PLYMOUTH_DATADIR}/plymouth/themes/${THEME_NAME}/${THEME_NAME}.plymouth | sed 's/ModuleName *= *//') + + if [ ! -e ${PLYMOUTH_PLUGIN_PATH}${MODULE_NAME}.so ]; then +- echo "${PLYMOUTH_PLUGIN_PATH}${MODULE_NAME}.so does not exist" > /dev/stderr ++ echo "${PLYMOUTH_PLUGIN_PATH}${MODULE_NAME}.so does not exist" >&2 + exit 1 + fi + diff --git a/srcpkgs/plymouth/patches/05-default-theme.patch b/srcpkgs/plymouth/patches/05-default-theme.patch new file mode 100644 index 00000000000..585518f5e32 --- /dev/null +++ b/srcpkgs/plymouth/patches/05-default-theme.patch @@ -0,0 +1,21 @@ +Author: Daniel Baumann +Description: Ship configuration file with default theme set (Closes: #594999). + +diff -Naurp plymouth.orig/src/plymouthd.conf plymouth/src/plymouthd.conf +--- plymouth.orig/src/plymouthd.conf 2010-06-04 18:55:14.000000000 +0200 ++++ plymouth/src/plymouthd.conf 2010-09-10 21:35:55.945741477 +0200 +@@ -1,3 +1,3 @@ + # Administrator customizations go in this file +-#[Daemon] +-#Theme=fade-in ++[Daemon] ++Theme=text +diff -Naurp plymouth.orig/src/plymouthd.defaults plymouth/src/plymouthd.defaults +--- plymouth.orig/src/plymouthd.defaults 2010-06-04 18:55:14.000000000 +0200 ++++ plymouth/src/plymouthd.defaults 2010-09-10 21:35:05.466754551 +0200 +@@ -1,4 +1,4 @@ + # Distribution defaults. Changes to this file will get overwritten during + # upgrades. + [Daemon] +-Theme=fade-in ++Theme=text diff --git a/srcpkgs/plymouth/patches/06-tty.patch b/srcpkgs/plymouth/patches/06-tty.patch new file mode 100644 index 00000000000..283a2bb43ab --- /dev/null +++ b/srcpkgs/plymouth/patches/06-tty.patch @@ -0,0 +1,18 @@ +Author: Julien Cristau +Description: + Cherry-pick "[terminal] don't stomp over original tty lock settings". Prevents + setting tty1 in 'echo' mode after boot (Closes: 595178). + +diff -Naurp plymouth.orig/src/libply-splash-core/ply-terminal.c plymouth/src/libply-splash-core/ply-terminal.c +--- plymouth.orig/src/libply-splash-core/ply-terminal.c 2010-09-14 21:16:57.185256706 +0200 ++++ plymouth/src/libply-splash-core/ply-terminal.c 2010-10-13 17:58:48.752970212 +0200 +@@ -188,7 +188,8 @@ ply_terminal_set_unbuffered_input (ply_t + if (tcsetattr (terminal->fd, TCSANOW, &term_attributes) != 0) + return false; + +- if (ioctl (terminal->fd, TIOCGLCKTRMIOS, &locked_term_attributes) == 0) ++ if (!terminal->original_locked_term_attributes_saved && ++ ioctl (terminal->fd, TIOCGLCKTRMIOS, &locked_term_attributes) == 0) + { + terminal->original_locked_term_attributes = locked_term_attributes; + terminal->original_locked_term_attributes_saved = true; diff --git a/srcpkgs/plymouth/patches/07-return-code.patch b/srcpkgs/plymouth/patches/07-return-code.patch new file mode 100644 index 00000000000..db2594b8ab6 --- /dev/null +++ b/srcpkgs/plymouth/patches/07-return-code.patch @@ -0,0 +1,15 @@ +Author: Michael Prokop +Description: Fixing wrong return code of plymouth-set-default-theme (Closes: #605018). + +diff -Naurp plymouth.orig/scripts/plymouth-set-default-theme.in plymouth/scripts/plymouth-set-default-theme.in +--- plymouth.orig/scripts/plymouth-set-default-theme.in 2011-09-08 15:03:24.212396867 +0200 ++++ plymouth/scripts/plymouth-set-default-theme.in 2011-09-08 15:04:41.011888522 +0200 +@@ -179,5 +179,7 @@ grep -q '^[[]Daemon[]]' ${PLYMOUTH_CONFD + sed -i -e '/^Theme[[:blank:]]*=.*/d' ${PLYMOUTH_CONFDIR}/plymouthd.conf + sed -i -e "s/^\([[]Daemon[]]\)\n*/\1\nTheme=${THEME_NAME}/" ${PLYMOUTH_CONFDIR}/plymouthd.conf + +-[ $DO_INITRD_REBUILD -ne 0 ] && (${PLYMOUTH_LIBEXECDIR}/plymouth/plymouth-update-initrd) ++if [ $DO_INITRD_REBUILD -ne 0 ] ; then ++ (${PLYMOUTH_LIBEXECDIR}/plymouth/plymouth-update-initrd) ++fi + diff --git a/srcpkgs/plymouth/plymouth-devel.template b/srcpkgs/plymouth/plymouth-devel.template new file mode 100644 index 00000000000..1e9923545e8 --- /dev/null +++ b/srcpkgs/plymouth/plymouth-devel.template @@ -0,0 +1,16 @@ +# Template file for 'plymouth-devel'. +# +short_desc="${short_desc} (development files)" +long_desc="${long_desc} + + This package contains files for development, headers, static libs, etc." + +Add_dependency run gtk+-devel +Add_dependency run libdrm-devel +Add_dependency run libplymouth + +do_install() +{ + vmove usr/include usr + vmove usr/lib/pkgconfig usr +} diff --git a/srcpkgs/plymouth/plymouth-drm.template b/srcpkgs/plymouth/plymouth-drm.template new file mode 100644 index 00000000000..33cb38f34fb --- /dev/null +++ b/srcpkgs/plymouth/plymouth-drm.template @@ -0,0 +1,16 @@ +# Template file for 'plymouth-drm'. +# +short_desc="${short_desc} - DRM renderer" +long_desc="${long_desc} + + This package contains the DRM renderer." + +Add_dependency run glibc +Add_dependency run libdrm +Add_dependency run libplymouth +Add_dependency run plymouth + +do_install() +{ + vmove usr/lib/plymouth/renderers/drm.so usr/lib/plymouth/renderers +} diff --git a/srcpkgs/plymouth/plymouth-x11.template b/srcpkgs/plymouth/plymouth-x11.template new file mode 100644 index 00000000000..b966e8d2bb1 --- /dev/null +++ b/srcpkgs/plymouth/plymouth-x11.template @@ -0,0 +1,25 @@ +# Template file for 'plymouth-x11'. +# +short_desc="${short_desc} - X11 renderer and log viewer" +long_desc="${long_desc} + + This package contains the x11 renderer and the log viewer." + +Add_dependency run glibc +Add_dependency run gtk+ +Add_dependency run pango +Add_dependency run glib +Add_dependency run atk +Add_dependency run gdk-pixbuf +Add_dependency run cairo +Add_dependency run freetype +Add_dependency run fontconfig +Add_dependency run libplymouth +Add_dependency run plymouth + +do_install() +{ + vmove usr/bin/plymouth-log-viewer usr/bin + vmove usr/lib/plymouth/renderers/x11.so usr/lib/plymouth/renderers + vmove usr/share/gdm usr/share +} diff --git a/srcpkgs/plymouth/template b/srcpkgs/plymouth/template new file mode 100644 index 00000000000..d3dd7a4ba46 --- /dev/null +++ b/srcpkgs/plymouth/template @@ -0,0 +1,54 @@ +# Template file for 'plymouth' +pkgname=plymouth +version=0.8.3 +patch_args="-Np1" +homepage="http://cgit.freedesktop.org/plymouth" +distfiles="${homepage}/snapshot/$pkgname-$version.tar.bz2" +build_style=gnu_configure +configure_args="--enable-gdm-transition +--with-release-file=/etc/os-release --disable-static +--localstatedir=/var --enable-pango --enable-tracing --disable-tests +--with-system-root-install --without-rhgb-compat-link +--with-logo=/usr/share/plymouth/xbps-log.png +--with-background-color=0xffffff" +short_desc="Graphical boot animation and logger" +maintainer="Juan RP " +license="GPL-2" +checksum=2e51abbc087228f7910302334755d0190fc9e923eae9992150adb0f6cccc9077 +long_desc=" + Plymouth is an application that runs very early in the boot process + (even before the root filesystem is mounted!) that provides a graphical + boot animation while the boot process happens in the background." + +subpackages="libplymouth ${pkgname}-x11 ${pkgname}-drm ${pkgname}-devel" +conf_files="/etc/plymouth/plymouthd.conf" + +Add_dependency run glibc +Add_dependency run glib +Add_dependency run pango +Add_dependency run cairo +Add_dependency run libpng +Add_dependency run libplymouth + +Add_dependency build automake +Add_dependency build pkg-config +Add_dependency build gtk+-devel +Add_dependency build libdrm-devel + +pre_configure() { + autoreconf -fi +} + +post_install() { + rm -f ${DESTDIR}/usr/libexec/plymouth/* + vinstall ${FILESDIR}/plymouth-update-initrd 755 usr/libexec/plymouth + + # initramfs-tools hook + vinstall ${FILESDIR}/plymouth.hook 755 \ + usr/share/initramfs-tools/hooks plymouth + vinstall ${FILESDIR}/plymouth.init-bottom 755 \ + usr/share/initramfs-tools/scripts/init-bottom plymouth + vinstall ${FILESDIR}/plymouth.init-premount 755 \ + usr/share/initramfs-tools/scripts/init-premount plymouth + vinstall ${FILESDIR}/xbps-logo.png 644 usr/share/plymouth +} diff --git a/xbps-src/common/mapping_shlib_binpkg.txt b/xbps-src/common/mapping_shlib_binpkg.txt index a7ea6128bf0..3f33e7d2e6a 100644 --- a/xbps-src/common/mapping_shlib_binpkg.txt +++ b/xbps-src/common/mapping_shlib_binpkg.txt @@ -866,3 +866,7 @@ libtracker-sparql-0.12.so.0 libtracker tracker-devel libmex-0.2.so.0 mex libsystemd-daemon.so.0 systemd libsystemd-login.so.0 systemd +libply.so.2 libplymouth plymouth-devel +libply-splash-graphics.so.2 libplymouth plymouth-devel +libply-splash-core.so.2 libplymouth plymouth-devel +