verify_digest(){ # $0 method file string case "$1" in *) DIGEST=`echo "$1" | tr a-z A-Z` [ "$DIGEST($2)= $3" = "`openssl $1 $2`" ] ;; esac } verify_signature(){ # $0 url|id ... sig while [ "$1" != "" ]; do case "$1" in 0x*) gpg --recv-keys "$1" || return $? ;; http:*|ftp:*) curl "$1" | gpg --import || return $? ;; *) gpg --verify "$1" return $? esac shift done } error_out(){ # $0 message ... echo "$@" 1>&2 exit 1 } curl -RO -C - --insecure https://fedorahosted.org/releases/x/m/xmlto/xmlto-0.0.22.tar.bz2 curl -RO -C - --insecure https://fedorahosted.org/releases/x/m/xmlto/xmlto-0.0.22.tar.bz2.sig verify_signature 0xE4226034 xmlto-0.0.22.tar.bz2.sig || error_out "$0: stopped at line $LINENO" tar xvjf xmlto-0.0.22.tar.bz2 curl -ROL -C - http://downloads.sourceforge.net/sourceforge/docbook/docbook-xsl-1.75.1.tar.bz2 tar xvjf docbook-xsl-1.75.1.tar.bz2 curl -RO -C - http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip [ ! -d docbook-xml-4.5 ] && mkdir docbook-xml-4.5 (cd docbook-xml-4.5 && unzip ../docbook-xml-4.5.zip ) (cd xmlto-0.0.22 && patch -p0 -b -z.org < ../xmlto-0.0.22-ubagami.patch )