Package Details: tllocalmgr-git r84.bbd8488-5

Git Clone URL: (read-only, click to copy)
Package Base: tllocalmgr-git
Description: A shell and command-line utility to manage TeXLive on Arch Linux
Upstream URL:
Keywords: perl texlive tlmgr
Licenses: GPL
Conflicts: texlive-localmanager, texlive-localmanager-git
Provides: texlive-localmanager
Submitter: hv15
Maintainer: hv15
Last Packager: hv15
Votes: 17
Popularity: 0.90
First Submitted: 2020-02-02 21:08 (UTC)
Last Updated: 2022-04-30 11:02 (UTC)

Latest Comments

hv15 commented on 2022-04-30 11:33 (UTC)

@croyleje, yup totally fine so long as you only update to 2022, otherwise how the CTAN packages are installed will conflict with TL2021/2022.

@cphyc, thanks, updated!

croyleje commented on 2022-04-29 22:11 (UTC)

I had the same issue and have no issue patching the files just wanted to know if I build and install the package locally will this cause an issue later down the road when package is updated.

cphyc commented on 2022-04-29 09:55 (UTC) (edited on 2022-04-29 10:00 (UTC) by cphyc)

With the recent update of texlive, the package is preventing the upgrade from happening with the following error:

$ sudo pacman -Syu
:: Synchronising package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing texlive-core (2022.63035-1) breaks dependency 'texlive-core<2022' required by tllocalmgr-git

This can be fixed with the following patch

diff --git a/.SRCINFO b/.SRCINFO
index 462f583..12d452a 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -7,7 +7,7 @@ pkgbase = tllocalmgr-git
    license = GPL
    makedepends = git
    depends = texlive-core>=2016
-   depends = texlive-core<2022
+   depends = texlive-core<2023
    depends = perl-libwww
    depends = perl-term-shellui
    depends = perl-term-readline-gnu
@@ -17,7 +17,7 @@ pkgbase = tllocalmgr-git
    conflicts = texlive-localmanager
    conflicts = texlive-localmanager-git
    source = texlive-localmanager::git+
-   source = tllocalmgr-2021.patch
+   source = tllocalmgr-2022.patch
    source = tllocalmgr-enhance.patch
    source = tllocalmgr-fix-texlive-local-match.patch
    source = tllocalmgr-pkgs-nicer-error.patch
