[Pkg-tcltk-devel] Bug#550299: gitk: package depends explicitly on tk, wish may be more appropriate

Jonathan Nieder jrnieder at gmail.com
Fri Feb 19 09:43:18 UTC 2010


Hi Francesco,

Francesco P. Lovergine wrote:

> It is not clear to me what you are trying to obtain. You must have the default
> tcl/tk version installed (currently 8.4). Also you can have 8.5 installed, but
> you can remove it if you had not installed packages that depend on 8.5 strictly.
> It is exactly the same you get with gcc default and gcc-X.Y versions.

I don’t think the analogy is perfect.  Steffen reported that he uses
gitk and would prefer to use it with tk8.5 (if I remember correctly).
This makes sense to me, because in many ways, tk8.5 is simply better
than tk8.4.  With the current system, most packages that depend on tk
use wish rather than using wish-default directly, meaning that if the
admin has set wish to point elsewhere, the tk8.4 installation is
wasted space.

Now compare the gcc situation.  IIUC the packaging strategy is to
roughly mimic what upstream provides.  That is, there is one current
release, old releases kept for compatibility, and new releases
provided for experimentation.  gcc-4.5 and gcc-snapshot are likely to
be broken occasionally, so it is foolish for packages to use them
without a good reason.  gcc-4.4 is what the rest of the world is
already using, and it is easy for Debian to standardize on it for now.
When we have various packages depending on different GCC versions,
forcing the admin to have several installed, that is a symptom of a
problem: for example, for copyright reasons it took a while to switch
to GCC 4.4, and so impatient package maintainers with reason to
upgrade switched individually.

> So what?
> The only true problem is the historical presence of alternatives, which should
> be dropped.

No argument here, provided the default version does not fall way out
of date too often.  Actually, I would encourage (for squeeze+1) just
having one tcl and one tk source package (plus maybe a tcltk-snapshot
package for testers).  IMHO there are not enough packages using Tcl/Tk
in crazy ways to make multiple co-installable versions worth the
trouble.

> Default Tcl/Tk version is not something the admin should be able
> to set, because it is error prone.

Then using alternatives is a bug.  It is not at all analogous to
letting the admin install a symlink in /usr/local/bin; providing
alternatives is advertising that it will work.

I suspect dropping alternatives support would leave some people
unhappy because they are used to tk8.5 or 8.6 and don’t want to go
back to 8.4.  One bug masks the other.

> At the same time, IMHO depending on wish
> is an error. It is much better depending on default tk. Also that kind of
> dependencies should be dropped. Please cfr:
> 
> http://pkg-tcltk.alioth.debian.org/tcltk-policy.html/ch-module_packages.html#s-dependencies

Because of Bug#544460, gitk probably needs to depend on tk (>= 8.5.7).
Which is unsatisfiable.  *sigh*

Jonathan



More information about the Pkg-tcltk-devel mailing list