diff options
-rw-r--r-- | office/texlive/README | 14 | ||||
-rw-r--r-- | office/texlive/README.tlpkg | 14 | ||||
-rw-r--r-- | office/texlive/doinst.sh | 17 | ||||
-rw-r--r-- | office/texlive/profile.d/texlive.csh | 4 | ||||
-rw-r--r-- | office/texlive/profile.d/texlive.sh | 4 | ||||
-rw-r--r-- | office/texlive/slack-desc | 19 | ||||
-rw-r--r-- | office/texlive/texlive.SlackBuild | 214 | ||||
-rw-r--r-- | office/texlive/texlive.info | 16 |
8 files changed, 302 insertions, 0 deletions
diff --git a/office/texlive/README b/office/texlive/README new file mode 100644 index 0000000000..68a7b54bf3 --- /dev/null +++ b/office/texlive/README @@ -0,0 +1,14 @@ +TeXLive (TeXLive binaries, support files, docs, TeX formats) + +This package contains the binaries, support files, documentation, TeX formats +and packages, and other files required for the TeXLive TeX distribution. +Included are input files for TeX, runtime configuration files, hyphenation +tables, manpages, and the computer modern fonts. + +The resulting package is over 1GB in size, and a lot of space is required +during the build process, so you might want to consider defining an +alternate location for TMP and OUTPUT if you have small /tmp partition. + +Note that this package is intended to completely replace (and then some) the +tetex packages in Slackware, so you'll need to remove tetex and tetex-doc +before installing TeXLive. diff --git a/office/texlive/README.tlpkg b/office/texlive/README.tlpkg new file mode 100644 index 0000000000..c729676332 --- /dev/null +++ b/office/texlive/README.tlpkg @@ -0,0 +1,14 @@ +The TeXLive Package Manager, including tlmgr(1), is shipped with this TeXLive +package, but it's not expected to work properly (if at all). The general +consensus from the TeXLive users mailing list is that distributions should +not be shipping tlpkg, and while I certainly agree with that, I elected to +ship it anyway on the off chance that some users find it desirable. + +That being said, the *proper* way to upgrade TeXLive (or any part of it) is +through your distribution's package manager, which in this case would mean +that you wait for a new/updated build script from SlackBuilds.org. If you +elect to try tlmgr(1) and it doesn't work at all, or worse, it messes up +part of your TeXLive installation, you have only yourself to blame. + +--rworkman :-) + diff --git a/office/texlive/doinst.sh b/office/texlive/doinst.sh new file mode 100644 index 0000000000..5d68eafc83 --- /dev/null +++ b/office/texlive/doinst.sh @@ -0,0 +1,17 @@ +# Temporarily add /usr/share/texmf/bin to $PATH or +# the updmap-sys and fmtutil-sys calls will not work +TEMP_PATH=$PATH +export PATH=/usr/share/texmf/bin:$PATH + +# This one shouldn't be needed, but just in case... +chroot . /usr/share/texmf/bin/mktexlsr 1>/dev/null 2>/dev/null + +# This is to generate /usr/share/texmf-var/ stuff +chroot . /usr/share/texmf/bin/updmap-sys --nohash --syncwithtrees 1>/dev/null 2>/dev/null +chroot . /usr/share/texmf/bin/mktexlsr /usr/share/texmf-var 1>/dev/null 2>/dev/null +chroot . /usr/share/texmf/bin/fmtutil-sys --all 1>/dev/null 2>/dev/null + +# Just in case... +export PATH=$TEMP_PATH +unset TEMP_PATH + diff --git a/office/texlive/profile.d/texlive.csh b/office/texlive/profile.d/texlive.csh new file mode 100644 index 0000000000..eaadd94451 --- /dev/null +++ b/office/texlive/profile.d/texlive.csh @@ -0,0 +1,4 @@ +#!/bin/csh +# Add path and MANPATH for TeXlive: +set path = ( $path /usr/share/texmf/bin ) +setenv MANPATH ${MANPATH}:/usr/share/texmf/doc/man diff --git a/office/texlive/profile.d/texlive.sh b/office/texlive/profile.d/texlive.sh new file mode 100644 index 0000000000..f9daeaa293 --- /dev/null +++ b/office/texlive/profile.d/texlive.sh @@ -0,0 +1,4 @@ +#!/bin/sh +# Add PATH and MANPATH for TeXlive: +PATH="$PATH:/usr/share/texmf/bin" +MANPATH="$MANPATH:/usr/share/texmf/doc/man" diff --git a/office/texlive/slack-desc b/office/texlive/slack-desc new file mode 100644 index 0000000000..0234e90adb --- /dev/null +++ b/office/texlive/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +texlive: TeXLive (TeXLive binaries, support files, docs, TeX formats) +texlive: +texlive: This package contains the binaries, support files, documentation, +texlive: TeX formats and packages, and other files required for the TeXLive +texlive: TeX distribution. Included are input files for TeX, runtime +texlive: configuration files, hyphenation tables, manpages, and the computer +texlive: modern fonts. +texlive: +texlive: +texlive: +texlive: diff --git a/office/texlive/texlive.SlackBuild b/office/texlive/texlive.SlackBuild new file mode 100644 index 0000000000..bf9ccc0f71 --- /dev/null +++ b/office/texlive/texlive.SlackBuild @@ -0,0 +1,214 @@ +#!/bin/sh + +# TeXLive build script for Slackware + +# Copyright 2009, 2010 Robby Workman, Northport, AL, USA +# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# URL: ftp://tug.org/historic/systems/texlive/2009/ + +PRGNAM=texlive +VERSION=20091107 +ARCH=${ARCH:-i486} +BUILD=${BUILD:-2} +TAG=${TAG:-_SBo} + +SOURCE_VERS=$VERSION +TEXMF_VERS=$VERSION +EXTRA_VERS=$VERSION + +TEXI2HTML=1.82 # texi2html version - http://www.nongnu.org/texi2html/ + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-texlive +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf texlive-$SOURCE_VERS-source +tar xvf $CWD/texlive-$SOURCE_VERS-source.tar.xz +cd texlive-$SOURCE_VERS-source +chown -R root:root . +chmod -R a-s . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# etex is something for eclipse +# Building with --disable-xindy as it requires libffcall +# "kpsewhich -var-value=SELFAUTOPARENT" strips two trailing directories +# from the location of the binaries, and this value is used by many +# things in TeXLive (including tlmgr); therefore, it seems best to just +# "go with the flow" and use "--enable-multiplatform" so the symlinks +# that are automatically created will be correct... +# Building with "--without-system-xpdf" because poppler-0.12+ API is not +# compatible with <=0.11.x. This isn't an issue on 13.0, but we'll make +# it easy for those trying to build on -current +TL_BUILD_ENV="CFLAGS=\"$SLKCFLAGS\" CXXFLAGS=\"$SLKCFLAGS\"" \ +TL_CONFIGURE_ARGS="\ + --enable-multiplatform \ + --with-tex-banner='TeX Live 2009/Slackware (unofficial)' \ + --disable-native-texlive-build \ + --disable-static \ + --enable-ipc \ + --with-x \ + --without-etex \ + --disable-xindy \ + --without-system-xpdf \ + --with-system-ncurses \ + --with-system-zlib \ + --with-system-pnglib \ + --with-system-t1lib \ + --with-system-gd \ + --with-system-freetype2 \ + --build=$ARCH-slackware-linux" \ +./Build + +mkdir -p $PKG/usr/share/texmf/bin +mv inst/bin/${ARCH}-slackware-linux-gnu/* $PKG/usr/share/texmf/bin + +# Install the README file while we're still here +mkdir -p $PKG/usr/doc/texlive-$VERSION +cp -a README $PKG/usr/doc/texlive-$VERSION + +# Now let's install the tlmgr stuff +cd $TMP +rm -rf texlive-$EXTRA_VERS-extra +tar xvf $CWD/texlive-$EXTRA_VERS-extra.tar.xz +cd texlive-$EXTRA_VERS-extra +chown -R root:root . +chmod -R a-s . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +mkdir -p $PKG/usr/doc/texlive-$VERSION/tlpkg +cp -a tlpkg $PKG/usr/share/ +( cd $TMP/texlive-$EXTRA_VERS-extra + cp -a \ + readme-txt.dir/* readme-html.dir/* README* LICENSE* doc.html \ + $PKG/usr/doc/texlive-$VERSION/tlpkg + cat $CWD/README.tlpkg > $PKG/usr/doc/texlive-$VERSION/tlpkg/README.SLACKWARE +) + +# and now we'll install the texmf stuff +cd $TMP +rm -rf texlive-$TEXMF_VERS-texmf +tar xvf $CWD/texlive-$TEXMF_VERS-texmf.tar.xz +cd texlive-$TEXMF_VERS-texmf +chown -R root:root . +chmod -R a-s . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +mkdir -p $PKG/usr/share/{texmf,texmf-dist} +mv texmf-dist/* $PKG/usr/share/texmf-dist +mv texmf/* $PKG/usr/share/texmf + +# Now let's add texi2hmtl - http://www.nongnu.org/texi2html/ +cd $TMP +rm -rf texi2html-$TEXI2HTML +tar xvf $CWD/texi2html-$TEXI2HTML.tar.bz2 +cd texi2html-$TEXI2HTML +chown -R root:root . +chmod -R a-s . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --bindir=/usr/share/texmf/bin \ + --mandir=/usr/share/texmf/doc/man \ + --infodir=/usr/info \ + --build=$ARCH-slackware-linux +make +make install DESTDIR=$PKG +mkdir -p $PKG/usr/doc/texlive-$VERSION/texi2html-$TEXI2HTML +cp -a \ + AUTHORS COPYING NEWS README TODO \ + $PKG/usr/doc/texlive-$VERSION/texi2html-$TEXI2HTML + +# Compress man pages +( cd $PKG/usr/share/texmf/doc/man || exit 1 + find . -type f -name "Makefile" -exec rm -f {} \; + find . -type f -name "*.pdf" -exec rm -f {} \; + find . -type f -exec gzip -9 {} \; + for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done +) + +# Handle the GNU info pages +( cd $PKG/usr/info + mv $PKG/usr/share/texmf/doc/info/* . + rm -rf $PKG/usr/share/texmf/doc/info + rm -f dir + gzip -9 * +) + +# Add profile scripts +mkdir -p $PKG/etc/profile.d +cat $CWD/profile.d/texlive.sh > $PKG/etc/profile.d/texlive.sh +cat $CWD/profile.d/texlive.csh > $PKG/etc/profile.d/texlive.csh +chmod 0755 $PKG/etc/profile.d/* + +mkdir -p $PKG/install +cat $CWD/doinst.sh > $PKG/install/doinst.sh +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -p -l y -c n $OUTPUT/texlive-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} + +# Ignore this - it's for reference purposes :-) -RW +# If we turn off --enable-multiplatform and place the +# binaries only one folder deeper than texmf{,-dist} +# we should have our own configuration. +#cat > $PKG/usr/share/texmf.cnf <<EOF +#% \$SELFAUTODIR will be /usr/share +#TEXMFMAIN = \$SELFAUTODIR/texmf +#TEXMFDIST = \$SELFAUTODIR/texmf-dist +#TEXMFLOCAL = \$SELFAUTODIR/texmf-local +#TEXMFSYSVAR = \$SELFAUTODIR/texmf-var +#TEXMFSYSCONFIG = \$SELFAUTODIR/texmf-config +#EOF diff --git a/office/texlive/texlive.info b/office/texlive/texlive.info new file mode 100644 index 0000000000..fc64c7de32 --- /dev/null +++ b/office/texlive/texlive.info @@ -0,0 +1,16 @@ +PRGNAM="texlive" +VERSION="20091107" +HOMEPAGE="http://tug.org/texlive/" +DOWNLOAD="ftp://tug.org/historic/systems/texlive/2009/texlive-20091107-extra.tar.xz \ + ftp://tug.org/historic/systems/texlive/2009/texlive-20091107-source.tar.xz \ + ftp://tug.org/historic/systems/texlive/2009/texlive-20091107-texmf.tar.xz \ + http://savannah.inetbridge.net/texi2html/texi2html-1.82.tar.bz2" +MD5SUM="da136791d9ba34f6396c6b1d4379ee53 \ + 18f992b4e6394770fb80e42719c0ec84 \ + 5c6b33235ab3330626f58ca665d53a3c \ + a8a9193c0ac1bec2f3ca7be40a5a82eb" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Robby Workman" +EMAIL="rw@rlworkman.net" +APPROVED="dsomero" |