PKGBUILD 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. # Maintainer (Arch): Firmicus <firmicus āt gmx dōt net>
  2. # Maintainer (Arch): Rémy Oudompheng <remy@archlinux.org>
  3. # Contributor (Hyperbola): André Silva <emulatorman@hyperbola.info>
  4. # Maintainer: Michał Masłowski <mtjm@mtjm.eu>
  5. # Contributor: Isaac David <isacdaavid@at@isacdaavid@dot@info>
  6. # parabola changes and rationale:
  7. # - remvoe nonfree add-on packages
  8. _pkgname=texlive-latexextra-libre
  9. pkgname=texlive-latexextra
  10. pkgver=2020.55418
  11. _revnr=${pkgver#2020.}
  12. pkgrel=1
  13. pkgrel+=.par1
  14. pkgdesc="TeX Live - Large collection of add-on packages for LaTeX"
  15. pkgdesc+=", without nonfree add-on packages"
  16. license=('GPL')
  17. arch=(any)
  18. depends=('texlive-core'
  19. 'perl-file-which' # for pdfannotextractor
  20. )
  21. optdepends=(
  22. 'python2-pygments: for pygmentex'
  23. 'texlive-genericextra: to use the calctab package'
  24. 'texlive-pictures: to use the package overpic'
  25. 'java-environment: to use pdfannotextractor'
  26. )
  27. groups=('texlive-most')
  28. url='http://tug.org/texlive/'
  29. mksource=("https://sources.archlinux.org/other/texlive/$pkgname-$pkgver-src.zip")
  30. mksha256sums=('a2ee21a2a6f00def6bec620a85bb8116de97a16dcd98adaa308eb455fe0e7fcb')
  31. noextract=("$pkgname-$pkgver-src.zip")
  32. source=("https://repo.parabola.nu/other/$_pkgname/$_pkgname-$pkgver-src.tar.xz"{,.sig}
  33. "$pkgname.maps"
  34. "$pkgname.fmts")
  35. options=('!emptydirs')
  36. sha256sums=('17bdd91f456643f112e8c9aec709189eafbeb106a239dff977713c879cca2000'
  37. 'SKIP'
  38. 'd53750a03a52472a1c7c5ba5142959ba382a5d69215471691c0b12c3663950ce'
  39. '828a9cf082b9a89a4aa0eec402a9c32b8056bb873e4a5dc92ce60aec2ea69435')
  40. validpgpkeys=('1B8C5E87702444D3D825CC8086ED62396D5DBA58' # Omar Vega Ramos
  41. '38D33EF29A7691134357648733466E12EC7BA943' # Isaac David
  42. '3954A7AB837D0EA9CFA9798925DB7D9B5A8D4B40') # bill-auger
  43. mksource() {
  44. mkdir $pkgname-$pkgver
  45. pushd $pkgname-$pkgver
  46. bsdtar xfv ../$pkgname-$pkgver-src.zip
  47. # remove nonfree packages
  48. # no specific free license
  49. rm -v {authoraftertitle,clock,fnpara}.tar.xz
  50. # nonfree license (CC BY-NC)
  51. rm -v axessibility.tar.xz
  52. popd
  53. }
  54. prepare() {
  55. cd $srcdir/$pkgname-$pkgver
  56. echo -n " --> extracting all packages... "
  57. for p in *.tar.xz; do
  58. bsdtar -xf $p
  59. done
  60. rm -rf {tlpkg,doc,source} || true
  61. # remove nonfree packages references from package list
  62. sed -ri '/^(axessibility|authoraftertitle|fnpara) /d' CONTENTS
  63. }
  64. package() {
  65. cd $srcdir/$pkgname-$pkgver
  66. install -m755 -d "$pkgdir"/var/lib/texmf/arch/installedpkgs
  67. sed -i '/^#/d' CONTENTS
  68. install -m644 CONTENTS "$pkgdir"/var/lib/texmf/arch/installedpkgs/${pkgname}_${_revnr}.pkgs
  69. install -m644 "$srcdir"/$pkgname.maps "$pkgdir"/var/lib/texmf/arch/installedpkgs/
  70. install -m755 -d "$pkgdir"/usr/share
  71. wanteddirs=$(for d in *; do test -d $d && [[ $d != texmf* ]] && echo $d; done) || true
  72. for dir in $wanteddirs; do
  73. find $dir -type d -exec install -d -m755 "$pkgdir"/usr/share/texmf-dist/'{}' \;
  74. find $dir -type f -exec install -m644 '{}' "$pkgdir"/usr/share/texmf-dist/'{}' \;
  75. done
  76. if [[ -d texmf-dist ]]; then
  77. find texmf-dist -type d -exec install -d -m755 "$pkgdir"/usr/share/'{}' \;
  78. find texmf-dist -type f -exec install -m644 '{}' "$pkgdir"/usr/share/'{}' \;
  79. fi
  80. if [[ -d "$pkgdir"/usr/share/texmf-dist/scripts ]]; then
  81. find "$pkgdir"/usr/share/texmf-dist/scripts -type f -exec chmod a+x '{}' \;
  82. fi
  83. #add symlinks that were in texlive-bin:
  84. _linked_scripts="
  85. authorindex/authorindex
  86. exceltex/exceltex
  87. glossaries/makeglossaries
  88. glossaries/makeglossaries-lite.lua
  89. l3build/l3build.lua
  90. makedtx/makedtx.pl
  91. pax/pdfannotextractor.pl
  92. perltex/perltex.pl
  93. pygmentex/pygmentex.py
  94. splitindex/splitindex.pl
  95. svn-multi/svn-multi.pl
  96. vpe/vpe.pl
  97. webquiz/webquiz.py
  98. wordcount/wordcount.sh
  99. yplan/yplan
  100. "
  101. install -m755 -d "$pkgdir"/usr/bin
  102. for _script in ${_linked_scripts}; do
  103. _scriptbase=$(basename $_script)
  104. _scriptbase=${_scriptbase%.*}
  105. ln -s /usr/share/texmf-dist/scripts/${_script} "${pkgdir}/usr/bin/${_scriptbase}"
  106. done
  107. rm "$pkgdir"/usr/share/texmf-dist/scripts/shipunov/biokey2html.bat || true
  108. }