This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Unwanted texlive invasion


On 25/09/2012 5:20 PM, Ken Brown wrote:
[Please don't top-post.]

On 9/25/2012 2:10 PM, Wynfield Henman wrote:
On Tue, Sep 25, 2012 at 10:07 AM, Ken Brown wrote:
On 9/25/2012 11:41 AM, Ryan Johnson wrote:

Hi all,


I'm trying to upgrade a set of existing cygwin packages, and texlive
suddenly wants to install itself, apparently due to a new dependency
from gnuplot. Is this really necessary?


This dependency is created by cygport. It's of course up to the gnuplot
maintainer (Volker Zell) whether or not he wants to override it, but I can
explain the rationale. gnuplot installs some files into
/usr/share/texmf-dist. To make it possible for tex to find those files, the
gnuplot postinstall script runs /usr/bin/mktexlsr. The latter is provided
by texlive-collection-basic, so this package is required by gnuplot.


Maybe you should just bite the bullet and install texlive. It won't
interfere in any way with your native TeX Live installation, as long as you
put the bin directory for the latter first in your path.

> I don't agree. The solution should not be to install an unnecessary > package and waste space and complicate by having to check order in the > PATH variable.

People who install programs that are not provided by Cygwin have to expect to set PATH appropriately, including checking the order of the paths.

> It would be better that a.) installation scripts check for the
> existence of the necessary commands first and not brute force the
> installation or warning that the cygwin port of it be installed.

For the issue being discussed in this thread (the gnuplot dependency on texlive-collection-basic), the necessary command *is* /usr/bin/mktexlsr. Running the mktexlsr provided by the native TeX Live distribution will not do the job (which is to make the files installed in /usr/share/texmf-dist accessible to tex).

> It may also be desirable, to have setup use a list of packages to NOT
> install, regardless of any dependencies.

I don't think setup.exe should make it quite that easy for people to circumvent dependencies. But maybe something like the Debian "equivs" facility would be useful (see http://www.tug.org/texlive/debian.html for a discussion of this in the context of TeX Live).
I think this really reflects a more general issue, which is how software should treat optional dependencies (e.g. gnuplot's TikZ terminal, or myriad emacs bells and whistles). Options tend to be hardwired in at compile time, with pressure to include support for everything lest some user complain their favorite feature is disabled. If feature checks were performed at runtime, the problem goes away. Files in /usr/share/texmf-dist are a problem under this regime, but really it just shows that TikZ should be a separate package that depends on both texlive and gnuplot; it is essentially a pair of plugins, one for each app.
</wishful-thinking>


Meanwhile, the workaround is simple enough this time: uninstall gnuplot. Fewer checkboxes to tick in setup.exe, only needs done once, and its .tgz (to compile from scratch) is significantly smaller than the texlive packages, should that become necessary.

Ryan


-- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]