CVS repository
Not logged in

Instructions for accessing the cvs repository are at http://sourceforge.net/cvs/?group_id=24259. I recommend using the -P option with checkout and update commands, because when I initially imported my code I screwed up and ended up with a bunch of junk files and directories. I deleted the junk files, but the directories still show up. Using the -P option causes the now empty junk directories to be deleted.

Access to the repository via the web can be found at http://tkoutline.sourceforge.net/cvs. The source code consists of http://tkoutline.sourceforge.net/cvs/main.tcl and all the subdirectories in http://tkoutline.sourceforge.net/cvs/lib.

Note that http://tkoutline.sourceforge.net/cvs is just a redirect to http://cvs.sourceforge.net/viewcvs.py/tkoutline/tkoutline/.


2004-4-17 Derek Peschel Notes about the CVS version for first-time downloaders

After downloading the source distribution of version 0.93, I wanted to see if some problems had been fixed in the CVS version. Upgrading is not hard, but requires understanding a few concepts and doing a few steps.

1. Understanding CVS paths

A CVS repository resides on a specific computer, in a specific directory (the "root") and its subdirectories. For TkOutline, the machine is currently cvs.sourceforge.net and the root is currently /cvsroot/tkoutline. The SourceForge Web-to-CVS interface shows the root in its current directory listings as cvs / tkoutline. You might see it in logs or elsewhere. CVS, and the Web interface, won't let you do anything above the root. So once you've checked out TkOutline, I suggest just ignoring the root when you see it.

The current TkOutline sources are in a subdirectory of the root called tkoutline. Don't ignore this; it has a definite meaning.

2. Checking out the distribution

The process of getting a CVS client is not specific to TkOutline. Except for the information you fill in, the process of checking out TkOutline is not specific to TkOutline either. So I won't describe them here.

Say you have the 0.93 distribution inside /usr/local/src/tkoutline-0.93.

Say your current directory is /usr/local/cvs/ and you type

 cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tkoutline co -P tkoutline

You will then have these files and directories:

 usr/
   local/
     src/
       tkoutline-0.93/                   Call this DIR1.
         COPYING
         bin/
         doc/
         lib/
         main.tcl
     cvs/
       tkoutline/                        Call this DIR2.
         lib/
         main.tcl

3. Libraries not included in the CVS version

These directories inside DIR1/lib (and their contents) must be copied to DIR2/lib:

4. Other changes from version 0.93

If you're comparing DIR1 and DIR2, here's what to expect.

These files have been removed. Most of the contents were added to existing files:

These files have been moved into lib/tkoutline:

These files have been added:

5. Getting TkOutline to run

After copying the directories from item 3, I had to do two more things. I'm using Macintosh OS 10.3.7, which is based on BSD UNIX, without any kind of StarKit package.

That's it! wish main.tcl works perfectly.

Brian Theado - thanks for the thorough documentation. Another alternative that lags CVS only during larger, less stable changes is the starkit http://tkoutline.sourceforge.net/tkoutline-devel.kit. All that is needed to run this starkit is the single file tclkit from http://www.equi4.com/pub/tk. The standard ActiveTcl (http://tcl.activestate.com) distribution contains support for starkits (just using wish). For Mac OS X, I believe wish in the full AquaTclTk distribution supports starkits and also wishkit can run starkits. I can't recommend starkits enough. They are easy to distribute, easy to download and run and uninstall and the source code is all included (just extract with sdx from http://www.equi4.com/sdx.html).

Other reasons why starkits are cool: http://mini.net/sdarchive and http://wiki.tcl.tk/13404. The latter is a single starkit that contains almost 90 Tcl/Tk games and it uses tkoutline as the game launcher. Now I'm getting a bit off the topic of this page.