#!/bin/sh PATH=${PATH}:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin export PATH PREFIX=`xml2-config --prefix` ROOTCATALOG=${PREFIX}/share/sk/catalog CATALOG=${PREFIX}/share/sk/docbook/catalog if [ "$2" = "PRE-INSTALL" ]; then # # create the catalogs root and docbook specific # if [ ! -r $ROOTCATALOG ] ; then echo creating XML Catalog root $ROOTCATALOG xmlcatalog --noout --create $ROOTCATALOG fi if [ ! -r $ROOTCATALOG ] ; then echo Failed creating XML Catalog root $ROOTCATALOG exit 1 fi if [ ! -r $CATALOG ] ; then echo creating DocBook XML Catalog $CATALOG xmlcatalog --noout --create $CATALOG fi if [ ! -r $CATALOG ] ; then echo Failed creating DocBook XML Catalog $CATALOG exit 1 fi # # find the prefix for DocBook DTD # found=`find ${PREFIX}/share/ -follow -name docbookx.dtd 2> /dev/null` if [ "$found" = "" ] ; then echo could not locate docbookx.dtd for DocBook XML exit 1 fi dtd412="" for dtd in $found; do check=`grep '//OASIS//DTD DocBook XML V4.1.2//EN' $dtd` if [ "$check" != "" ] ; then dtd412=$dtd break fi done if [ "$dtd412" = "" ] ; then echo could not locate version 4.1.2 of DocBook XML exit 1 fi docbookdir=`dirname $dtd412` echo Found DocBook XML 4.1.2 DTD in $docbookdir xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \ "file://$docbookdir/dbpoolx.mod" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML V4.1.2//EN" \ "file://$docbookdir/docbookx.dtd" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \ "file://$docbookdir/dbcentx.mod" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \ "file://$docbookdir/dbnotnx.mod" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \ "file://$docbookdir/dbgenent.mod" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \ "file://$docbookdir/dbhierx.mod" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \ "file://$docbookdir/soextblx.dtd" $CATALOG xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \ "file://$docbookdir/calstblx.dtd" $CATALOG xmlcatalog --noout --add "rewriteSystem" \ "http://www.oasis-open.org/docbook/xml/4.1.2" \ "file://$docbookdir" $CATALOG xmlcatalog --noout --add "rewriteURI" \ "http://www.oasis-open.org/docbook/xml/4.1.2" \ "file://$docbookdir" $CATALOG xmlcatalog --noout --add "delegatePublic" \ "-//OASIS//ENTITIES DocBook XML" \ "file://$CATALOG" $ROOTCATALOG xmlcatalog --noout --add "delegatePublic" \ "-//OASIS//DTD DocBook XML" \ "file://$CATALOG" $ROOTCATALOG xmlcatalog --noout --add "delegateSystem" \ "http://www.oasis-open.org/docbook/" \ "file://$CATALOG" $ROOTCATALOG xmlcatalog --noout --add "delegateURI" \ "http://www.oasis-open.org/docbook/" \ "file://$CATALOG" $ROOTCATALOG # # find the prefix for ISO DocBook entities # top=`dirname $docbookdir` found=`find ${PREFIX}/share/ -follow -iname "iso*amsb.ent" 2> /dev/null` if [ "$found" = "" ] ; then echo could not locate iso-amsb.ent of ISO DocBook entities exit 1 fi entxml="" for tst in $found; do check=`grep '' $tst` if [ "$check" != "" ] ; then entxml=$tst break fi done if [ "$entxml" = "" ] ; then echo could not locate ISO DocBook entities exit 1 fi isodir=`dirname $entxml` echo Found ISO DocBook entities in $isodir xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Publishing//EN" \ "file://$isodir/iso-pub.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Greek Letters//EN" \ "file://$isodir/iso-grk1.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \ "file://$isodir/iso-box.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Greek Symbols//EN" \ "file://$isodir/iso-grk3.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \ "file://$isodir/iso-amsn.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \ "file://$isodir/iso-num.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \ "file://$isodir/iso-grk4.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \ "file://$isodir/iso-dia.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \ "file://$isodir/iso-grk2.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \ "file://$isodir/iso-amsa.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \ "file://$isodir/iso-amso.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \ "file://$isodir/iso-cyr1.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES General Technical//EN" \ "file://$isodir/iso-tech.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \ "file://$isodir/iso-amsc.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Latin 1//EN" \ "file://$isodir/iso-lat1.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \ "file://$isodir/iso-amsb.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Latin 2//EN" \ "file://$isodir/iso-lat2.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \ "file://$isodir/iso-amsr.ent" $CATALOG xmlcatalog --noout --add "public" \ "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \ "file://$isodir/iso-cyr2.ent" $CATALOG xmlcatalog --noout --add "delegatePublic" \ "ISO 8879:1986" \ "file://$CATALOG" $ROOTCATALOG # # find the prefix for XSLT stylesheets # top=`dirname $docbookdir` found=`find ${PREFIX}/share/ -follow -name chunk.xsl 2> /dev/null` if [ "$found" = "" ] ; then echo could not locate chunk-common.xsl of DocBook XSLT stylesheets exit 1 fi xsldir="" for tst in $found; do dir=`dirname $tst` dir=`dirname $dir` if [ -r $dir/html/docbook.xsl -a -r $dir/common/l10n.xml ]; then xsldir=$dir break fi done if [ "$xsldir" = "" ] ; then echo could not locate DocBook XSLT stylesheets exit 1 fi echo Found DocBook XSLT stylesheets in $xsldir for version in current 1.39 1.40 1.41 1.42 1.43 1.44 1.45 1.46 1.47 \ 1.48 1.49 1.50.0 1.51.0 1.52.0 1.52.1 1.52.2 1.53.0 1.54.0 \ 1.54.1 1.55.0 1.56.0 1.56.1 1.57.0 1.58.0 1.58.1 1.59.0 \ 1.59.1 1.60.0 do xmlcatalog --noout --add "rewriteSystem" \ "http://docbook.sourceforge.net/release/xsl/$version" \ "file://$xsldir" $CATALOG xmlcatalog --noout --add "rewriteURI" \ "http://docbook.sourceforge.net/release/xsl/$version" \ "file://$xsldir" $CATALOG done xmlcatalog --noout --add "delegateSystem" \ "http://docbook.sourceforge.net/release/xsl/" \ "file://$CATALOG" $ROOTCATALOG xmlcatalog --noout --add "delegateURI" \ "http://docbook.sourceforge.net/release/xsl/" \ "file://$CATALOG" $ROOTCATALOG fi if [ "$2" = "POST-INSTALL" ]; then SKPREFIX=`scrollkeeper-config --prefix` echo "`date +"%b %d %X"` Installing ScrollKeeper `scrollkeeper-config --version`..." >> /var/log/scrollkeeper.log xmlcatalog --noout --add "public" \ "-//OMF//DTD Scrollkeeper OMF Variant V1.0//EN" \ "${SKPREFIX}/share/gnome/xml/scrollkeeper/dtds/scrollkeeper-omf.dtd" \ ${ROOTCATALOG} scrollkeeper-rebuilddb -q -p /var/db/scrollkeeper || /usr/bin/true fi