[OS X TeX] question about fontspec/manually installing packages

Ross Moore ross at ics.mq.edu.au
Tue Apr 25 02:34:00 CEST 2006


Hello Philipp,

On 25/04/2006, at 4:10 AM, Philipp Mathey wrote:

> Hi,
>
> I recently looked at xetex, together with fontspec, because I  
> wanted to use a font other than the
> standard computer fonts. It is really impressive.
>
> I need the latest version of the fontspec package - v1.9- which  
> comes with
> some new \special{} -commands. The latest version in gwtex is v1.8  
> so I downloaded
> the new version 1.9 and put in ~/Library/texmf/tex/xelatex. I also  
> had to update the xkeyval
> package and put the latest version in ~/Library/texmf/tex/latex/
>
> Everything works fine. I didn't do " sudo texhash".
>
> My question is this : could someone on this list explain/recap what  
> the
> recommended procedure in cases like this one is, i.e. if there is a  
> need
> to install a package which is not part of Gerben Wierda' tetex or  
> an existing package
> has not been updated yet, where should one place the (new version  
> of the) package ? What is the
> difference between placing a package in ~/Library/texmf/ and  
> placing it somewhere
> in /Library/teTeX/share/texmf.local/ ?

The main difference, for a single user, is the lack of need
to do  "sudo texhash" as you have discovered already.
This would be required if you use the .../texmf.local/  tree.

If you have a multi-user setup, then there's a *big* difference.
Now with ~/Library/texmf/  only the single user, whose account you
have used, can see these packages.

>
> Of course, the most important aspect is : what happens when gwtex  
> is being updated ?

Neither  of these locations is supposed to be touched during
an update or re-install.
(Well, maybe  .../texmf.local/  gets moved or renamed,
then its contents copied back at the end, or somesuch procedure,
to ensure that there is a consistent working installation.)
If this isn't true, someone will quickly say so.  :-)

> How can one ensure the update is compatible with the manually  
> installed packages?

That should be up to you to check manually.
It is quite possible that a package you installed
a few years back prevents the system seeing the newest
version that came with your latest update.

This is a *feature*, not a defect.

Otherwise it's possible that old documents may cease
to work, when they were written with packages that have
since been updated without backwards-compatibility.

Maybe bugs have been found and fixed, or the syntax
modified, but the old document was written before the
need for the change was recognised.

There is a definite need to be able to override what
the system provides. Testing for the latest version
is not always going to be appropriate.


> Of course, if, for example, the update installs fontspec v.1.9  
> there would be no need for a manually
> installed fontspec v1.9 in ~/Library/texmf/  anymore.
>
> Maybe this has been explained countless times but I would be  
> grateful if someone could
> summarize what the recommended procedure is.

Check the versions, from time-to-time,
of the packages that you have manually installed.
Compare them to what is in system locations.

Rename, but don't remove, something that previously
was useful to you but has now been updated.
Who knows, you may find a need to go back!


Use 'locate' to find all files having similar names.

For example, (in a Terminal window):

[glenlivet:] rossmoor% locate ps4pdf | grep ".sty"
/Users/rossmoor/Fermat/FERMAT-BOOK/MasterFiles/ps4pdf.sty
/Users/rossmoor/texmf/doc/ps4pdf/ps4pdf.sty
/Users/rossmoor/texmf/tex/latex/ps4pdf/ps4pdf-06h.sty
/Users/rossmoor/texmf/tex/latex/ps4pdf/ps4pdf.sty
/usr/TeX/texmf/tex/latex/ps4pdf/ps4pdf.sty

The version that is normally used is the 2nd last in this list,
which is version 0.6i ; most of the others are 0.6h.
The /usr/TeX/texmf  tree is from an old TeX installation
  --- it's version of this package is  0.6f .

To get all the versions in one go, try this command:

   grep ProvidesPackage `locate ps4pdf | grep ".sty"`


Being more adventurous, you might consider doing the following.

If it's a standard package, that you can be *sure* will be
updated at the next major opportunity, then you could put it
in a system location --- using  sudo .

Of course this risks your *sureness* being not as reliable
as you think.


>
> Thanks.

Hope this helps,

	Ross

------------------------------------------------------------------------
Ross Moore                                         ross at maths.mq.edu.au
Mathematics Department                             office: E7A-419
Macquarie University                               tel: +61 +2 9850 8955
Sydney, Australia  2109                            fax: +61 +2 9850 8114
------------------------------------------------------------------------


------------------------- Info --------------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
          & FAQ: http://latex.yauh.de/faq/
TeX FAQ: http://www.tex.ac.uk/faq
List Archive: http://tug.org/pipermail/macostex-archives/




More information about the macostex-archives mailing list