texlive-core:first pisi rel
This commit is contained in:
@@ -0,0 +1,224 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import get
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import shelltools
|
||||
|
||||
WorkDir = "."
|
||||
revnr = get.srcVERSION().split(".")[1]
|
||||
|
||||
def setup():
|
||||
# Unpack and prepare files
|
||||
for tar_file in shelltools.ls(get.workDIR()):
|
||||
if tar_file.endswith("xz"):
|
||||
shelltools.system("tar Jxfv %s" % tar_file)
|
||||
|
||||
def build():
|
||||
for folder in ["doc", "source"]:
|
||||
shelltools.unlinkDir(folder)
|
||||
|
||||
def install():
|
||||
# prepare and install installed packs list
|
||||
pisitools.dodir("/var/lib/texmf/pisilinux/installedpacks")
|
||||
pisitools.dosed("CONTENTS", "^#", deleteLine=True)
|
||||
pisitools.insinto("/var/lib/texmf/pisilinux/installedpacks", "CONTENTS", "%s_%s.list" % (get.srcNAME(), revnr))
|
||||
|
||||
for i in shelltools.ls("texmf-dist"):
|
||||
shelltools.copytree("texmf-dist/%s/" % i, "%s/usr/share/texmf-dist/" % get.installDIR())
|
||||
shelltools.system("find texmf-dist -type f -executable -exec chmod 755 %s/usr/share/{} \;" % get.installDIR())
|
||||
|
||||
for i in shelltools.ls("."):
|
||||
if shelltools.isDirectory(i) and not i.startswith("texmf"):
|
||||
shelltools.copytree(i, "%s/usr/share/texmf-dist/" % get.installDIR())
|
||||
|
||||
# clean config files
|
||||
pisitools.dosed("tex/generic/config", "DO NOT EDIT", deleteLine=True, filePattern="language\.d..$")
|
||||
pisitools.dosed("texmf-dist/web2c/updmap.cfg", "^(#!\s*)?(Map|MixedMap)", deleteLine=True)
|
||||
pisitools.dosed("%s/usr/share/texmf-dist/web2c/fmtutil.cnf" % get.installDIR(), "aleph", deleteLine=True)
|
||||
|
||||
# install config files
|
||||
cfs = ["chktex/chktexrc",
|
||||
"web2c/mktex.cnf",
|
||||
"web2c/updmap.cfg",
|
||||
"web2c/fmtutil.cnf",
|
||||
"dvips/config/config.ps",
|
||||
"dvipdfmx/dvipdfmx.cfg",
|
||||
"tex/generic/config/language.dat",
|
||||
"tex/generic/config/language.def",
|
||||
"tex/generic/tex-ini-files/pdftexconfig.tex",
|
||||
"ttf2pk/ttf2pk.cfg",
|
||||
"xdvi/XDvi"]
|
||||
for cf in cfs:
|
||||
d = "/".join(cf.split("/")[:-1])
|
||||
p = cf if shelltools.isFile(cf) else "texmf-dist/%s" % cf
|
||||
pisitools.insinto("/etc/texmf/%s" % d, p)
|
||||
#pisitools.dosym("/etc/texmf/web2c/texmf.cnf", "/usr/share/texmf-dist/web2c/texmf.cnf")
|
||||
|
||||
# fix sandbox violations
|
||||
#pisitools.dosed("texmf-dist/scripts/texlive/texlinks.sh", '"\$symlinkdir', r'"%s/$symlinkdir' % get.installDIR())
|
||||
|
||||
# create symlinks
|
||||
pisitools.dodir("/usr/bin")
|
||||
#shelltools.system("texmf-dist/scripts/texlive/texlinks.sh -f %s/usr/share/texmf-dist/web2c/fmtutil.cnf %s/usr/bin" % ((get.installDIR(), ) * 2))
|
||||
|
||||
# remove upstream updmap.cfg: it contains too many maps
|
||||
pisitools.remove("/usr/share/texmf-dist/web2c/updmap.cfg")
|
||||
|
||||
# remove unneeded dir
|
||||
pisitools.removeDir("/usr/share/texmf-dist/scripts/context/stubs/mswin")
|
||||
pisitools.removeDir("/usr/share/texmf-dist/scripts/context/stubs/win64")
|
||||
|
||||
# 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
|
||||
attachfile2/pdfatfi.pl
|
||||
bundledoc/arlatex
|
||||
bundledoc/bundledoc
|
||||
checkcites/checkcites.lua
|
||||
checklistings/checklistings.sh
|
||||
chklref/chklref.pl
|
||||
chktex/chkweb.sh
|
||||
chktex/deweb.pl
|
||||
cjk-gs-integrate/cjk-gs-integrate.pl
|
||||
clojure-pamphlet/pamphletangler
|
||||
cluttex/cluttex.lua
|
||||
context/perl/mptopdf.pl
|
||||
context/stubs/unix/context
|
||||
context/stubs/unix/contextjit
|
||||
context/stubs/unix/luatools
|
||||
context/stubs/unix/mtxrun
|
||||
context/stubs/unix/mtxrunjit
|
||||
context/stubs/unix/texexec
|
||||
context/stubs/unix/texmfstart
|
||||
ctan-o-mat/ctan-o-mat.pl
|
||||
ctanbib/ctanbib
|
||||
ctanify/ctanify
|
||||
ctanupload/ctanupload.pl
|
||||
de-macro/de-macro
|
||||
dosepsbin/dosepsbin.pl
|
||||
dtxgen/dtxgen
|
||||
dviasm/dviasm.py
|
||||
dviinfox/dviinfox.pl
|
||||
epstopdf/epstopdf.pl
|
||||
findhyph/findhyph
|
||||
fontools/afm2afm
|
||||
fontools/autoinst
|
||||
fontools/ot2kpx
|
||||
fragmaster/fragmaster.pl
|
||||
installfont/installfont-tl
|
||||
jfmutil/jfmutil.pl
|
||||
ketcindy/ketcindy.sh
|
||||
latex-git-log/latex-git-log
|
||||
latex-papersize/latex-papersize.py
|
||||
latex2man/latex2man
|
||||
latex2nemeth/latex2nemeth
|
||||
latexdiff/latexdiff-vc.pl
|
||||
latexdiff/latexdiff.pl
|
||||
latexdiff/latexrevise.pl
|
||||
latexfileversion/latexfileversion
|
||||
latexindent/latexindent.pl
|
||||
latexmk/latexmk.pl
|
||||
latexpand/latexpand
|
||||
ltxfileinfo/ltxfileinfo
|
||||
ltximg/ltximg.pl
|
||||
luaotfload/luaotfload-tool.lua
|
||||
lwarp/lwarpmk.lua
|
||||
make4ht/make4ht
|
||||
match_parens/match_parens
|
||||
mf2pt1/mf2pt1.pl
|
||||
mkjobtexmf/mkjobtexmf.pl
|
||||
pdfbook2/pdfbook2
|
||||
pdfcrop/pdfcrop.pl
|
||||
pdfjam/pdfjam
|
||||
pdflatexpicscale/pdflatexpicscale.pl
|
||||
pdftex-quiet/pdftex-quiet
|
||||
pdfxup/pdfxup
|
||||
pfarrei/a5toa4.tlu
|
||||
pfarrei/pfarrei.tlu
|
||||
pkfix-helper/pkfix-helper
|
||||
pkfix/pkfix.pl
|
||||
ps2eps/ps2eps.pl
|
||||
purifyeps/purifyeps
|
||||
pythontex/depythontex.py
|
||||
pythontex/pythontex.py
|
||||
simpdftex/simpdftex
|
||||
srcredact/srcredact.pl
|
||||
sty2dtx/sty2dtx.pl
|
||||
tex4ebook/tex4ebook
|
||||
tex4ht/ht.sh
|
||||
tex4ht/htcontext.sh
|
||||
tex4ht/htlatex.sh
|
||||
tex4ht/htmex.sh
|
||||
tex4ht/httex.sh
|
||||
tex4ht/httexi.sh
|
||||
tex4ht/htxelatex.sh
|
||||
tex4ht/htxetex.sh
|
||||
tex4ht/mk4ht.pl
|
||||
tex4ht/xhlatex.sh
|
||||
texcount/texcount.pl
|
||||
texdef/texdef.pl
|
||||
texdiff/texdiff
|
||||
texdirflatten/texdirflatten
|
||||
texdoc/texdoc.tlu
|
||||
texdoctk/texdoctk.pl
|
||||
texfot/texfot.pl
|
||||
texlive-extra/allcm.sh
|
||||
texlive-extra/allneeded.sh
|
||||
texlive-extra/dvi2fax.sh
|
||||
texlive-extra/dvired.sh
|
||||
texlive-extra/e2pall.pl
|
||||
texlive-extra/fontinst.sh
|
||||
texlive-extra/kpsetool.sh
|
||||
texlive-extra/kpsewhere.sh
|
||||
texlive-extra/ps2frag.sh
|
||||
texlive-extra/pslatex.sh
|
||||
texlive-extra/texconfig-dialog.sh
|
||||
texlive-extra/texconfig-sys.sh
|
||||
texlive-extra/texconfig.sh
|
||||
texlive-extra/texlinks.sh
|
||||
texlive/fmtutil-sys.sh
|
||||
texlive/fmtutil-user.sh
|
||||
texlive/fmtutil.pl
|
||||
texlive/mktexlsr
|
||||
texlive/mktexmf
|
||||
texlive/mktexpk
|
||||
texlive/mktextfm
|
||||
texlive/rungs.tlu
|
||||
texlive/updmap-sys.sh
|
||||
texlive/updmap-user.sh
|
||||
texlive/updmap.pl
|
||||
texliveonfly/texliveonfly.py
|
||||
texloganalyser/texloganalyser
|
||||
texplate/texplate.sh
|
||||
thumbpdf/thumbpdf.pl
|
||||
typeoutfileinfo/typeoutfileinfo.sh
|
||||
xindex/xindex.lua
|
||||
xindy/texindy.pl
|
||||
xindy/xindy.pl
|
||||
"""
|
||||
for p in linked_scripts.split():
|
||||
bn = shelltools.baseName(p).split(".")[0]
|
||||
if shelltools.isFile("%s/usr/share/texmf-dist/scripts/%s" % (get.installDIR(), p)):
|
||||
pisitools.dosym("/usr/share/texmf-dist/scripts/%s" % p, "/usr/bin/%s" % bn)
|
||||
pisitools.dosym("/usr/share/texmf-dist/scripts/listings-ext/listings-ext.sh", "/usr/bin/listings-ext.sh")
|
||||
|
||||
# additional symlinks
|
||||
pisitools.dosym("allcm", "/usr/bin/allec")
|
||||
pisitools.dosym("cluttex", "/usr/bin/cllualatex")
|
||||
pisitools.dosym("cluttex", "/usr/bin/clxelatex")
|
||||
pisitools.dosym("epstopdf", "/usr/bin/repstopdf")
|
||||
pisitools.dosym("fmtutil", "/usr/bin/mktexfmt")
|
||||
pisitools.dosym("kpsetool", "/usr/bin/kpsepath")
|
||||
pisitools.dosym("kpsetool", "/usr/bin/kpsexpand")
|
||||
pisitools.dosym("luaotfload-tool", "/usr/bin/mkluatexfontdb")
|
||||
pisitools.dosym("mktexlsr", "/usr/bin/texhash")
|
||||
pisitools.dosym("pdfcrop", "/usr/bin/rpdfcrop")
|
||||
pisitools.dosym("texdef", "/usr/bin/latexdef")
|
||||
Reference in New Issue
Block a user