Hello, While trying to install the package "gitk", I was asked to install the required package "tcl" and "tk". This is not right in my case, because: - I already have both "tcl8.4" and "tcl8.5" installed, so it should be happy with any of them; - this would create a conflict, because "tcl" is actually "tcl 8.4.16" and "tcl8.4" is "tcl8.4.19" Maybe the dependancy should be changed to require any one of the 3 package?
Hi Debian tcl/tk developers, Christophe wrote: See below[*]. This is why we shouldn't support more than one version of the (threaded) interpreter in a given suite at a time. :) In an ideal world, I imagine the tcl binary would be in a "tcl" package and only a separate libtcl package would be versioned. I'd be happy to work on that. Can you imagine problems that would arise from it? Regards, Jonathan [*] The tcl package I am using has tcl8.6 (>= 8.6.0~b1-4) In particular, the version it depends on is an inequality --- it does not require any specific tcl patch level. Christophe, is your tcl package different? What happens if you try "apt-get install tcl"?
forcemerge 550299 632905 quit Hi, Christophe wrote: I think the gitk package is using those metapackages correctly. I've sent a message to check by asking the Debian tcl/tk maintainers. The report as written doesn't explain how this affects the package's usefulness --- if the default version of "tk" is different from the version you prefer, that's unfortunate, but it would not break git: apt-get install tcl tk update-alternatives --config tclsh update-alternatives --config wish So it is not clear to me yet what the purpose of the proposed change is. Still, thanks for reporting it, and I'd be glad to help in any way I can. Regards, Jonathan
Hi Jonathan, From the feedback in your two mails, I would tend to think that the problem is only in Debian squeeze in which I am stuck for now (I did not find courage to switch to testing at the time squeeze froze). In my case: - tcl is *not* a meta-package - actually, it is even an older version of tcl than the version provided in the package "tcl8.4" ! I confirm you that the tcl/tk version is, as expected, not an issue for gitk: I choose the hacky-way to work around this, and downloaded manually the deb, modified the depends to include tk8.4 | tk8.5, and here it goes! By the way, tcl8.6 does not exist in squeeze, but that's probably ok as it is still a beta (and not to be released soon if I believe the discussions on the mailing list...); On the other hand 8.5.10 got released a few weeks ago so it might also be an opportunity to upgrade the tcl8.5 package still in 8.5.8? Regards, Christophe.
Christophe CURIS wrote: Ah, that makes a lot of sense. Thanks for clarifying. Looking at the package description, I see: This package is a dependency package, which depends on Debian's default Tcl version (currently 8.4). You're right that that's not the full story --- actually, the package contains a symlink /usr/bin/tclsh-default -> tclsh8.4 In any event, it relies on tcl8.4 for functionality. You're right to point out that tk8.5 works much better for gitk, and it's unfortunate that squeeze was released with tk8.4 as the default version. The only workarounds I know of are to grab the "tcl" and "tk" packages from wheezy, to use update-alternatives to override the target of the /usr/bin/wish symlink, or to put a custom wish symlink somewhere with higher precedence on the $PATH (e.g., in ~/bin when on a multiuser system you don't control). Hopefully the above discussion can help the next person who comes across this. I'll also look into adding a note to README.Debian (suggested wording always welcome, of course). Cheers, Jonathan