# Maintainer: Heiko Baums <heiko@baums-on-web.de>
# Contributor: Kurt J. Bosch <kjb-temp-2009 at alpenjodel.de>
pkgname=fbsplash
pkgver=1.5.4.4
pkgrel=16
pkgdesc="A userspace implementation of a splash screen for Linux (formerly known as gensplash)"
arch=('i686' 'x86_64')
url="http://fbsplash.alanhaggai.org"
license=('GPL')
depends=('miscsplashutils' 'freetype2' 'libjpeg' 'libpng' 'libmng' 'lcms' 'gpm')
optdepends=('linux-fbcondecor: enable console background images'
'fbsplash-extras: additional functionality like daemon icons'
'uswsusp-fbsplash: suspend to disk with fbsplash'
'python: convert themes from splashy to fbsplash')
conflicts=('fbsplash-scripts' 'initscripts-extras-fbsplash')
options=('!makeflags')
backup=('etc/conf.d/fbcondecor' 'etc/conf.d/splash')
install=fbsplash.install
freetype_pkgver=2.5.0.1
source=(http://downloads.sourceforge.net/project/fbsplash.berlios/splashutils-${pkgver}.tar.bz2
http://downloads.sourceforge.net/sourceforge/freetype/freetype-${freetype_pkgver}.tar.bz2
splash_start_initcpio.patch
splash.conf
fbsplash-basic.sh
fbsplash.initcpio_install
fbsplash.initcpio_hook
fbcondecor.daemon
fbcondecor.conf
freetype-2.2.1-enable-valid.patch
freetype-2.3.0-enable-spr.patch
freetype-2.4.11-enable-sph.patch
libfreetype_automake_lcms2.patch)
md5sums=('2a16704c4adde97b58812cd89e3f2342'
'c72e9010b1d986d556fc0b2b5fcbf31a'
'4045e315c52f5a576fca4f7e634eeb91'
'90708a96038d7d7921c2e9fde938c058'
'b5e6c08bbe7645a1c035565ea7d66437'
'2860cc29d5da2ea65c810de068bcc262'
'f65cf94d4d4959bb44cda5fa634ab405'
'631b10db2f7c4b70062e79b60541ddbb'
'b3db9d4fd902b62ac9e38589677e2d16'
'214119610444c9b02766ccee5e220680'
'816dc8619a6904a7385769433c0a8653'
'2422f8902224fedb46ae9eec08c8ceac'
'3af70f2b768f8c4451fd2a02844eda4b')
prepare() {
cd "${srcdir}/splashutils-${pkgver}"
# First, move unpacked (updated) version of freetype in order to build a
# stand-alone libfreetype.a to link splashutils
mv -f "${srcdir}/freetype-${freetype_pkgver}" \
"${srcdir}/splashutils-${pkgver}/libs/"
######
# Apply patches from this version of the freetype2 package
cd "${srcdir}/splashutils-${pkgver}/libs/freetype-${freetype_pkgver}"
######
patch -Np1 -i "${srcdir}/freetype-2.2.1-enable-valid.patch"
patch -Np1 -i "${srcdir}/freetype-2.3.0-enable-spr.patch"
# Disabled for now due to resistance
# Kept here for easier rebuilds via ABS
# https://bugs.archlinux.org/task/35274
#patch -Np1 -i "${srcdir}/freetype-2.4.11-enable-sph.patch"
######
cd "${srcdir}/splashutils-${pkgver}"
# Revise splashutils to allow building of libfreetype.a as a part of the
# fbsplash PKGBUILD
# Also, fix problems caused by newer versions of autoconf/make, lcms2, libmng
patch -Np0 -i "${srcdir}/libfreetype_automake_lcms2.patch"
autoreconf -f -i
# fix fbcondecor_ctl splash type
sed -e 's,fbsplash_lib_init(fbspl_bootup),fbsplash_lib_init(fbspl_undef),' -i src/fbcon_decor_ctl.c
# fix libdir
sed -i "s:/lib/splash/cache:/usr/lib/splash/cache:g" debian/splashutils.dirs
sed -i "s:/lib/splash/tmp:/usr/lib/splash/tmp:g" debian/splashutils.dirs
sed -i "s:/lib/splash/cache:/usr/lib/splash/cache:g" debian/splash.conf
sed -i "s:/lib/splash/cache:/usr/lib/splash/cache:g" debian/changelog
sed -i "s:/lib/splash/tmp:/usr/lib/splash/tmp:g" debian/changelog
sed -i "s:/lib/splash/cache:/usr/lib/splash/cache:g" docs/daemon
sed -i "s:@libdir@/splash/cache:/usr/lib/splash/cache:g" scripts/splash-functions.sh.in
sed -i "s:@libdir@/splash/tmp:/usr/lib/splash/tmp:g" scripts/splash-functions.sh.in
sed -i "s:@libdir@/splash/bin:/usr/lib/splash/bin:g" scripts/splash-functions.sh.in
sed -i "s:/lib/splash/cache:/usr/lib/splash/cache:g" src/daemon_cmd.c
sed -i "s:@libdir@/splash/sys:/usr/lib/splash/sys:g" scripts/splash_geninitramfs.in
sed -i "s:@libdir@/splash:/usr/lib/splash:g" scripts/splash_manager.in
sed -i "s:@libdir@/splash:/usr/lib/splash:g" src/fbsplash.h.in
# fix set_event_dev call for initcpio usage (if evdev module is there)
#patch -Np2 -i "${srcdir}/splash_start_initcpio.patch"
}
build() {
cd "${srcdir}/splashutils-${pkgver}"
# If PKGBUILD has problems, uncomment following line to turn off QUIET
#export QUIET="false"
export LIBS="-lbz2"
./configure --prefix=/usr --sbindir=/usr/bin --sysconfdir=/etc --without-klibc --enable-fbcondecor --with-gpm --with-mng --with-png --with-ttf --with-ttf-kernel
make
}
package() {
cd "${srcdir}/splashutils-${pkgver}"
make DESTDIR="${pkgdir}" sbindir="/usr/bin" eexecbindir="/usr/bin" eexecsbindir="/usr/bin" install
cd "${pkgdir}"
# fix duplicate slashes to get splash_cache_cleanup grep to work
sed -r -e 's,^(export spl_.*="/)/+,\1,' -i usr/bin/splash-functions.sh
# fix the path to splash_util
sed -r -e 's|sbin|usr/bin|g' -i usr/bin/splash{-functions.sh,_{geninitramfs,manager}} usr/share/doc/splashutils/{porting,early_bootup} usr/include/fbsplash.h
# provide the mountpoint needed by splash-functions.sh
install -m755 -d usr/lib/splash/{cache,tmp}
install -m700 -d usr/lib/splash/sys
# Install fbsplash scripts and config file
install -D -m644 "${srcdir}/splash.conf" "etc/conf.d/splash"
install -D -m644 "${srcdir}/fbsplash-basic.sh" "etc/rc.d/functions.d/fbsplash-basic.sh"
install -D -m644 "${srcdir}/fbsplash.initcpio_install" "usr/lib/initcpio/install/fbsplash"
install -D -m644 "${srcdir}/fbsplash.initcpio_hook" "usr/lib/initcpio/hooks/fbsplash"
# Install fbcodecor script and config file
install -D -m644 "${srcdir}/fbcondecor.conf" "etc/conf.d/fbcondecor"
install -D -m755 "${srcdir}/fbcondecor.daemon" "etc/rc.d/fbcondecor"
}