From: Martin Langhoff <[email protected]> --- modules/bootanim/README | 27 +++++++++ modules/bootanim/kspost.30.nochroot.bootanim.sh | 14 +++++ modules/bootanim/prepare.90.bootanim.sh | 70 +++++++++++++++++++++++ 3 files changed, 111 insertions(+), 0 deletions(-) create mode 100644 modules/bootanim/README create mode 100644 modules/bootanim/kspost.30.nochroot.bootanim.sh create mode 100644 modules/bootanim/prepare.90.bootanim.sh
diff --git a/modules/bootanim/README b/modules/bootanim/README new file mode 100644 index 0000000..ac86abd --- /dev/null +++ b/modules/bootanim/README @@ -0,0 +1,27 @@ +This module replaces the boot animation images. + +To use... + + - Install netpbm-progs + + - Install olpc-bootanim-tools from + http://dev.laptop.org/~dsd/public_rpms/f14/olpc-bootanim-tools-2.13-1.fc14.i686.rpm + + - Download the tarball or zip from http://dev.laptop.org/git/users/dsd/olpc-bootanim/ + -- extract the images from the "images" subdirectory + + - Prepare an images directory with your customized images -- the relevant files are + the frame*.png files and ul_warning.png . You must include them all in your custom + images directory. + + - Add a section to your ini file: + + [bootanim] + imgdir=/path/to/your/images-directory + + for example, if it is a 'bootanim' directory next to your + ini file, use + + [bootanim] + imgdir=%(oob_config_dir)s/bootanim + diff --git a/modules/bootanim/kspost.30.nochroot.bootanim.sh b/modules/bootanim/kspost.30.nochroot.bootanim.sh new file mode 100644 index 0000000..aab272b --- /dev/null +++ b/modules/bootanim/kspost.30.nochroot.bootanim.sh @@ -0,0 +1,14 @@ +# Copyright (C) 2009 One Laptop Per Child +# Licensed under the terms of the GNU GPL v2 or later; see COPYING for details. + +. $OOB__shlib + +cache=$cachedir/bootanim + +STATIC_IMAGES="frame00.565 ul_warning.565" +FILES="$STATIC_IMAGES deltas" + +for f in $FILES; do + echo "cp $cache/$f \$INSTALL_ROOT/usr/share/boot-anim/" +done +echo 'chmod 644 $INSTALL_ROOT/usr/share/boot-anim/*' diff --git a/modules/bootanim/prepare.90.bootanim.sh b/modules/bootanim/prepare.90.bootanim.sh new file mode 100644 index 0000000..6abb0e5 --- /dev/null +++ b/modules/bootanim/prepare.90.bootanim.sh @@ -0,0 +1,70 @@ +# Copyright (C) 2009 One Laptop Per Child +# Licensed under the terms of the GNU GPL v2 or later; see COPYING for details. + +. $OOB__shlib + +imgdir=$(read_config bootanim imgdir) +cache=$cachedir/bootanim +cacheframes=$cachedir/bootanim-frames + +STATIC_IMAGES="frame00.png ul_warning.png" +FRAME_IMAGES="frame00.png frame01.png frame02.png frame03.png + frame04.png frame05.png frame06.png frame07.png frame08.png frame09.png + frame10.png frame11.png frame12.png frame13.png frame14.png frame15.png + frame16.png frame17.png frame18.png frame19.png frame20.png frame21.png + frame22.png frame23.png frame24.png frame25.png ul_warning.png" + +if [ -n "$imgdir" -a -e "$imgdir" ]; then + if [ ! -x '/usr/bin/ppmto565.py' -o ! -x '/usr/bin/calcdelta' ]; then + echo Please install olpc-bootanim-tools >&2 + exit 1 + fi + if [ ! -x '/usr/bin/pngtopnm' ]; then + echo Please install netpbm-progs >&2 + exit 1 + fi + mkdir -p "$cache" + mkdir -p "$cacheframes" + for img in $STATIC_IMAGES; do + src=$imgdir/$img + target=$cache/${img%.*}.565 + + # like make + if [ ! -e "$target" -o "$src" -nt "$target" ];then + echo "Processing $src" + pngtopnm "$src" | ppmto565.py -o "$target.tmp" + mv "$target.tmp" "$target" + fi + done + + rebuilddelta=0 + for img in $FRAME_IMAGES; do + src=$imgdir/$img + target=$cacheframes/${img%.*}.565 + + # like make + if [ ! -e "$target" -o "$src" -nt "$target" ];then + echo "Processing $src" + pngtopnm "$src" | ppmto565.py -o "$target.tmp" + mv "$target.tmp" "$target" + rebuilddelta=1 + fi + done + if [ "$rebuilddelta" == 1 -o ! -e "$cache/deltas" ];then + echo "Creating delta sequence" + # unfortunately, + tmpdir="/tmp/oob_bootanim.$$" + mkdir -p "$tmpdir" + pushd "$tmpdir" + for img in $FRAME_IMAGES; do + echo $cacheframes/${img%.*}.565 >> frames + done + # calcdelta reads a 'frames' file listing + # the files to process + echo calcdelta frames + calcdelta frames + mv deltas $cache/ + popd + rm -fr "$tmpdir" + fi +fi \ No newline at end of file -- 1.6.2.5 _______________________________________________ Devel mailing list [email protected] http://lists.laptop.org/listinfo/devel
