Tkchooser2 - A Unix/X network broswer
Tkchooser is a Macintosh-like network browser utility that supports
multiple protocols (appletalk, smb) with a modular architecture and
relies on external plugins to provide client-specific functionality
(appleshare, laserwriters). The idea is to bring a simple GUI-based
network interface to Unix.
Current Version: 0.55
Version 0.55 is an alpha/beta release.
It is alpha because I'm still having trouble with appleshare mounting among
other things. It is beta because the code seems to be fairly
stable and the plugin architecture, while subject to change, is
in place and ready to receive plugins. Protocol and plugin switching all
seem to work just fine. I am releasing this to the public in the hopes
that some capable souls will help me with some of the nastier aspects of
the smb implementation and start thinking about adding plugins. The tarball
contains an architecture/API description of sorts which will hopefully
inspire some interest.
Current Features:
- Appletalk layer is functional
- Appleshare browsing (not mounting yet)
- LaserWriter browsing and printing, both postscript and text, including support for a pre-configured printfilter
- appletalk Broadcast browsing, but not sending/receiving - on hold until I (or someone else) has ported CAP broadcast to netatalk.
- Winpop SMB plugin works
- Smb workgroup browsing
- Smb shared volume mounting
- Smb printing with printfilter support
- Print previewing for both printing plugins
- "Misc" layer for non-network plugins like a printfilter configurator
- Enscript plugin for configuring enscript for use as a printfilter or just configuring a .enscriptrc for general use.
Future Plans:
- Full appletalk broadcast (BC) functionality with a good GUI interface option unlike the "current" version of CAP broadcast.
- Better installation Makefile
- Clean up all the debugging output
- Make SMB layer more reliable, figure out why it doesn't work on some machines
Obstacles to Progress:
- Problems with afpfs (need a better testbed, afpmount bugs?)
- broadcast needs to be rewritten
Bugs:
- SMB layer isn't very robust yet - hasn't been tested without workgroups, but I think it will work. There's some trouble getting smbclient to behave consistantly across machines
- Tkchooser is dependant on the local SMB server and Samba seems to be picky about local server configuration
- Switching between plugins very quickly messing up the widgets because the stop functions do not get to complete. Sometimes this also has the effect of duplicating entity names in the plugin listbox. If you let each plugin complete it's startup sequence before clicking on the next one this shouldn't be a problem.
Call for Help:
I can write most of the protocol layers as well as the volume mounting, printing, and broadcast/winpop plugins on my own. In particular, if you have netatalk programming experience, I could use help (lots) rewriting appletalk broadcast and getting afpfs to work. If you think this project has promise and are interested in helping with any of these pieces or writing any other kinds of plugins or layers, please contact me. (See contact info at the end)
Requirements:
- Tcl/Tk versions anything-that-supports-"file" or newer. I THINK that means 7.4/4.2+. I use 8.1.
- Netatalk if you want appletalk stuff to work (your kernel must have appletalk support compiled in if you're using linux)
- afpfs if you want to be able to mount appleshare volumes.
- Samba if you want SMB stuff to work
- GNU Enscript 1.5.5 if you want to use the enscript configurator plugin. 1.5 will work if you comment out the 1.5.5 specific features in the supplied enscript.cfg file.
Getting tkchooser:
Discussion, Suggestions, Bug reports, Offers of Help, etc.
Email me, Ethan Gold at etgold@cs.vassar.edu.