Package Details: texlive-most-doc 20200622-1

Git Clone URL: https://aur.archlinux.org/texlive-most-doc.git (read-only, click to copy)
Package Base: texlive-most-doc
Description: Most TeXLive documentation
Upstream URL: http://tug.org/texlive/
Licenses: unknown
Conflicts: texlive-tlpdb
Submitter: solnce
Maintainer: Sunday
Last Packager: Sunday
Votes: 11
Popularity: 0.33
First Submitted: 2017-09-20 14:28
Last Updated: 2020-06-22 15:03

Dependencies (2)

Required by (0)

Sources (0)

Pinned Comments

Sunday commented on 2019-10-23 10:28

As this package is quite big (currently around 2.4GB uncompressed) I recommend changing your makepkg.conf settings to use a low compression level and multi-threaded compression by setting either

COMPRESSXZ=(xz -T 0 -c -z -0 -)

or even faster

COMPRESSZST=(zstd -q -c -z -1 -T0 -)
PKGEXT='.pkg.tar.zst'

Latest Comments

1 2 Next › Last »

ccorn commented on 2020-08-21 00:38

@velleto: Thanks for the suggestion. I have tried it, and it surely looks nice. But then

  • there is no longer a summary with the rsync speedup (which is important for the justification of the rsync-based approach)
  • the *-build.log now has twice the size and contains lots of CRs
  • there is no longer the possibility to glimpse a curious package name, e.g. multienum, causing me to launch texdoc multienum while awaiting completion

All these are matters of taste, but I have reverted my checkout to -v again.

velleto commented on 2020-08-20 11:29

Could I suggest changing the rsync flag -v to -h --info=progress2 --no-i-r?

