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 zcmeAS@N?(olHy`uVBq!ia0y~yU`S$MU@+%kV_;zT{%pP%0|Ns~v6E*A2L}g74M$1` z0|U=gPZ!6KiaBp*R~Ez^oqOE=?%#VoCd$1_ChA6S+L)S{IOl6)zrdUdPlnR@_b59<*CV&Fsc837%t-eJx3cnMAu*O=wZ6-q4tENKLWtx~NQqlZ>?Tljvz~ z*J|aB-|u~Q&wgH7N-;~$%4vmV`$AU*O}%&V@9!_`>-YcrJFjKywV(^^n%oNZF9JnG zRxv2~hcHZ3*J?N+Eb8#2lS|=~3#&loBBlwW5C#c7#Zw%Y>y87OG ziBAz?Y7YdDMJ#EtU0;6j_Hw6Y2C+tkEq$hPo6iYdIlIy+yEiE7&EEHUJ9S!wue;~x ztM9+NxFGgIRD!oc37v=(GrIS+Z95=q~GfOIBBN-C}W3;&XPE z^A_hXzI}@|LwCZbGi97J95$Sj%JF;4^Y2~0&=+2rMeFSoGCVHZ3tYG?{h)GMc-&>1 z9|g+$?l*50QslWdZ_gv=$ThP6PdY{H-q`q;-TUS1^Ar5IgH|SHEh{hj{PnYj_G*_? zA8r}PF1Kxdvu|zhlS%$Msc*lkS_n-M+M#FB=fpMt(8V^RbZe?4`>L?)4uU`3UW?kKf_xlf)vdr}PFfBsBO?<60$I5GI*Vg1e zIC0Tvkzl8QfytD_Ymskr_7*c1XFcybD&xrU;mrM6YBNk*kC~{Q>FW8oGx>G@jeW^x z>$HnCmj|)sc4>B+Zv3|FWlhb~qMG~1OJ$v$`;NC=C##JXtXSrphm*KO{$KU-O z#MC&L{OtTaG$mzaAGK}uzjR?olZT1|$05gE>rzvWJe>1OFmHdUSm{<{PNv@1T3fbh zsAlHoCcZspZh2{ng3v?`MM>GOGtAy<@aI_eZ+?Bw_G#hVt}TpT>*e#**jaky*KLaS zc7M)bzP@_y;^Rt*r&b=$UKBWe-n_i9buS*TyZwL0CKu6t@(*_Lt-L0-Z`Z=csDc2Vl`IhI_ZqQGHt?bwG}0i&9{vUS1BBa{Ty_uD9aH<7k8zLUh_ zK0D~nhBSTK+E5MCd77;+pL2x&U->A1eXK`i@sY&Gik{i|d**5D?{3Pk`F#CNZF0x9Z;pQ!v~AiX z#AM$rz~s(pH1Fx{{<(*5mR?Qf&OcdRcf)+;_H>+f**DXx?hKPd?S_solGndcAIO-NT=4=H2~f zBX;^r=H-{K-aRXxzqf04{tx$EyLSD2dTy@G&%5s@pX*7|k+G=gcs}nx=kcgnD}B^D zk3ZhA?zH*-e+*Mka?J|Xl&g9Y*e7G@r6RO&tLf2ivih6XKdhN|GwfW?tjr^i17n_Z z%>S37EFN#szwjZ$(gVFND^{;&V+r!RAzd`fL?Cgc;_Rk2_U)ToSVKeka^EgAx9B?} z(fWS-hHuBRv`#VS?J6}tyY}gkuGl7p1D};tCM(~mI~^mYAJw+Ct?!&)-4A(x;r^o; zuU{-!w{6;IG2Nu!eRGd=b!XhEZ#cJ3@6ktzYf*VWU-|wyzk2<}k~OTy1ABP-KYZj4 zzjSHVqXP?_x0G(#{JXrGgK7T6i9Dr4*PhfxK~AcS;N&Om-nW)=-U7DJh11N z#%jHP8SB&%)*hX=!PSqg$CJ^}PQqItL+1Fxty^bS%jZ1vxE#~f?N%t$y0z;-{g*IIpDewk&c*BXna=RZAGu9#()yvy6LxW$+OFRh)?|EY+_w(B0 zAN$%LThvtC3|iCrGBkL{v-SH9T>5O+@_he+!~LcUeRVH-2)cbYp0w`yx%GeB&aD#( zuYYIcpt#iO)Ja`4Kdz2930wFSx0K5~o%cH~>HNOdBguy&UMHcPy+M4rZ+&ximW%I>TdNi~=in@XCbP9`{F1R(L(pSZqvg{j3vwVZRt*4DJFAV@xrVWBhNisTJBbV`|xI4?w_pd zr;l`Xy?piZSZU0wXJ;0!d@0e)%q-%%n1_e&)6&=LmM*es6ku8^()W0R$CLn}{>PPz zW%6G?E3dA;xwpLG=H}<0JGn*Iy7okIBLC zfB#M|30iCObMNvGHu8!r#%WhR+*RM_Y9n`ks{fj;8H)?2IG306^V{uduI25@Fgfs9 zrmL&w7rRJvbD)=Z_li|rf#%gSUfb<&nDuH^%q}}mIm3-#O82-VGMv0nU@iUb2dn;G zqq&=0SREfQ@~yjlRM$ML=%p(6#aphL&T7nk#%Ct`n|?S_F5+bwF`F?)!9jDng2(5j z`rC}RubcI7VqnbigGq+Rp7>qsd;Cbl_1O0rk-=vzzkW3_Gb>uMa%P21+xy>V=2%YN z{QOGa)Cb2?*SK;WJn%qc_xB|m+}aLCNHi&|nW-rl5F(>Kv&5p>PpIRGO`_2DrI*4=c;&?0qjNkA z%sP!Fls(g}ZtVFg8uuqvv(qK=oUqcwJhS!lPj+#iJNTV-UG*oHEqn~^^X{3M-T9~; zm%n1!3XQJ!*-OrtP3Y3pvpaED`gP=%4>3I_66;$?sZ_6Y5_{BXFr~<2X;j4Cb&b;=Pjyj#@H?^G)3flhwAbndeye#bDm^KoLO;qZZNLzJdo6p3M6lpIq|ALd!R8L2}jR8lXYjGd!&5&{!QU~-?kW@=isjY@c8-t2mjiQ zQjFet=7zf;d~iZzdhC&H|r{F)5D&HGu);g_DxwOQ2FIhlEP-Q9*MdJoG)r&&zX zv75fs`IgQS1OA88JH$I`yujDdlH!PC{xWt~$(69Bk6P`UsB 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 +