delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/08/01/10:18:53

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,SPF_NEUTRAL,TW_GT,T_RP_MATCHES_RCVD
X-Spam-Check-By: sourceware.org
Message-ID: <50193AA8.8050307@cs.utoronto.ca>
Date: Wed, 01 Aug 2012 10:18:16 -0400
From: Ryan Johnson <ryan DOT johnson AT cs DOT utoronto DOT ca>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20120713 Thunderbird/14.0
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: How to keep a dependency from [continually] appearing in setup
References: <CAM-A7MA-VX7yD=iEW5o3c+d+WCLybYkJMhcrSX_nZ_EPDy_R4g AT mail DOT gmail DOT com> <50185716 DOT 8050504 AT cornell DOT edu> <50191B67 DOT 5010106 AT cs DOT utoronto DOT ca> <50192B7B DOT 5060501 AT cornell DOT edu>
In-Reply-To: <50192B7B.5060501@cornell.edu>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On 01/08/2012 9:13 AM, Ken Brown wrote:
> On 8/1/2012 8:04 AM, Ryan Johnson wrote:
>> On 31/07/2012 6:07 PM, Ken Brown wrote:
>>> On 7/30/2012 1:33 AM, Wynfield Henman wrote:
>>>> I use the in-the-wild, 'texlive 2012' distribution, which I like to
>>>> tinker with and customize.
>>>> Due to a, what I believe is a dependency by auctex on texlive for some
>>>> reason, I keep getting a list of about 10 texlive related packages
>>>> automatically appended to what I want to install and I have to keep
>>>> manually [skip] them.
>>>>
>>>> I would like to know some efficient way I could make that go away and
>>>> just have setup ignore texlive or have it see that I have it already,
>>>> but that it's just not a cygwin package, but user installed.
>>>
>>> setup.exe only knows about Cygwin packages.  You might be able to edit
>>> /etc/setup/installed.db to trick setup.exe into thinking that you've
>>> installed Cygwin's texlive.
>> Of course, then it will try to upgrade the non-existent package(s),
>> potentially leading to problems down the road...
>>
>> Seriously, though, there are some surprising dependencies on texlive
>> right now (usually via dblatex), and it's a big enough package set
>> (several hundred MB download) that it's no surprise lots of people want
>> to avoid its being pulled in every other time they run setup.
>
> It's not nearly that big if people just install what they need to be 
> able to run latex.  See the recommendations in my last announcement:
>
>   http://cygwin.com/ml/cygwin/2012-07/msg00311.html
>
> I don't know whether dblatex could get by with fewer dependencies. 
> Yaakov would have to comment on that.
>
>> I don't suppose there's an easy refactoring that could help avoid this
>> problem?
>
> I'm open to suggestions.
Digging through setup.ini shows only a few notable packages that pull in 
texlive:

texlive
     <- dblatex
         <- gtk-doc
             <- gnome-common
         <- xmlto
     <- emacs-auctex
     <- texemacs.

That's not nearly as many dependencies as I thought, so my initial 
reaction was probably too strong. That said, there might be some room 
for improvement:

It can be argued that emacs-auctex should not pull in texlive. Most 
users installing emacs-auctex will already have some flavor of tex in 
place, and not necessarily the cygwin one (like the OP, or perhaps a 
MikTex user). Plus, the error message is pretty intuitive and the 
solution very simple, if latex is not there: "latex: no such command" 
==> "maybe I should install latex." Therefore, the expected aggregate 
frustration of users who installed auctex without latex available would 
likely be far lower than the aggregate frustration of users wanting to 
install auctex and getting saddled with an unwanted redundant texlive 
distribution (for which there is no easy solution).

Only two packages use dblatex, so it probably makes sense to also 
question why *they* need it.

It makes sense that gtk-doc needs dblatex, *if* the former is used to 
create/update documentation rather than merely supply a pile of info and 
man pages, but if that's the case I'm not convinced that gnome-common 
needs gtk-doc. Relatively few users of gnome-common need to develop 
gnome code, and few developers need to regenerate documentation from 
sources.

I think my own encounter with texlive dependencies came while trying to 
compile some project whose configure script insisted on having xmlto 
available. The package description suggests that xmlto does a lot of 
things that wouldn't require dblatex, but I've never used it before 
(that project really only needed xmlto to regenerate documentation, 
which I didn't do).

I can't comment on texemacs, I've never used it.

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019