diff --git a/PKGBUILD b/PKGBUILD
index 2164f9a..12c48f0 100644
@@ -16,7 +16,7 @@ provides=("texlive-localmanager=$pkgver")
-         'texlive-core<2022'
+         'texlive-core<2023'
@@ -25,13 +25,13 @@ depends=('texlive-core>=2016'

-        'tllocalmgr-2021.patch'
+        'tllocalmgr-2022.patch'
-            'cd12f1927fa9d950855aab91b30039d0cbb328a8c7899382286d3ace16bb6a3b'
+            '474851828cbe68564109d16abb10104e1cbbd2e6970161fd992fb082e6740ee8'
@@ -48,8 +48,8 @@ pkgver() {
 prepare() {
   cd "$_pkgname"

-  # update to handle texlive-2021 releases
-  patch -p1 < "$srcdir/tllocalmgr-2021.patch"
+  # update to handle texlive-2022 releases
+  patch -p1 < "$srcdir/tllocalmgr-2022.patch"

   # enhances the tllocalmgr script a bit
   # thanks: @sharethewisdom and @cobaltspace
diff --git a/tllocalmgr-2022.patch b/tllocalmgr-2022.patch
index 35a52c1..a7b64cf 100644
--- a/tllocalmgr-2022.patch
+++ b/tllocalmgr-2022.patch
@@ -7,7 +7,7 @@ index e27f70b..b6e5101 100644
  # the year of our release, will be used in the location of the
  # network packages, and in menu names, and other places.
 -$ReleaseYear = 2019;
-+$ReleaseYear = 2021;
++$ReleaseYear = 2022;

  # users can upgrade from this year to the current year; might be the
  # same as the release year, or any number of releases earlier.

and renaming tllocalmgr-2021.patch to tllocalmgr-2022.patch.

gustaphe commented on 2021-10-27 07:45 (UTC)

@hv15 Ah, so it's just a case of a misleading error message?

Error: command install is not defined

should have probably been

No package "extdash" found

Thanks, problem solved!

hv15 commented on 2021-10-26 18:46 (UTC) (edited on 2021-10-26 18:47 (UTC) by hv15)

@gustaphe I pushed a fix for this; suffice it to say the 'extdash' sty is part of the 'ncctools' CTAN package. You can install it on ArchLinux through the 'texlive-latexextra' package.

gustaphe commented on 2021-10-26 17:48 (UTC)

Trying to install a package (extdash):

Initializing ...
Cannot open /var/lib/texmf/arch/installedpkgs/texlive-most-doc_20211026-1.pkgs!
-- Likely the package texlive-most-doc does not create the 'pkgs' file.
Use of uninitialized value in numeric lt (<) at /usr/bin/tllocalmgr line 234.
Argument "20211026-1" isn't numeric in numeric lt (<) at /usr/bin/tllocalmgr line 234.
Error: command install is not defined

I've seen this before, it looks like it's when some package has a version that's not just a number.

I don't know Perl.

hongy19 commented on 2021-08-12 08:52 (UTC)

@hv15 thanks! the fix works.

hv15 commented on 2021-08-12 08:16 (UTC)

@shackra what CTAN package were you trying to install/build?

hv15 commented on 2021-08-12 08:14 (UTC)

@hongy19, fixed!

shackra commented on 2021-08-12 00:09 (UTC)


getting this error

==> Iniciando build()...
Checking if your kit is complete...
Looks good
JSON::PP 2.27300 is not available
 at /usr/share/perl5/core_perl/CPAN/ line 616.

thought that installing perl-json would solve it but is not the case

hongy19 commented on 2021-08-10 03:40 (UTC)

hi all, how to use mirror option? I tried following command but seems it is wrong?

[mylaptop]$ tllocalmgr --mirror Initializing ... Error: command is not defined

schmui commented on 2021-06-30 15:05 (UTC) (edited on 2021-07-05 12:40 (UTC) by schmui)

Currenty, I get an error when building, it seems like the repo is missing?

fatal: repository '' not found

EDIT: Thanks, this seems to have been resolved!

greenbigfrog commented on 2021-05-25 13:14 (UTC)

error: failed to prepare transaction (could not satisfy dependencies)
:: installing texlive-core (2021.58710-2) breaks dependency 'texlive-core<2021' required by tllocalmgr-git

For anyone running into this, remember to just first update the AUR package. hv15 already updated it. I was too asleep too immediately realize what was going on...

hv15 commented on 2021-04-18 08:15 (UTC)

hi @TornaxO7, gensymb is part of the WAS package which is included in texlive-latexextra package. The error message is interesting, I'll have a look at this later.

TornaxO7 commented on 2021-04-17 20:11 (UTC)

If I'm executing install gensymb I'm getting the following error essage: Can't call method "revision" on an undefined value at /usr/bin/tllocalmgr line 421.

hv15 commented on 2021-03-27 13:19 (UTC) (edited on 2021-03-27 13:20 (UTC) by hv15)

Hi @d0lphin, it looks like something has gone wrong upstream, the URL (one of them, as its CDN'd) looks to point to an nearly empty archive: I suggest you contact the DVISVGM devs to look into this.

In the meantime, you can download the archive from, and modify the PKGBUILD at ~/.texlive/texmf-var/arch/builds/dvisvgm to use this archive instead. I suspect that the layout of the archive isn't the same as the tlnet one, you might have to tweak the PKGBUILD somewhat.


scrouthtv commented on 2021-03-27 12:11 (UTC)

Trying to install dvisvgm only gives me an empty package:


That is because dvisvgm installs into usr/bin/dvisvgm and /usr/share/man/man.1/dvisvgm.1.gz.

Is there any way to fix this easily? Thanks in advance.

hv15 commented on 2020-12-02 16:23 (UTC)

@abrac, I've pushed a new revision with a tentative solution to your problem. Basically, the texlive-tlpdb package is missing the 'pkgs' file which tllocalmgr uses to figure out the version of installed CTAN packages through pacman/AUR. If this file is missing, well tllocalmgr dies, but there isn't a very good reason for this. The main danger is that you might try to install some CTAN package which is already installed on the system. Pacman should detect this via an integrity check and cause the install to fail. Given this, I've changed the fatal error into a logged error. HTH

abrac commented on 2020-12-02 13:43 (UTC)

For some reason, when I install texlive-tlpdb, I am no longer able to use tllocalmgr. I get the following error:

$ tllocalmgr
Initializing ...
Cannot open /var/lib/texmf/arch/installedpkgs/texlive-tlpdb_2019-2.pkgs

hv15 commented on 2020-11-06 14:15 (UTC)

@cvelteren, as I said in the answers to @phenethylamin and @h30x, the issue is NOT with tllocalmgr. Packages like microtype.sty are grouped into the distribution packages, they are not installable through tllocalmgr.

Regarding texlive-core re-install, it is possible that the filename database of texlive is not being updated? Maybe it has become corrupt. Is microtype the only package which cannot be found on your system?

The version error seems to be related to git describe not being able to find any tags... do you (or @BigfootLives) have any git configs setup that would cause repos to be cloned shallowly. Doing so would omit any tag information. I am unable to reporduce this on my system, but I vaguely remember having experienced this on a CI system where the repo was being cloned shallowly.

cvelteren commented on 2020-11-06 13:47 (UTC)

@hv15 I have installed (and reinstalled) texlive-core, for some reason it didn't find it. Manual installation ended up fixing it, just here to highlight that it wouldn't work through this package. In addition the package version seems to be missing.

hv15 commented on 2020-11-06 13:39 (UTC)

Hi @cvelteren, microtype.sty is provided as part of the texlive-core package... you should have this already installed if you are using TexLive. Did you manually install TexLive? Could you expand on what it is you are doing exactly?

cvelteren commented on 2020-11-06 13:29 (UTC)

@hv15 microtype I ended up manually copying the sty into the packages to get it to work.

hv15 commented on 2020-11-06 12:29 (UTC)

@cvelteren, what CTAN package are you trying to install?

cvelteren commented on 2020-11-06 11:43 (UTC)

I have the same issue as @phenethylamin and @h30x;

Can't call method "revision" on an undefined value at /usr/bin/tllocalmgr line 418, <STDIN> line 1.

How to fix?

hv15 commented on 2020-10-18 08:46 (UTC)

Hi @BigfootLives, I'm unable to reproduce the problem. From the error message, it looks like the pkgver() function in the PKGBUILD file is empty (?!). Is it possible that you have aliases setup for the git command?

BigfootLives commented on 2020-10-17 22:38 (UTC)

Fails to build with the following error:

==> Starting pkgver()...
fatal: No names found, cannot describe anything.
==> ERROR: pkgver is not allowed to be empty.
==> ERROR: pkgver() generated an invalid version:
error making: tllocalmgr-git

hv15 commented on 2020-09-22 15:03 (UTC)

@h30x it's exactly the same problem as with @phenethylamin, :P

From the CTAN upgreek package: This package is part of the was bundle, meaning that you can't download it via tllocalmgr. Using pacman -Fyx was/upgreek.sty I get:

usr/share/texmf-dist/tex/latex/was/upgreek.sty is owned by extra/texlive-latexextra 2020.55418-1

I hope that helps!

h30x commented on 2020-09-22 14:36 (UTC)

@hv15 I have the same problem as @phenethylamin

Can't call method "revision" on an undefined value at /usr/bin/tllocalmgr line 418.

but with the upgreek package, which is present on CTAN ( I do not understand how I sould fix it.

jfernandz commented on 2020-09-02 11:31 (UTC) (edited on 2020-09-02 12:00 (UTC) by jfernandz)

@hv15 as I've said ... I don't think this is a particular issue only for texlive-most-doc package, for example, in my laptop I haven't got installed texlive-most-doc but I've got a similar message, this time talking about /var/lib/texmf/arch/installedpkgs/texlive-slashbox_1993.05.27-1.pkgs (which is related with texlive-slashbox, and I've got installed the package) but that file is not present in /var/lib/texmf/arch/installedpkgs/ folder.

EDIT: After remove texlive-slashbox from my laptop tllocalmgr worked as expected. So maybe it has something to do with if a particular package includes the *.pkgs file maybe we should report this to texlive-most-doc and texlive-slashbox maintainers.

hv15 commented on 2020-09-02 11:05 (UTC) (edited on 2020-09-02 11:05 (UTC) by hv15)

@jfernandz exactly, I think the maintainer/packager of texlive-most-doc needs to add this to the package. Potentially I could change tllocalmgr to ignore such problems, but it kinda goes against the design... we dealing with a package manager which needs to know the state of packages already installed on the system, otherwise bad things can happen when install/updating packages through it.

jfernandz commented on 2020-09-02 10:03 (UTC)

@hv15 all of them are part of its respective package

hv15 commented on 2020-09-02 09:46 (UTC)

@jfernandz yes I noticed this as well (after installing texlive-most-doc). How are the *.pkgs files generated? Maybe the packager of texlive-most-doc needs to do this?

jfernandz commented on 2020-09-02 08:59 (UTC)

@hv15 in fact texlive-most-doc_20200622-1.pkgs is not in the filesystem, despite indeed I've got installed texlive-most-doc package

jfernandz commented on 2020-09-01 21:52 (UTC)

@hv15 all files in /var/lib/texmf/arch/installedpkgs/ folder have 644 permissions and are owned by root, so I'm not sure this has something to do with a particular texlive package installed by pacman.

hv15 commented on 2020-09-01 17:56 (UTC)

@jfernandz, what are the permissions on texlive-most-doc_20200622-1.pkgs? I don't have/use texlive-most-doc, so I can't confirm where the problem is coming from...

jfernandz commented on 2020-09-01 15:51 (UTC)

When I run tllocalmgr status I get the following error message:

Initializing ...
Cannot open /var/lib/texmf/arch/installedpkgs/texlive-most-doc_20200622-1.pkgs

hv15 commented on 2020-08-13 10:27 (UTC) (edited on 2020-08-13 10:29 (UTC) by hv15)

@phenethylamin, the error message is not very clear, but the lscape package is not present in the TLPDB (locally or upstream it seems). Doing a search through shows that it isn't even listed, except as part of latex-graphics. This seems to be by design as could be understood on the package webpage: The package is part of the latex-graphics bundle, which is one of the collections in the LaTeX ‘required’ set of packages (

@Abello966, could you let us know what package you were trying to install?

phenethylamin commented on 2020-08-13 10:10 (UTC) (edited on 2020-08-13 10:10 (UTC) by phenethylamin)

Same issue with latest version, calling install (on lscape package). Full output:

Retrieving new TeXLive database from CTAN...
Initializing ...
Welcome to the TeXLive Local Manager shell. Type 'help' for assistance.
tllocalmgr> install lscape
Can't call method "revision" on an undefined value at /usr/bin/tllocalmgr line 418.

hv15 commented on 2020-08-03 08:21 (UTC)

@Abello966, how are you calling tllocalmgr? What CTAN package are you trying to install?

Abello966 commented on 2020-08-03 02:28 (UTC) (edited on 2020-08-03 02:39 (UTC) by Abello966)

Latest version's (git tag:tllocalmgr-fix-texlive-local-match.patch) install command is not working. Using tllocalmgr returns that "command install is not defined" while opening the shell and running install "manually" returns "Can't call method "revision" on an undefined value at /usr/bin/tllocalmgr line 418."

TornaxO7 commented on 2020-06-29 21:06 (UTC)

@hv15 aaah yes, thank you for the answer! Could you pin your answer or put it into the --help page?

hv15 commented on 2020-06-29 20:33 (UTC) (edited on 2020-06-29 20:51 (UTC) by hv15)

Hi @TornaxO7, if you used tllocalmgr, then it will have installed the TeX packages as ArchLinux packages (using makepkg/pacman). Have you searched for these in the installed local packages, e.g. pacman -Qs texlive-local-...? You can then uninstall using pacman.

EDIT 1: typos...

hv15 commented on 2020-06-29 20:31 (UTC) (edited on 2020-06-29 20:46 (UTC) by hv15)

Hi @AlphaJack, sorry for my late response. Upstream hasn't updated some variables to handle texlive 2020, I'll create patch of this in the next 24 hours. Thank you for reporting the issue :)

EDIT: Done, please let me know if there are any problems.

TornaxO7 commented on 2020-06-29 19:47 (UTC)

How can I delete an installed tex-package????

AlphaJack commented on 2020-06-26 17:46 (UTC)

Is it normal to always get this kind of error when updating a CTAN package?

:: texlive-local-caption and texlive-core are in conflict. Remove texlive-core? [y/N] n
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: texlive-local-caption and texlive-core are in conflict (texlive-core>=2019.55507)


:: texlive-local-context-vim and texlive-core are in conflict. Remove texlive-core? [y/N] n
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: texlive-local-context-vim and texlive-core are in conflict (texlive-core>=2019.55652)

Using the latest 2020 texlive-core

phief2 commented on 2020-04-11 16:08 (UTC) (edited on 2020-04-11 16:10 (UTC) by phief2)

BUG: package() in the PKGBUILD will fail if makepkg is executed in a directory the path of which contains a space! This is due to improper variable quoting.

Please consider fixing all instances of this in the PKGBUILD. Patch here:

Ondrian commented on 2020-03-08 15:19 (UTC) (edited on 2020-03-08 15:20 (UTC) by Ondrian)

@hv15 Thanks for the tip! I'll have to read up on asp and packaging overall but definitely sounds more robust, than my current approach, haha.

hv15 commented on 2020-03-08 15:12 (UTC)

@Ondrian got it :), glad you were able to to sort it out. I only hope that when texlive-* gets updated, you don't have to go through dependency hell again. It would be nice if tllocalmgr would track Tex dependencies, but I don't think this is even supported through CTAN.

As an alternative, you could use asp to get the relevant texlive- PKGBUILDs and update these instead directly for your own use. I think this would be more robust and hopefully avoid dependency problems.

Ondrian commented on 2020-03-08 14:20 (UTC) (edited on 2020-03-08 15:20 (UTC) by Ondrian)

@hv15 I have a standard installation of texlive-most (and dependencies). I decided to update the texlive packages polyglossia and luavlna through tllocalmgr, since there have been some updates since the last update to texlive-most.

Then, I got the error Undefined control sequence. \str_lowercase:n -- apparently, this was because \str_lowercase:n was introduced in the beginning of January and therefore not in the current l3kernel package provided by texlive-most. After installing l3kernel through tllocalmgr this was solved, but many other packages were broken. In the end, I installed about 30 packages through tllocalmgr and finally I have a working latex installation including the up-to-date luavlna.

My point here is, updating a single texlive package can be dangerous, since the version dependencies are not handled at the package level, but (similarly to arch linux), everything in the up-to-date CTAN repository "should be" compatible.

And just to clarify - by the older releases I meant the tex packages provided by the "not so much up-to-date" current version of texlive-most.

hv15 commented on 2020-03-08 14:05 (UTC)

@Ondrian ah, I understand, I think... what do you mean by older releases? Are these the Tex packages you installed?

Ondrian commented on 2020-03-08 13:47 (UTC) (edited on 2020-03-08 14:00 (UTC) by Ondrian)

@hv15 That's what I used it for in the beginning - I wanted to update a few packages that recently implemented new functionality. Then I realized some updates depend on others -- e.g. the l3kernel. Now, I have an inconsistent installation with some files from the latest LaTeX2e <2020-02-02> patch level 2 release and some older ones. So the installation is broken, but it's kind of difficult to understand why, since the error messages are quire cryptic. So now I'm manually installing everything I think might be required. I know - great approach :D

hv15 commented on 2020-03-08 13:40 (UTC)

@Ondrian tllocalmgr is meant to work together with the texlive-* packages. If there's some Tex package missing, or has some bug-fixes that are in upstream but not yet packaged, does it make sense to update these IMHO.

Ondrian commented on 2020-03-08 13:33 (UTC) (edited on 2020-03-08 13:34 (UTC) by Ondrian)

Hi - maybe I'm missing something, but is it possible to update all packages at once? Or is that not a desirable functionality? I figured that I can update multiple packages at once by executing tllocalmgr update pkg1 pkg2 pkg3.

elzaphod commented on 2020-02-19 16:06 (UTC)

@azerrima I just had the same problem. The installation of texlive-moderncv-git via aur caused the error. I uninstalled it together with it's dependencies via 'pacman -Rs texlive-moderncv-git' and now it tllocalmgr works...

sharethewisdom commented on 2020-02-11 13:38 (UTC)

As XZS is unresponsive, I suspect that the update (a small pkgver change) was automatically pushed with XZS's own tool ( Please keep maintaining this package for now.

hv15 commented on 2020-02-09 19:43 (UTC)

Hey all, was recently updated, meaning that it now tracks upstream 100%. The enhancement patch applied on this package (adding package group 'textlive-local' and checking for are not included though. With this in mind though, is it worth while maintaining two very similar packages?

hv15 commented on 2020-02-09 19:37 (UTC)

@sharethewisdom: thanks, added!

sharethewisdom commented on 2020-02-07 16:02 (UTC)

I had to change the git reference in the source array to


because makepkg stalled fetching sources. (probably something wrong on my end)

CaptainBern commented on 2020-02-05 22:51 (UTC)

@azerrima @hv15 You're welcome! :)

hv15 commented on 2020-02-05 22:38 (UTC)

Thanks @CaptainBern, I completely missed that issue, thanks for spotting it and for providing a fix. I've added this to the latest revision of the package.

azerrima commented on 2020-02-05 17:41 (UTC)

Thanks @CaptainBern for looking into this. Confirming that the corrected line fixes the problem.

CaptainBern commented on 2020-02-05 15:59 (UTC) (edited on 2020-02-05 16:43 (UTC) by CaptainBern)

Seems to me that the issue stems from lines 139-143 in tllocalmgr:

chomp(my @pacman = `pacman -Qs ^texlive- | egrep ^local | cut -d'/' -f2`);
my @localpacman = grep { /^texlive-local-/ } @pacman;
# To have the standard collections we get rid of 
# texlive-local-<pkg> and texlive-localmanager:
my @collpacman = grep { !/^texlive-local/ } @pacman;

Notice how the last line is supposed to filter out 'texlive-localmanager', but since this package's name is 'tllocalmgr', it fails to do so and supposes tllocalmgr is a (tex) package while it isn't.

I've tried changing the regex to:

my @collpacman = grep { !/^(texlive-local|tllocalmgr)/ } @pacman;

That makes the error go away on my end.

As a quick and dirty way to fix this I've created two patches, one for tllocalmgr itself and one for the PKGBUILD (to apply the tllocalmgr patch). So just apply the PKGBUILD.patch (and make sure fix_tllocalmgr.patch is in the same directory as the PKGBUILD file), run makepkg and you should be good to go.

alberto-santini commented on 2020-02-05 13:05 (UTC)

I am having the same problem as @azerrima - Fresh latex install + fresh ttlocalmgr-git install. Any ideas?

azerrima commented on 2020-02-05 10:18 (UTC)

I receive the following error when I try to run tllocalmgr:

Initializing ...
Cannot open /var/lib/texmf/arch/installedpkgs/texlive-tllocalmgr-git_v0.7.r3.gbbd8488-1.pkgs

The file doesn't exist in the directory. Any thoughts what might be wrong?