The -h --info=progress2 will give (human readable) progress of the entire transfer (not for individual files), and the --no-i-r forces rsync to calculate the entire transfer queue before transfer, ensuring that the printed statistics are accurate. (When incrementally recursing, rsync doesn't know how many files are left to transfer at any given time and the progress indicator tends to yo-yo up to 100%, and then back down to, say, 20% when rsync realises that there are more files to transfer).

With such a large download, I find it more useful to see statistics of the entire transfer progress, rather than seeing hundreds of file names being scrolled across my screen.

A current workaround (other than editing the PKGBUILD manually) would be to send the SIGVTALRM signal to the rsync process (crudely send to all: kill -s SIGVTALRM $(pgrep rsync)) to generate a one-time overall progress report after the current file has finished transferring.

Thank you

croyleje commented on 2020-06-20 16:39

I agree this should not flag an error from what I can tell it is using the the PKGBUILD version and comparing it to the build from texlive so each time texlive has a new release the PKGBUILD would have to be updated. There was a new release just a few days ago I think that is what is causing the issue and by changing the PKGBUILD version it should be good until the next texlive release. Really just wanted to have a comment here in case anyone had an issue and noticed the error. It will still build and install fine but the error will persist until the PKGBUILD is updated.

Sunday commented on 2020-06-20 12:01

AUR helpers really should not flag this behaviour as error, because the PKGBUILD pulls the most recent documentation automatically while it is built. This means the current date is the correct version. I can not update this PKGBUILD every day and it would not be easy to provide a "stable" package on a periodic basis without providing my own mirror of the documentation.

croyleje commented on 2020-06-20 00:26

package is installing textlive-most-doc 20200618-1 not 20191023-1 aur helpers flag this as an error local newer then AUR during update

Sunday commented on 2019-10-23 10:28

As this package is quite big (currently around 2.4GB uncompressed) I recommend changing your makepkg.conf settings to use a low compression level and multi-threaded compression by setting either

COMPRESSXZ=(xz -T 0 -c -z -0 -)

or even faster

COMPRESSZST=(zstd -q -c -z -1 -T0 -)
PKGEXT='.pkg.tar.zst'

Sunday commented on 2019-10-23 10:27

@ccorn thanks a lot for the patches, I applied both to the PKGBUILD.

ccorn commented on 2019-10-17 14:30

I have made some modifications:

First: Better integration with other texlive archlinux packages:

  • Remove texlive-most-doc.install: Obsoleted by: texlive-core /usr/share/libalpm/hooks/mktexlsr.hook
  • Change optdepends on texlive-bin to texlive-core for the mktexlsr.hook and (some of) the documented packages
  • Add conflicts=(texlive-tlpdb)
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,9 +9,9 @@ pkgdesc="Most TeXLive documentation"
 url="http://tug.org/texlive/"
 arch=('any')
 license=('unknown')
-optdepends=('texlive-bin: The texdoc program and some more documentation')
+optdepends=('texlive-core: texdoc, mktexlsr hook, and many packages documented here')
 makedepends=('rsync')
-install='texlive-most-doc.install'
+conflicts=(texlive-tlpdb)
 options=('!strip'  '!purge')

 pkgver() {

Second: Use rsync --link-dest to speed up updates if a previous package version has been installed. Thus, passing e.g. -I texlive-most-doc-PREVIOUSVERSION-1-any.pkg.tar.xz to makechrootpkg or extra-x86_64-build -- shortens rsync transfers by a factor of roughly 100.

I have also noticed that there are man and info subdirs, but moving those to standard locations outside the texmf-dist tree would cause conflicts with other packages, so I have chosen to simply --exclude them.

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -19,10 +19,33 @@ pkgver() {
 }

 build() {
-  mkdir -p "$srcdir/usr/share/texmf-dist"
-  mkdir -p "$srcdir/usr/share/tlpkg"
-  rsync -av --no-o --no-g --chmod=D755,F644 rsync://tug.org/texlive/Contents/live/texmf-dist/doc "$srcdir/usr/share/texmf-dist/"
-  rsync -av --no-o --no-g --chmod=D755,F644 rsync://tug.org/texlive/Contents/live/tlpkg/texlive.tlpdb "$srcdir/usr/share/tlpkg/"
+  _texmfdoc=/usr/share/texmf-dist/doc
+  _olddoc=""
+  if test -d "$_texmfdoc"; then
+    _olddoc="--link-dest=$_texmfdoc"
+  else
+    cat >&2 <<EOT
+******************************************************************************
+Directory $_texmfdoc not found.
+This means that rsync'ing the TeXLive documentation tree will download
+several gigabytes of documentation.
+This could be made much more efficient by having a previous version of
+package $pkgname installed.
+******************************************************************************
+EOT
+  fi
+  mkdir -p "$srcdir$_texmfdoc"
+  # Excluding texmf-dist/doc/{man,info} because their contents are mostly
+  # provided by other packages in standard locations outside texmf-dist
+  rsync -av --no-o --no-g --chmod=D755,F644 $_olddoc --del --exclude=/man --exclude=/info rsync://tug.org/texlive/Contents/live/texmf-dist/doc/ "$srcdir$_texmfdoc/"
+
+  _tlpkg=/usr/share/tlpkg
+  _oldtlpkg=""
+  if test -d "$_tlpkg"; then
+    _oldtlpkg="--link-dest=$_tlpkg"
+  fi
+  mkdir -p "$srcdir$_tlpkg"
+  rsync -av --no-o --no-g --chmod=D755,F644 $_oldtlpkg --del rsync://tug.org/texlive/Contents/live/tlpkg/texlive.tlpdb "$srcdir$_tlpkg/texlive.tlpdb"
 }

 package() {

Sunday commented on 2019-09-23 08:26

I realize the problems, yet it fits my needs. Thanks for maintaining this up till now, I will take over.

solnce commented on 2019-09-19 19:46

@Sunday Thanks for the input. I will upload the new version shortly.

Nevertheless, this package still has systematic issues. For example, it is not in sync with the Arch texlive-full package, which gets updated quite rarely.

I personally switched to the manual texlive-installer, which is more inline with Arch's bleeding-edge concept, and consistent with itself. If some package requires some texlive package from the repos, I would recommend generating a meta-package.

Since I don't use this anymore, I will disown the package after the update. Feel free to take over from here.

EDIT: Also, since I don't use this anymore, I cannot / will not test the new version.