I think a version of Tkinter packaged with a distutils setup script is the best answer for Unix platforms. As a Linux user, I do *not* want to install a second copy of Tcl/Tk.
Why not? Because if every app using Tcl/Tk did that there would be hundreds of copies of Tcl/Tk on your disk? I don't think that argument flies; only a few other major languages use Tcl/Tk this was, so maybe you'd end up with 4 copies of Tcl/Tk: one for Tcl/Tk itself, one for Python+Tkinter, one for Perl/Tk (that's a separate code base anyway so you already have this today -- if you install Perl/Tk, that is), and one for Ruby. Given modern disk sizes I don't think it's a problem. We do the same for Windows, for good reasons: so we can be independent of whatever Tcl/Tk version is already installed.
If we have a distutil-Tkinter, e.g. ftp://ftp.python.org/pub/python/2.0/Tkinter-2.0-8.0.tar.gz then a user can download it and run "python setup.py install" to build a Tkinter against their installed version of Tk. This will be straightforward on many Linux systems, because they ship with Tk installed.
Of course that's easier. But less robust. (And why is there an "8.0" in the filename if it works with other Tcl/Tk versions???) --Guido van Rossum (home page: http://www.python.org/~guido/)