As an illustration, let consider that I want to update the installed tcolorbox package to the new one from the CTAN.

  1. I have downloaded the newest tcolorbox.zip package from ctan.org/pkg/tcolorbox. I extracted it and its contents are shown as follows.

    enter image description here

  2. I noticed there are two folders related to the installed (old) tcolorbox as shown in the following figure.

    enter image description here


  1. How do I know which files in the extracted folder should be copied to ...\doc\latex and ...\tex\latex?

  2. Is there a more convenient way to do it?

  3. Do I need to invoke texhash at the end?

  4. Should the package authors separate the main files from the document files with two subfolders in their zipped packages to ease manual update?

  • In the general case this is a difficult question, as the layout on CTAN can be arbitrary. That is one of the reasons we are doing TeX Live, to make it easy for people to install things. We have complicated scrits with hundreds of cases to deal with all packages. – norbert May 13 '13 at 5:02
  • @norbert: Why don't you adopt "convention over configuration" strategy that package authors must obey such that you no longer need to create a script for each package. It means that the package authors, for example, must separate the main code files in their own folders from the documentation files. :-) – kiss my armpit May 13 '13 at 12:51
  • That will not work out of many reasons: First, it is not us, the TeX Live team, but the CTAN team that decides. But more importantly, all are volunteer, and if we force them to a specific format probably many people will just stop uploading to CTAN, which has the contrary effect. We want to make it easy for developer to upload and share on CTAN. – norbert May 17 '13 at 5:02
  • @norbert: There is a bug in the abandoned package fp-exp, see this link. – kiss my armpit Jun 27 '13 at 16:02
  • if it is abandoned, why do you not fix the bug and re-upload to CTAN. At the end everyone can upload. – norbert Jun 29 '13 at 7:05

In the distribution documentation is separated from run time files, but it isn't essential that you do that, so if in doubt (or in a hurry) just leave all the files together in a directory in your input path.

Whether you need to run texhash afterwards depends where you put them. Some directories are marked as being hashed so if the new files are not hashed they will not be found, other directories are marked as not hashed and for them kpse searches the file system so just putting the files there is enough. (For example you never need texhash for the current directory)

kpsepath tex

will tell you your input path

mine is

$ kpsepath tex

which is an unmodified texlive 2012 setup.

Path segments prefixed by !! require texhash path segments ending in // include all subdirectories to any depth.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.