Browse Source
* texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive versionandroid-5
Henrik Grimler
7 years ago
committed by
Fredrik Fornwall
15 changed files with 7628 additions and 149 deletions
@ -0,0 +1,102 @@ |
|||
TERMUX_PKG_HOMEPAGE=https://www.tug.org/texlive/ |
|||
TERMUX_PKG_DESCRIPTION="TeX Live is a distribution of the TeX typesetting system." |
|||
TERMUX_PKG_MAINTAINER="Henrik Grimler @Grimler91" |
|||
_MAJOR_VERSION=20170524 |
|||
_MINOR_VERSION= |
|||
TERMUX_PKG_VERSION=${_MAJOR_VERSION}${_MINOR_VERSION} |
|||
TERMUX_PKG_SRCURL=ftp://tug.org/historic/systems/texlive/${TERMUX_PKG_VERSION:0:4}/texlive-${TERMUX_PKG_VERSION}-source.tar.xz |
|||
TERMUX_PKG_SHA256="0161695304e941334dc0b3b5dabcf8edf46c09b7bc33eea8229b5ead7ccfb2aa" |
|||
TERMUX_PKG_DEPENDS="freetype, libpng, libgd, libgmp, libmpfr, libicu, liblua, poppler, libgraphite, harfbuzz-icu, perl" |
|||
TERMUX_PKG_FOLDERNAME=texlive-${_MAJOR_VERSION}-source |
|||
TERMUX_PKG_BREAKS="texlive (<< 20170524-3)" |
|||
TERMUX_PKG_REPLACES="texlive (<< 20170524-3)" |
|||
TERMUX_PKG_NO_DEVELSPLIT=yes |
|||
|
|||
TL_ROOT=$TERMUX_PREFIX/opt/texlive/${TERMUX_PKG_VERSION:0:4} |
|||
TL_BINDIR=$TL_ROOT/bin/custom |
|||
|
|||
TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" |
|||
AR=ar \ |
|||
RANLIB=ranlib \ |
|||
BUILDAR=ar \ |
|||
BUILDRANLIB=ranlib \ |
|||
ac_cv_c_bigendian=no \ |
|||
--prefix=$TL_ROOT \ |
|||
--bindir=$TL_BINDIR \ |
|||
--datarootdir=$TL_ROOT \ |
|||
--datadir=$TERMUX_PREFIX/share \ |
|||
--mandir=$TERMUX_PREFIX/share/man \ |
|||
--docdir=$TERMUX_PREFIX/share/doc \ |
|||
--infodir=$TERMUX_PREFIX/share/info \ |
|||
--libdir=$TERMUX_PREFIX/lib \ |
|||
--includedir=$TERMUX_PREFIX/include \ |
|||
--build=$TERMUX_BUILD_TUPLE \ |
|||
--enable-ttfdump=no \ |
|||
--enable-makeindexk=yes \ |
|||
--enable-makejvf=no \ |
|||
--enable-mendexk=no \ |
|||
--enable-musixtnt=no \ |
|||
--enable-ps2pk=no \ |
|||
--enable-seetexk=no \ |
|||
--enable-gregorio=no \ |
|||
--disable-native-texlive-build \ |
|||
--disable-bibtexu \ |
|||
--disable-dvisvgm \ |
|||
--disable-dialog \ |
|||
--disable-psutils \ |
|||
--disable-multiplatform \ |
|||
--disable-t1utils \ |
|||
--enable-luatex \ |
|||
--disable-luajittex \ |
|||
--disable-mflua \ |
|||
--disable-mfluajit \ |
|||
--disable-xz \ |
|||
--disable-pmx \ |
|||
--without-texinfo \ |
|||
--without-xdvipdfmx \ |
|||
--without-texi2html \ |
|||
--with-system-cairo \ |
|||
--with-system-graphite2 \ |
|||
--with-system-harfbuzz \ |
|||
--with-system-gd \ |
|||
--with-system-gmp \ |
|||
--with-system-icu \ |
|||
--with-system-lua \ |
|||
--with-system-mpfr \ |
|||
--with-system-poppler \ |
|||
--with-system-zlib \ |
|||
--with-system-xpdf \ |
|||
--with-system-lua \ |
|||
--without-x \ |
|||
--with-banner-add=/Termux" |
|||
|
|||
TERMUX_PKG_RM_AFTER_INSTALL="opt/texlive/${TERMUX_PKG_VERSION:0:4}/texmf-dist" |
|||
|
|||
termux_step_pre_configure() { |
|||
# When building against libicu 59.1 or later we need c++11: |
|||
CXXFLAGS+=" -std=c++11" |
|||
} |
|||
|
|||
termux_step_post_make_install () { |
|||
mkdir -p $TERMUX_PREFIX/etc/profile.d/ |
|||
echo "export PATH=\$PATH:$TL_BINDIR" > $TERMUX_PREFIX/etc/profile.d/texlive.sh |
|||
echo "export TMPDIR=$TERMUX_PREFIX/tmp/" >> $TERMUX_PREFIX/etc/profile.d/texlive.sh |
|||
chmod 0744 $TERMUX_PREFIX/etc/profile.d/texlive.sh |
|||
mv $TL_BINDIR/tlmgr $TL_BINDIR/tlmgr.ln |
|||
echo "#!$TERMUX_PREFIX/bin/sh" > $TL_BINDIR/tlmgr |
|||
echo "termux-fix-shebang $TL_ROOT/texmf-dist/scripts/texlive/tlmgr.pl" >> $TL_BINDIR/tlmgr |
|||
echo "sed -E -i '"'s@`/bin/sh@`'$TERMUX_PREFIX"/bin/sh@g' ${TL_ROOT}/tlpkg/TeXLive/TLUtils.pm" >> $TL_BINDIR/tlmgr |
|||
echo 'tlmgr.ln "$@"' >> $TL_BINDIR/tlmgr |
|||
chmod 0744 $TL_BINDIR/tlmgr |
|||
} |
|||
|
|||
termux_step_create_debscripts () { |
|||
# Clean texlive's folder if needed (run on fresh install) |
|||
echo "if [ ! -f $TERMUX_PREFIX/opt/texlive/2016/install-tl -a ! -f $TERMUX_PREFIX/opt/texlive/2017/install-tl ]; then exit 0; else echo 'Removing residual files from old version of TeX Live for Termux'; fi" > preinst |
|||
echo "rm -rf $TERMUX_PREFIX/etc/profile.d/texlive.sh" >> preinst |
|||
echo "rm -rf $TERMUX_PREFIX/opt/texlive/2016" |
|||
# Let's not delete the previous texmf-dist so that people who have installed a full distribution won't need to download everything again |
|||
echo "rm -rf $TERMUX_PREFIX/opt/texlive/2017/!(texmf-dist)" >> preinst |
|||
echo "exit 0" >> preinst |
|||
chmod 0755 preinst |
|||
} |
@ -0,0 +1,5 @@ |
|||
TERMUX_SUBPKG_INCLUDE="include lib/pkgconfig" |
|||
TERMUX_SUBPKG_DESCRIPTION="Development files for texlive" |
|||
TERMUX_SUBPKG_DEPENDS="texlive-bin" |
|||
TERMUX_SUBPKG_REPLACES="texlive-dev" |
|||
TERMUX_SUBPKG_CONFLICTS="texlive-dev" |
@ -0,0 +1,19 @@ |
|||
--- src/texlive-20170524-extra/tlpkg/TeXLive/TLConfig.pm 2016-04-21 19:08:52.000000000 +0000
|
|||
+++ ../TLConfig.pm 2017-05-30 13:18:48.030712610 +0000
|
|||
@@ -165,13 +165,13 @@
|
|||
[ "b", 1, "postcode", |
|||
"Run postinst code blobs" ], |
|||
"sys_bin" => |
|||
- [ "p", "/usr/local/bin", "sys_bin",
|
|||
+ [ "p", "@TERMUX_PREFIX@/bin", "sys_bin",
|
|||
"Destination for symlinks for binaries" ], |
|||
"sys_info" => |
|||
- [ "p", "/usr/local/share/info", "sys_info",
|
|||
+ [ "p", "@TERMUX_PREFIX@/share/info", "sys_info",
|
|||
"Destination for symlinks for info docs" ], |
|||
"sys_man" => |
|||
- [ "p", "/usr/local/share/man", "sys_man",
|
|||
+ [ "p", "@TERMUX_PREFIX@/share/man", "sys_man",
|
|||
"Destination for symlinks for man pages" ], |
|||
"w32_multi_user" => |
|||
[ "b", 1, "multiuser", |
@ -0,0 +1,11 @@ |
|||
--- src/texlive-20170524-extra/tlpkg/TeXLive/TLUtils.pm 2016-05-16 00:33:33.000000000 +0000
|
|||
+++ ../TLUtils.pm 2017-05-30 14:09:38.505466432 +0000
|
|||
@@ -228,7 +228,7 @@
|
|||
# We cannot rely on #! in config.guess but have to call /bin/sh |
|||
# explicitly because sometimes the 'noexec' flag is set in |
|||
# /etc/fstab for ISO9660 file systems. |
|||
- chomp (my $guessed_platform = `/bin/sh '$config_guess'`);
|
|||
+ chomp (my $guessed_platform = `@TERMUX_PREFIX@/bin/sh '$config_guess'`);
|
|||
|
|||
# For example, if the disc or reader has hardware problems. |
|||
die "$0: could not run $config_guess, cannot proceed, sorry" |
@ -0,0 +1,12 @@ |
|||
We've disabled luajittex when building the binaries, so lets prevent texlive from trying to generate formats for it. |
|||
--- src/texlive-20170524-texmf/texmf-dist/web2c/fmtutil.cnf 2016-05-15 01:17:09.000000000 +0000
|
|||
+++ ../fmtutil.cnf 2017-05-31 05:20:32.516130878 +0000
|
|||
@@ -82,7 +82,7 @@
|
|||
# from luatex: |
|||
luatex luatex language.def,language.dat.lua luatex.ini |
|||
dviluatex luatex language.def,language.dat.lua dviluatex.ini |
|||
-luajittex luajittex language.def,language.dat.lua luatex.ini
|
|||
+#! luajittex luajittex language.def,language.dat.lua luatex.ini
|
|||
# |
|||
# from metafont: |
|||
mf mf-nowin - -translate-file=cp227.tcx mf.ini |
@ -0,0 +1,5 @@ |
|||
tlpkg/installer/config.guess |
|||
tlpkg/gpg/pubring.gpg |
|||
tlpkg/gpg/random_seed |
|||
tlpkg/gpg/secring.gpg |
|||
tlpkg/gpg/trustdb.gpg |
@ -1,65 +0,0 @@ |
|||
|
|||
TL_VERSION=2017 |
|||
TL_ROOT=$PREFIX/opt/texlive |
|||
|
|||
export TMPDIR=$PREFIX/tmp/ |
|||
mkdir -p $TMPDIR/termux-tl-installer |
|||
cd $TMPDIR/termux-tl-installer |
|||
|
|||
wget ftp://ftp.tug.org/texlive/historic/$TL_VERSION/install-tl-unx.tar.gz -O install-tl-unx.tar.gz |
|||
tar xzfv install-tl-unx.tar.gz > flist |
|||
|
|||
cd $(head -1 flist) |
|||
|
|||
#patch install-tl |
|||
sed -E -i "s@\`/bin/sh@\`$PREFIX/bin/sh@g" tlpkg/TeXLive/TLUtils.pm |
|||
|
|||
cat > texlive_inst.profile << XXHEREXX |
|||
selected_scheme scheme-basic |
|||
TEXDIR $TL_ROOT/$TL_VERSION |
|||
TEXMFCONFIG ~/.texlive$TL_VERSION/texmf-config |
|||
TEXMFHOME ~/texmf |
|||
TEXMFLOCAL $TL_ROOT/texmf-local |
|||
TEXMFSYSCONFIG $TL_ROOT/$TL_VERSION/texmf-config |
|||
TEXMFSYSVAR $TL_ROOT/$TL_VERSION/texmf-var |
|||
TEXMFVAR ~/.texlive$TL_VERSION/texmf-var |
|||
collection-basic 1 |
|||
collection-latex 1 |
|||
collection-luatex 1 |
|||
instopt_adjustpath 0 |
|||
instopt_adjustrepo 1 |
|||
instopt_letter 0 |
|||
instopt_portable 0 |
|||
instopt_write18_restricted 1 |
|||
tlpdbopt_autobackup 1 |
|||
tlpdbopt_backupdir tlpkg/backups |
|||
tlpdbopt_create_formats 1 |
|||
tlpdbopt_desktop_integration 0 |
|||
tlpdbopt_file_assocs 0 |
|||
tlpdbopt_generate_updmap 0 |
|||
tlpdbopt_install_docfiles 0 |
|||
tlpdbopt_install_srcfiles 0 |
|||
tlpdbopt_post_code 1 |
|||
tlpdbopt_sys_bin $PREFIX/bin |
|||
tlpdbopt_sys_info $PREFIX/share/info |
|||
tlpdbopt_sys_man $PREFIX/share/man |
|||
tlpdbopt_w32_multi_user 0 |
|||
XXHEREXX |
|||
|
|||
#start installer with a profile and premade binaries |
|||
perl ./install-tl --custom-bin=$TL_ROOT/${TL_VERSION}/bin/pkg --profile texlive_inst.profile |
|||
|
|||
#fix tlpkg |
|||
sed -E -i "s@\`/bin/sh@\`$PREFIX/bin/sh@g" ${TL_ROOT}/${TL_VERSION}/tlpkg/TeXLive/TLUtils.pm |
|||
|
|||
#fix shebangs |
|||
sed -i -E "1 s@^#\!(.*)/[sx]?bin/(.*)@#\!$PREFIX/bin/\2@" ${TL_ROOT}/${TL_VERSION}/texmf-dist/web2c/* |
|||
sed -i -E "1 s@^#\!(.*)/[sx]?bin/(.*)@#\!$PREFIX/bin/\2@" ${TL_ROOT}/${TL_VERSION}/bin/custom/* |
|||
|
|||
#source the environment |
|||
. $PREFIX/etc/profile.d/texlive.sh |
|||
|
|||
#setup links |
|||
texlinks |
|||
|
|||
rm -rf $TMPDIR/termux-tl-installer |
@ -0,0 +1,36 @@ |
|||
tlpkg/tlpostcode/dvipdfmx.pl |
|||
tlpkg/translations/cs.po |
|||
tlpkg/translations/de.po |
|||
tlpkg/translations/es.po |
|||
tlpkg/translations/fr.po |
|||
tlpkg/translations/it.po |
|||
tlpkg/translations/ja.po |
|||
tlpkg/translations/messages.pot |
|||
tlpkg/translations/nl.po |
|||
tlpkg/translations/pl.po |
|||
tlpkg/translations/pt_BR.po |
|||
tlpkg/translations/ru.po |
|||
tlpkg/translations/sk.po |
|||
tlpkg/translations/sl.po |
|||
tlpkg/translations/sr.po |
|||
tlpkg/translations/translators |
|||
tlpkg/translations/uk.po |
|||
tlpkg/translations/vi.po |
|||
tlpkg/translations/zh_CN.po |
|||
tlpkg/translations/zh_TW.po |
|||
LICENSE.CTAN |
|||
LICENSE.TL |
|||
release-texlive.txt |
|||
tlpkg/TeXLive/TLConfFile.pm |
|||
tlpkg/TeXLive/TLConfig.pm |
|||
tlpkg/TeXLive/TLCrypto.pm |
|||
tlpkg/TeXLive/TLDownload.pm |
|||
tlpkg/TeXLive/TLPDB.pm |
|||
tlpkg/TeXLive/TLPOBJ.pm |
|||
tlpkg/TeXLive/TLPSRC.pm |
|||
tlpkg/TeXLive/TLPaper.pm |
|||
tlpkg/TeXLive/TLTREE.pm |
|||
tlpkg/TeXLive/TLUtils.pm |
|||
tlpkg/TeXLive/TLWinGoo.pm |
|||
tlpkg/TeXLive/TeXCatalogue.pm |
|||
tlpkg/TeXLive/trans.pl |
File diff suppressed because it is too large
File diff suppressed because it is too large
Loading…
Reference in new issue