summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--office/texlive/README14
-rw-r--r--office/texlive/README.tlpkg14
-rw-r--r--office/texlive/doinst.sh17
-rw-r--r--office/texlive/profile.d/texlive.csh4
-rw-r--r--office/texlive/profile.d/texlive.sh4
-rw-r--r--office/texlive/slack-desc19
-rw-r--r--office/texlive/texlive.SlackBuild214
-rw-r--r--office/texlive/texlive.info16
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"