This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: How to uninstall tetex (without installing texlive)?
- From: Ryan Johnson <ryan dot johnson at cs dot utoronto dot ca>
- To: cygwin at cygwin dot com
- Date: Wed, 07 Mar 2012 10:18:39 -0500
- Subject: Re: How to uninstall tetex (without installing texlive)?
- References: <4F576D50.70707@gmail.com>
On 07/03/2012 9:14 AM, Ryan Johnson wrote:
Hi all,
For the moment I don't want to upgrade to texlive (the 200MB download
factors in there), but even after removing every visible semblance of
tetex, setup still wants to bring in texlive. I've searched setup.ini
and ensured that no package listing tetex as a dependency there is
installed (tetex, dblatex, kpathsea, etc.) but no luck.
I've attached my current package list from cygcheck ... is there
something on there I missed?
Update: the culprits were gnome-common, gtk-doc, and xmlto.
In case it becomes useful to anybody else in the future, below are the
scripts I used to unmask the dependencies.
Regards,
Ryan
$ join <(cygcheck -cd | sort) <(cat setup.ini | awk -f cygcheck.awk |
python cygcheck.py texlive)
$ cat cygcheck.awk
/[@]/ {
printf("%s", $2)
}
/requires:/ {
for (i=2; i <= NF; i++) {
printf(" %s", $(i))
}
printf("\n")
}
$ cat cygcheck.py
import collections,sys
base,closure = sys.argv[1], set()
users = collections.defaultdict(lambda:set())
for line in sys.stdin:
names = line.split()
name = names[0]
for dep in names[1:]:
users[dep].add(name)
todos = set(u for u in users.iterkeys() if u.startswith(base))
while todos:
user = todos.pop()
if user not in closure:
closure.add(user)
todos |= users[user]
print '\n'.join(sorted(closure))
--
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