core/texlive-core/PKGBUILD
Samir 348d542db8 libpng group: update/rebuild platform
will commit them separately next time... it's just too much work to do separate commits right now
2013-07-27 16:51:03 +00:00

278 lines
9.0 KiB
Bash

#
# Platform Packages for Chakra, part of chakra-project.org
#
# Maintainer: Samir Benmendil <ram-z[at]chakra-project[dot]org>
# Contributor: Rémy Oudompheng <remy@archlinux.org>
# Contributor: Phil Miller <philm[at]chakra-project[dot]org>
# Contributor: Drake Justice <djustice[at]chakra-linux[dot]org>
pkgname=texlive-core
pkgver=2013.30962
_revnr=${pkgver#2013.}
pkgrel=2
pkgdesc="TeX Live core distribution"
url='http://tug.org/texlive/'
license=('GPL')
arch=(any)
depends=('texlive-bin' 'perl')
optdepends=(
'ruby: for old ConTeXT MkII and epspdf'
'tk: for texdoctk'
'python: for dviasm'
'ghostscript: for epstopdf, epspdf and other ConTeXt tools'
'psutils: to manipulate the output of dvips'
't1utils: can be useful when installing Type1 fonts'
'java-runtime: for utilities like arara'
)
groups=('texlive-most')
conflicts=('tetex' 'texlive-latex3')
provides=('tetex' 'texlive-latex3')
replaces=('tetex' 'texlive-latex3')
source=("ftp://ftp.archlinux.org/other/texlive/$pkgname-$pkgver-src.zip"
"$pkgname.maps"
"texmf.cnf"
"09-texlive-fonts.conf")
options=(!strip)
install=texlive.install
backup=(etc/texmf/web2c/texmf.cnf \
etc/texmf/chktex/chktexrc \
etc/texmf/dvipdfmx/dvipdfmx.cfg \
etc/texmf/dvips/config/config.ps \
etc/texmf/tex/generic/config/language.dat \
etc/texmf/tex/generic/config/language.def \
etc/texmf/tex/generic/config/pdftexconfig.tex \
etc/texmf/ttf2pk/ttf2pk.cfg \
etc/texmf/web2c/fmtutil.cnf \
etc/texmf/web2c/mktex.cnf \
etc/texmf/xdvi/XDvi)
md5sums=('cc2e2edd31b530d792460976c3ce940b'
'306ab28bb9b070fc3e40d86d28ea7e8e'
'df537245012f3e5f05bdc55644b7a3df'
'393a4bf67adc7ca5df2b386759d1a637')
build() {
cd "${srcdir}"
echo -n " --> extracting all packages... "
for p in *.tar.xz; do
bsdtar -xf $p
done
echo "done"
rm -rf {tlpkg,doc,source,omega}
}
package() {
cd "$srcdir"
# Install packages
install -m755 -d $pkgdir/var/lib/texmf/arch/installedpkgs
sed -i '/^#/d' CONTENTS
install -m644 CONTENTS $pkgdir/var/lib/texmf/arch/installedpkgs/${pkgname}_${_revnr}.pkgs
install -m644 $pkgname.maps $pkgdir/var/lib/texmf/arch/installedpkgs/
install -m755 -d $pkgdir/usr/share
wanteddirs=$(for d in *; do test -d $d && [[ $d != texmf* ]] && echo $d; done) || true
for dir in $wanteddirs; do
find $dir -type d -exec install -d -m755 $pkgdir/usr/share/texmf-dist/'{}' \;
find $dir -type f -exec install -m644 '{}' $pkgdir/usr/share/texmf-dist/'{}' \;
done
find texmf-dist -type d -exec install -d -m755 $pkgdir/usr/share/'{}' \;
find texmf-dist -type f -exec install -m644 '{}' $pkgdir/usr/share/'{}' \;
find texmf-dist -type f -executable -exec chmod 755 $pkgdir/usr/share/'{}' \;
#############################################################
### install texmf tree
echo "--> installing the /etc/texmf tree"
install -d -m755 "$pkgdir"/etc/texmf/web2c
install -d -m755 "$pkgdir"/etc/texmf/chktex
install -d -m755 "$pkgdir"/etc/texmf/dvips/config
install -d -m755 "$pkgdir"/etc/texmf/dvipdfmx
install -d -m755 "$pkgdir"/etc/texmf/tex/generic/config
install -d -m755 "$pkgdir"/etc/texmf/ttf2pk
install -d -m755 "$pkgdir"/etc/texmf/xdvi
install -d -m755 "$pkgdir"/etc/fonts/conf.avail
install -m644 "$srcdir"/09-texlive-fonts.conf "$pkgdir"/etc/fonts/conf.avail/
# Remove manpages (already in texlive-bin).
rm -rf "$pkgdir"/usr/share/texmf-dist/doc/man
# copy config files to $TEXMFCONFIG tree
cp -a "$pkgdir"/usr/share/texmf-dist/chktex/chktexrc \
"$pkgdir"/etc/texmf/chktex/
cp -a "$pkgdir"/usr/share/texmf-dist/web2c/mktex.cnf \
"$pkgdir"/etc/texmf/web2c/
cp -a "$pkgdir"/usr/share/texmf-dist/web2c/updmap.cfg \
"$pkgdir"/etc/texmf/web2c/
cp -a "$pkgdir"/usr/share/texmf-dist/web2c/fmtutil.cnf \
"$pkgdir"/etc/texmf/web2c/
cp -a "$pkgdir"/usr/share/texmf-dist/dvips/config/config.ps \
"$pkgdir"/etc/texmf/dvips/config/
cp -a "$pkgdir"/usr/share/texmf-dist/dvipdfmx/dvipdfmx.cfg \
"$pkgdir"/etc/texmf/dvipdfmx/
cp -a "$pkgdir"/usr/share/texmf-dist/tex/generic/config/pdftexconfig.tex \
"$pkgdir"/etc/texmf/tex/generic/config/
cp -a "$pkgdir"/usr/share/texmf-dist/tex/generic/config/language.dat \
"$pkgdir"/etc/texmf/tex/generic/config/
cp -a "$pkgdir"/usr/share/texmf-dist/tex/generic/config/language.def \
"$pkgdir"/etc/texmf/tex/generic/config/
cp -a "$pkgdir"/usr/share/texmf-dist/ttf2pk/ttf2pk.cfg \
"$pkgdir"/etc/texmf/ttf2pk/
cp -a "$pkgdir"/usr/share/texmf-dist/xdvi/XDvi \
"$pkgdir"/etc/texmf/xdvi/
# remove TL specific warnings in the language.{dat,def} files:
sed -i -e '/DO NOT EDIT/,+3 d' "$pkgdir"/etc/texmf/tex/generic/config/language.*
# clean updmap.cfg
sed -i '/^\(Map\|MixedMap\)/d' "$pkgdir"/etc/texmf/web2c/updmap.cfg
sed -i '/^#! \(Map\|MixedMap\)/d' "$pkgdir"/etc/texmf/web2c/updmap.cfg
# replace upstream texmf.cnf with ours
rm -f "$pkgdir"/usr/share/texmf-dist/web2c/texmf.cnf
install -m644 "$srcdir"/texmf.cnf "$pkgdir"/etc/texmf/web2c/texmf.cnf
# since the location of texmf.cnf is hard-wired to be under /usr/share/texmf/web2c
# we make a symlink from /etc/texmf/web2c/texmf.cnf to the latter
ln -sf /etc/texmf/web2c/texmf.cnf "$pkgdir"/usr/share/texmf-dist/web2c/texmf.cnf
# fix location of TEXMFCACHE for luatools
sed -i 's#texlive2013#texlive#' "$pkgdir"/usr/share/texmf-dist/web2c/texmfcnf.lua
## remove aleph from fmtutil.cnf
sed -i -e '/aleph/d' "$pkgdir"/usr/share/texmf-dist/web2c/fmtutil.cnf
# create symlinks for formats
echo "--> Create symlinks for TeX formats ..."
mkdir -p "${pkgdir}/usr/bin"
bash "${pkgdir}"/usr/share/texmf-dist/scripts/texlive/texlinks.sh -f "$pkgdir"/usr/share/texmf-dist/web2c/fmtutil.cnf "$pkgdir"/usr/bin/
# use python2 for dviasm
sed -i 's/env python/env python2/' $pkgdir/usr/share/texmf-dist/scripts/dviasm/dviasm.py
# remove obsolete stuff (we don't provide the omega and aleph binaries anyway)
rm -f $pkgdir/usr/share/texmf-dist/tex/plain/config/{omega,aleph}.ini
# remove upstreams updmap.cfg: it contains too many maps.
rm "${pkgdir}/usr/share/texmf-dist/web2c/updmap.cfg"
# more cleanup
rm -rf $pkgdir/usr/share/texmf-dist/scripts/context/stubs/mswin/
# link programs from /usr/share/texmf-dist/scripts
_linked_scripts="
a2ping/a2ping.pl
accfonts/mkt1font
accfonts/vpl2ovp
accfonts/vpl2vpl
adhocfilelist/adhocfilelist.sh
arara/arara.sh
bundledoc/arlatex
bundledoc/bundledoc
checkcites/checkcites.lua
chktex/chkweb.sh
chktex/deweb.pl
context/perl/mptopdf.pl
context/stubs/unix/context
context/stubs/unix/ctxtools
context/stubs/unix/luatools
context/stubs/unix/mtxrun
context/stubs/unix/pstopdf
context/stubs/unix/texexec
context/stubs/unix/texmfstart
ctanify/ctanify
ctanupload/ctanupload.pl
de-macro/de-macro
dosepsbin/dosepsbin.pl
dtxget/dtxgen
dviasm/dviasm.py
epstopdf/epstopdf.pl
findhyph/findhyph
fontools/afm2afm
fontools/autoinst
fontools/ot2kpx
fragmaster/fragmaster.pl
installfont/installfont-tl
latex2man/latex2man
latexdiff/latexdiff-vc.pl
latexdiff/latexdiff.pl
latexdiff/latexrevise.pl
latexfileversion/latexfileversion
latexmk/latexmk.pl
latexpand/latexpand
ltxfileinfo/ltxfileinfo
lua2dox/lua2dox_filter
luaotfload/luaotfload-tool.lua
match_parens/match_parens
mf2pt1/mf2pt1.pl
mkjobtexmf/mkjobtexmf.pl
oberdiek/pdfatfi.pl
pdfcrop/pdfcrop.pl
pdfjam/pdf180
pdfjam/pdf270
pdfjam/pdf90
pdfjam/pdfbook
pdfjam/pdfflip
pdfjam/pdfjam
pdfjam/pdfjam-pocketmod
pdfjam/pdfjam-slides3up
pdfjam/pdfjam-slides6up
pdfjam/pdfjoin
pdfjam/pdfnup
pdfjam/pdfpun
pfarrei/a5ta4.tlu
pfarrei/pfarrei.tlu
pkfix-helper/pkfix-helper
pkfix/pkfix.pl
ps2eps/ps2eps.pl
purifyeps/purifyeps
simpdftex/simpdftex
sty2dtx/sty2dtx.pl
texcount/texcount.pl
texdef/texdef.pl
texdiff/texdiff
texdirflatten/texdirflatten
texdoc/texdoc.tlu
texdoctk/texdoctk.pl
texlive/allcm.sh
texlive/allneeded.sh
texlive/dvi2fax.sh
texlive/dvired.sh
texlive/e2pall.sh
texlive/fmtutil-sys.sh
texlive/fmtutil.sh
texlive/fontinst.sh
texlive/kpsetool.sh
texlive/kpsewhere.sh
texlive/ps2frag.sh
texlive/pslatex.sh
texlive/rungs.tlu
texlive/texconfig-dialog.sh
texlive/texconfig-sys.sh
texlive/texconfig.sh
texlive/texlinks.sh
texlive/updmap-sys.sh
texlive/updmap.pl
texliveonfly/texliveonfly.py
texloganalyser/texloganalyser
thumbpdf/thumbpdf.pl
xindy/texindy.pl
xindy/xindy.pl
"
install -m755 -d $pkgdir/usr/bin
for _script in ${_linked_scripts}; do
_scriptbase=$(basename $_script)
_scriptbase=${_scriptbase%.*}
[[ -f ${pkgdir}/usr/share/texmf-dist/scripts/${_script} ]] &&
ln -s /usr/share/texmf-dist/scripts/${_script} ${pkgdir}/usr/bin/${_scriptbase}
done
ln -s /usr/share/texmf-dist/scripts/listings-ext/listings-ext.sh ${pkgdir}/usr/bin/listings-ext.sh
# additional symlinks
ln -s allcm ${pkgdir}/usr/bin/allec
ln -s fmtutil ${pkgdir}/usr/bin/mktexfmt
ln -s kpsetool ${pkgdir}/usr/bin/kpsexpand
ln -s kpsetool ${pkgdir}/usr/bin/kpsepath
ln -s epstopdf ${pkgdir}/usr/bin/repstopdf
ln -s pdfcrop ${pkgdir}/usr/bin/rpdfcrop
ln -s luaotfload-tool ${pkgdir}/usr/bin/mkluatexfontdb
}