From 31a8240793afd6a03fd780982144e6de42597458 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Tue, 6 Sep 2016 23:39:52 +0200 Subject: context-mkiv: add preliminary WIP PKGBUILD and env wrapper --- context-mkiv/PKGBUILD | 77 +++++++++++++++++++++++++++++++++++++++ context-mkiv/context-setup-env.sh | 16 ++++++++ 2 files changed, 93 insertions(+) create mode 100644 context-mkiv/PKGBUILD create mode 100644 context-mkiv/context-setup-env.sh (limited to 'context-mkiv') diff --git a/context-mkiv/PKGBUILD b/context-mkiv/PKGBUILD new file mode 100644 index 0000000..0d8d2a9 --- /dev/null +++ b/context-mkiv/PKGBUILD @@ -0,0 +1,77 @@ +# Context MkIV additional distribution files +# Maintainer: Philipp Gesang +pkgname=context-mkiv +pkgver=20160905_1028 +pkgrel=1 +pkgdesc="The ConTeXt MkIV typesetting system; additional files" +arch=(any) +url="" +license=('GPL') +groups=() +depends=(luatex-svn context-git) +## mtxrun is part of Context; to execute it we need Luatex as the interpreter +makedepends=(rsync luatex-svn context-git) +conflicts=(context-minimals-git) +source=(context-setup-env.sh) +sha512sums=('17d82d422873abd4eac79660e4cf0eefd8cba7fca3fae0eaad832911a5066385ba18625ccc61638da4c91fd180c4bcf21a6cd7664cdb4248ef530fe6cc2c64b0') + +# binaries and scripts installed with deps +readonly _luatex=/usr/bin/texlua +readonly _cntroot=/usr/share/context-git +readonly _mtxpath=./texmf-context/scripts/context/lua +readonly _mtxrun=${_mtxpath}/mtxrun.lua + +_mtx-script () { + local scr="mtx-$1.lua" + shift + ${_luatex} ${_mtxrun} --script "${_mtxpath}/${scr}" $@ +} + +pkgver() { + # no colon, hyphen, or whitespace permitted + cd context + _mtx-script context --version 2>/dev/null \ + |egrep "^mtx-context *| current version: .*$" \ + |sed -n 's/^.*: \(....\)\.\(..\)\.\(..\) \(..\):\(..\)$/\1\2\3_\4\5/p' + exit 42 +} + +prepare() { + [[ ! -d context ]] && mkdir context + cd context + if [[ -L ./texmf-context ]]; then + msg "Repo symlink already present" + else + ln -s "${_cntroot}" ./texmf-context + fi + _mtx-script update \ + --force --update --context=beta --platform=linux \ + --engine=luatex --modules=all --texroot=. +} + +build() { + cd context + ${_luatex} ${_mtxrun} --generate +} + +package() { + rm -rf "${pkgdir}"/* + local texdst="${pkgdir}/usr/share/texmf" + local libdst="${pkgdir}/usr/lib" + local execdst="${pkgdir}/usr/bin" + local subdirs=( texmf texmf-fonts texmf-modules ) + cd context + install -dm755 "${texdst}" + for dir in ${subdirs[@]}; do + cp -a "${dir}" "${texdst}" + done + # install symlink to Context git + ln -s /usr/share/context-git "${texdst}/texmf-context" + # mktexlsr is the only script we take as-is + install -dm755 "${execdst}" + install -Dm755 texmf-linux/bin/mktexlsr "${execdst}" + install -dm755 "${libdst}" + install -Dm644 "${srcdir}/context-setup-env.sh" "${libdst}" +} + +# vim:et:ft=sh:sw=2:ts=8 diff --git a/context-mkiv/context-setup-env.sh b/context-mkiv/context-setup-env.sh new file mode 100644 index 0000000..99a8def --- /dev/null +++ b/context-mkiv/context-setup-env.sh @@ -0,0 +1,16 @@ +# Context executable wrapper +declare -r context_root=/usr/share/texmf +declare font_dirs="" +if [[ -d "${HOME}/.fonts" ]]; then + declare font_dirs+="${HOME}/.fonts" +fi +if [[ -d /usr/share/fonts ]]; then + [[ -n "${font_dirs}" ]] && declare font_dirs+=";" + declare font_dirs+=/usr/share/fonts +fi + +declare -x OSFONTDIR="${font_dirs:-}" +declare -x TEXMFCACHE=${HOME}/.texmf/texmf-cache +declare -x TEXMFOS=${context_root}/texmf-context + +# vim:et:ft=sh:sw=2:ts=8 -- cgit v1.2.3