Now and then I get requests for custom builds of the Coccinella which is dead simple. But first a few words about how Tcl/Tk applications can be distributed.
The crude way is to require a full Tcl/Tk installation and distribute the application sources. The smart way is to use tclkits. A tclkit is a single file complete runtime environment for Tcl/Tk. It uses Tcl's Virtual File System and a metakit database to wrap up executables, shared libs, Tcl scripts and whatever into a single file. Applications can then be distributed as a single file starkit which uses a tclkit in your execution path. This is similar to Java and its JVM. It is very small; a complete tclkit with all encodings and a number of packages is just 1.3MB! If you want a completely self contained application you just include the runtime in your wrapping, which is then called a starpack. Read all about it here. Does this sound awfully complicated? It is not. Everything is handled by a script and a single command is enough. If you want to include the runtime you just add a switch -runtime tclkit.exe. Simple!
The Coccinella application is customized by having a parallel source tree with images, icons, resources, preferences you want modified. In the tools module of the coccinella cvs I have a build script which you just edit. When you run it it produces the source, windows, and linux distributions in one shot, both the Coccinella and any custom distributions you may have defined. Simple! The Mac OS X version is currently using the platform native application bundle.