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
8 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