[arch-projects] [PATCH 01/13] install/consolefont: cleanup and refactor
Kurt J. Bosch
kjb-temp-2009 at alpenjodel.de
Sat Jul 23 08:43:25 EDT 2011
Dave Reisner, 2011-07-23 02:21:
> * Provide support for uncompressed font files as well as compressed
> * Avoiding using an unnecessary temp file
> * Support $BASEDIR
> * Warn when no font is found
> * Only add the runtime hook if a font is added
>
> Signed-off-by: Dave Reisner<dreisner at archlinux.org>
> ---
> install/consolefont | 52 ++++++++++++++++++++++++++------------------------
> 1 files changed, 27 insertions(+), 25 deletions(-)
>
> diff --git a/install/consolefont b/install/consolefont
> index 395387b..a0a5088 100644
> --- a/install/consolefont
> +++ b/install/consolefont
> @@ -1,32 +1,34 @@
> -# vim: set ft=sh:
> +#!/bin/bash
> +
> +build() {
> + local file ext
>
> -build()
> -{
> - MODULES=""
> - BINARIES=""
> - FILES=""
> - SCRIPT="consolefont"
> eval "$(grep -e "^CONSOLEFONT=" /etc/rc.conf)"
> - if [ -n "$CONSOLEFONT" ]; then
> - if [ -e /usr/share/kbd/consolefonts/$CONSOLEFONT.psfu.gz ]; then
> - CONSOLEFONT_FILE_GZ="/usr/share/kbd/consolefonts/$CONSOLEFONT.psfu.gz"
> - CONSOLEFONT_FILE="$(mktemp ${TMPDIR}/consolefont.psfu.XXXXXX)"
> - zcat ${CONSOLEFONT_FILE_GZ}> ${CONSOLEFONT_FILE}
> - add_file ${CONSOLEFONT_FILE} /consolefont.psfu
> - elif [ -e /usr/share/kbd/consolefonts/$CONSOLEFONT.psf.gz ]; then
> - CONSOLEFONT_FILE_GZ="/usr/share/kbd/consolefonts/$CONSOLEFONT.psf.gz"
> - CONSOLEFONT_FILE="$(mktemp ${TMPDIR}/consolefont.psf.XXXXXX)"
> - zcat ${CONSOLEFONT_FILE_GZ}> ${CONSOLEFONT_FILE}
> - add_file ${CONSOLEFONT_FILE} /consolefont.psf
> - else
> - echo "consolefont: Font file does not exist or does not end with .psf.gz or .psfu.gz."
> - fi
> + if [[ -n "$CONSOLEFONT" ]]; then
> + for file in "$BASEDIR/usr/share/kbd/consolefonts/$CONSOLEFONT".psf?(u)?(.gz); do
bash: syntax error near unexpected token `('
Fix:
for file in "$BASEDIR/usr/share/kbd/consolefonts/$CONSOLEFONT".psf{,u}.gz; do
> + if [[ -e $file ]]; then
> + [[ $file =~ psfu? ]]&& ext=${BASH_REMATCH[0]}
> + if [[ $file = *.gz ]]; then
> + gzip -cd "$file"> "$BUILDROOT/consolefont.$ext"
> + else
> + add_file "${file#$BASEDIR}" "/consolefont.$ext"
> + fi
> + SCRIPT=consolefont
> + return 0
> + fi
> + done
> + error "consolefont: requested font not found: \`%s'" "$CONSOLEFONT"
> + return 1
> + else
> + warning "consolefont: no font found in %s/etc/rc.conf" "${BASEDIR%/}"
> + return 1
> fi
> }
>
> -help ()
> -{
> -cat<<HELPEOF
> - This hook loads consolefont specified in rc.conf during early userspace.
> +help() {
> + cat<<HELPEOF
> +This hook loads consolefont specified in rc.conf during early userspace.
> HELPEOF
> }
> +
> +# vim: set ft=sh ts=4 sw=4 et:
--
Kurt
More information about the arch-projects
mailing list