Xarchie is an X11 browser interface to the Archie Internet information system using the Prospero virtual filesystem protocol. Archie provides information about files available for ftp anywhere on the Internet; Xarchie displays this information using an easy-to-use, point-and-click interface. Xarchie allows you to further explore ftp sites by examining directories returned as query matches, and allows you to retrieve files located this way. Xarchie is designed (like most X applications) to be highly customizable, allowing you to tailor the look-and-feel of the tool to your own preferences.
This document is broken into two parts. First, the USER'S GUIDE describes Archie and Xarchie, and covers both Basic and Advanced Xarchie usage. Second, the REFERENCE MANUAL provides all the information needed to customize Xarchie. You can also browse this document using the Xarchie Help facility.
To report problems or bugs, please see the section "Reporting Bugs" in the REFERENCE MANUAL section.
The User's Guide section of this manual describes the Archie service, the Xarchie client, and how to use Xarchie to access resources available for FTP on the Internet.
The Archie information system is a network-based information tool offering proactive data retrieval and indexing for widely distributed collections of data.
Perhaps the best known application of the Archie system is to maintain the Internet Archives database. This database, already available from a number of service providers across the Internet, currently contains the names of over 2,100,000 files at over 1,000 anonymous FTP archive sites. Using this database, users can rapidly locate needed files without the need to log onto dozens or even hundreds of machines. Archie servers offering this database currently receive over 50,000 queries per day. It is this database that the Xarchie client accesses, as described in the next section, using one of the many independently owned and operated Archie servers around the world.
The Archie system is much more than the Internet Archives database. For more information contact Bunyip Information Systems at (514) 398-3709 or (514) 398-811 or email "info@bunyip.com".
Xarchie is an X11 browser interface to the Archie Internet Archives database using the Prospero virtual filesystem protocol. Archie provides information about files available for ftp anywhere on the Internet; Xarchie displays this information using an easy-to-use, point-and-click interface. Xarchie allows you to further explore ftp sites by examining directories returned as query matches, and allows you to retrieve files located this way.
Xarchie is designed (like most X applications) to be highly customizable, allowing you to tailor the look-and-feel of the tool to your own preferences. See the REFERENCE MANUAL for details.
Users should be aware that the Xarchie client accesses a server that is shared with users on other hosts. As such, submitting long or large numbers of queries during peak periods not only increases the time that you have to wait for a response, but it increases the time that others have to wait too. Please read about the -nice option, the niceLevel resource, and the "Nice Level" setting before making large queries. Also, you should use the closest possible host to save long-distance network traffic. Abusers of the service may find their access revoked without notice.
Xarchie uses several conventions regarding menus and button names:
A label with neither of these suffixes indicates that the action will be taken without subsequent interaction.
Xarchie's display is divided into three horizontal areas. The top pane is a control panel providing the following buttons:
Finally, the area labelled "Status" is used to provide information about the progress of a query or other informative messages.
The middle pane of the Xarchie display functions as a host-location-file browser. That is, the leftmost pane displays hostnames, the middle pane locations (directories), and the rightmost pane files or directories returned by a query. The browser's use is described in the section "Browsing", below. You can adjust the relative size of the browser panes using the Grips on their borders.
Finally, the bottom pane of the Xarchie display provides a set of Text items where you can enter information and where information is displayed as query results are browsed. Not all Text items can be typed in; some are used for display only. These text items provide Emacs-like editing controls (see xedit(1) for a complete description). Typing Return in some Text items invokes an action as a shortcut for selecting it from a menu or button.
This section provides information on basic querying, browsing, and file operations. The "Advanced Xarchie Usage" section describes how to use the Settings Panel and how to perform other, more complicated, queries.
The primary function provided by Xarchie is that of querying the Archie server for a "search term" (the string or expression for which you want to search). By default, your query uses exact search mode. That is, the search term must literally match an entry in the database for the entry to be returned. Other search modes are available, and are described in the "Advanced Usage" section.
You enter your search term in the appropriately labelled Text item in the bottom pane of the Xarchie display. Hitting Return in the text item or selecting "Query Item" from the Query Menu will send your request to Archie.
The Status area will be updated as the query progresses. First the Archie server's Internet address is looked up, then the server is contacted, the search term is sent over, and, after reaching the front of the server's request queue, matches are returned to Xarchie. The matches, if any, are displayed in the browser and the Status area indicates how many matches were returned.
If your window manager and version of X support it, you can iconify the Xarchie application and the icon will change to reflect the progress of your query. That is, it will change when a query is in progress and when it finishes.
If you find that your query is taking too long, you can abort it by clicking on the "Abort" button when it is active. Your query will be aborted as soon as possible. You should note that while aborting a query will allow you to enter a new query, it does not remove the query from the server's queue (this may be changed in the future). Thus aborting queries does not reduce the load on the server -- just the opposite probably. Use it with discretion, like the rest of the service.
As described in the section "The Xarchie Display", the middle pane of the Xarchie display functions as a host-location-file browser. The leftmost pane of the browser contains the names of hosts that have a file matching your search term. Clicking the Left mouse button on a hostname will highlight it and cause the middle browser pane to be filled with a list of locations on that host where files matching your search term can be found. The selected hostname will also be displayed in the Text item labelled "Host" in the bottom pane of the Xarchie display.
Similarly, selecting a location from the middle browser pane will cause the right browser pane to be filled with a list of the files available from the selected host in the selected location, and the location will be displayed in the bottom pane item labelled "Location".
Finally, selecting a file from the right browser pane causes its name, size, permission modes and last-modification date to be displayed in the correspondingly-labelled bottom pane items.
Note that if a browser pane has only one item, then that item will be automatically selected and its "lesser" panes and information items filled in. This saves time and effort in the common case where there is only one host, location, or file that matches your query. Also, note that, by default, Xarchie scrolls the browser pane when you select an item. This makes it easy to click through a long list of matches, but can be annoying. If you don't like it, it can be changed on the Settings Panel (described below), and see the description of the -noscroll command-line option in the REFERENCE MANUAL.
The browser allows you to select multiple items simultaneously, although of course only the last-selected item will have it's information displayed in the bottom pane. You add to a selection by clicking the Left button with Shift depressed. If the clicked-on item is already selected, it will be unselected. Currently, only the bottom level of the browser can have multiple selections, since a selection at a higher level clears the selections for all lower levels (this may be changed in the future). Thus you can select multiple files from a single host, but not multiple files from separate hosts.
The browser can be expanded, allowing you to investigate, say, a directory that matched your query. To select and expand an directory, double-click on it (double-click with Shift to avoid unselecting any other items). You can also select "Open" from the File Menu to expand directories (although this will also open selected files, as described later). All selected directories will be expanded by querying an appropriate Archie server, and the Status area will keep you informed. Expansion requests can be aborted just like queries using the "Abort" button.
If only a single item was expanded, and if the expansion was successful, then the browser will scroll to display the results. The arrow buttons across the top of the browser can be used to scroll the browser left or right when they are active. The Middle and Right mouse buttons or the Left and Right arrow keys will do the same thing, when the pointer is in the browser panes.
You can view a file that is selected in the browser by selecting "Open" from the File Menu (or by typing Meta-O). Xarchie retrieves all selected files in ASCII mode into a temporary directory. The Status area, like usual, will keep you posted on the progress of the operation and, once the FTP connection is established, the Abort button can be used to abort the Open operation. If you abort and there are files remaining to retrieve, you will be prompted as to whether to continue with the next file. Note that partially-retrieved files are not removed. There is currently no way to abort the transfer until the connection is established. The connection will eventually timeout and control will return to Xarchie if connection is impossible.
Each file is displayed in a popup Text window after being retrieved. Use the "Down" and "Up" buttons or the scrollbars to view the text. Click on the "Dismiss" button to destroy the window and delete the file. To save the file before dismissing, use the "Save" button. This pops up a panel with which you can choose the name of the file to which to save.
Note that because the Archie database is only updated periodically, some files returned by Archie may not exist when you attempt to retrieve them. This and any other FTP errors are signalled with alert boxes.
The "Open" action should be used to view short files, such as "README" files, that you don't need to save. For more permanent files, and for non-ASCII files like tar or compressed files, Xarchie allows you to retrieve the selected browser items using the "Get" item of the File Menu (or typing Meta-G). The selected files are retrieved via FTP and stored in the current directory (see the section "FTP Parameters" in the "Advanced Usage" section for how to change this). The "Status" area is updated to reflect the progress of the transfer. As for "Open", you can abort the retrieval using the "Abort" button once the FTP connection is established.
It is currently not possible to retrieve a directory, although of course the directory can be opened and the entire contents selected for transfer.
Note that because the Archie database is only updated periodically, some files returned by Archie may not exist when you attempt to retrieve them. This and any other FTP errors are signalled with alert boxes.
As with querying, if your window manager and version of X support it, Xarchie's icon will be changed to reflect the progress of a transfer.
Xarchie allows you to save and reload the contents of the browser, or write it in human-readable format using the items on the File menu. Selecting either of "Save", "Load", or "Write" (or typing Meta-S, Meta-L, or Meta-W, respectively) will pop up the File Panel with which you can specify the appropriate filename. Clicking on the "Ok" button will invoke the appropriate action; clicking "Cancel" will abort the operation and pop down the panel.
Saving the database creates a file containing sufficient information for the browser to be reloaded using "Load". The output is not intended for human consumption. The current Settings are also written to the file by "Save" and are restored by "Load".
Users should note that a reloaded database will be "flattened", that is, directories will be added to the middle pane as needed to fit everything in three browser panes. (This may be changed in the future to preserve the original hierarchy.)
Writing the database is intended to create files that are more or less human-readable (compared to "Save", anyway). There are two possible formats, selectable from the "Write Format" menu on the panel. If "One entry per line" is selected, then the output will have one line per entry, in the format
If "Pretty-printed" is selected, then the file format has hostnames starting at the beginning of the line, location names indented one tab, and file entries indented two tabs, all on separate lines. Hostnames and locations are only printed once, as in:
host location mode size date file mode size date file
The latter is more readable, the former may be more useful if the output is to be used by a program.
You can exit Xarchie by selecting "Quit" from the File Menu (or typing Meta-Q).
This section describes how various aspects of Xarchie's functionality can be modified to perform different queries and other operations. Further customization information is found in the REFERENCE MANUAL section.
The panel popped up by selecting "Other" on the Settings Menu in the top Xarchie pane allows you to change the parameters of your queries Archie. Each of the parameters is described in the following sections.
After you're done with the Settings Panel, clicking on the "Apply" button will make Xarchie use the settings as set on the panel. Clicking on "Default" will reset the settings to the values they had when Xarchie started (but note that you will still have to apply them to have them take effect). Clicking on "Done" closes the Settings panel. A popup confirmer will appear if you did not apply your changes, allowing you to discard the changes or go back and apply them. Note that the "Apply" button is inactive until a change is made.
The menus available from the "Search Type", "Sort Type", "Nice Level" and "Archie Host" submenus of the Settings Menu on the Xarchie top pane have effects corresponding to those of the buttons on the Settings Panel. However, they do not require that the "Apply" button be clicked on to take effect, and do not affect the behaviour of the "Done" button confirmer.
The item labelled "Host" provides a menu of known Archie hosts. You should choose one appropriate to your site (i.e., one that minimizes long-distance transmission). In addition however, you can enter an arbitrary hostname in the Text item next to the "Host" button. Note that the Archie host is only used for queries; expansion requests use information stored with the items to determine which host to contact. That is, changing the Archie host does not "take effect" until the next query is issued.
If you have the ping(1) program, you can try to use it with the its "-s" option to locate a "nearby" host.
You can specify hostnames using either the symbolic name or by giving its numeric IP address (four octets separated by periods). In either case, you can specify the port at which the Prospero server should be contacted by giving it in parentheses immediately following the hostname (no spaces).
The "Search Mode" item allow you to change how Archie interprets your search term. Holding a mouse button down while the mouse cursor is on the button displays a menu from which you can choose the desired search type. The label to the right of the item is updated to reflect the choice.
The exact mode is fastest and returns files exactly matching your search term. The substr and subcase modes return substring and case-sensitive substring matches respectively (i.e., substr means case-insensitive). The regexp mode allows you to specify a regular expression to select files (see ed(1) for a description of regular expression syntax). The exact* forms of these last three try an exact match first and then fall back on the more costly search type if the exact match fails.
The "Sort Mode" item allows you to specify how Xarchie displays the results from Archie. Holding a mouse button down while the mouse cursor is in this item displays a menu from which you can choose the desired sort type. The label to the right of the item is updated to reflect the choice. Applying the settings (see above) will cause the data to be resorted according to the new sort mode.
The type can be one of name, date, or weight. Sorting by name is simple lexicographic ordering.
If sorting by date is selected, then hosts are ordered according to the most recent file among those returned for them, and similarly for locations. Files themselves are ordered by last-modification date, naturally.
If sorting by weight is selected, then hosts are ordered by a user-definable set of "weights". In this way, hosts that are "close" (in some sense) are displayed first. The weights can be set using the Text item that appears on the Settings Panel when this sort mode is selected.
Hopefully, an appropriate weight list for the geographic location of your site will have been installed as the default. In any case, the the weight list is a set of lines, where each line specifies a weight and the set of domains for that weight. A host's weight is determined by finding the first line for which the end of the host's name matches one of the suffixes. A host that belongs in none of the classes is assigned the weight 99. For example, the default for the USA is:
1 edu com net gov mil us\n\ 2 ca\n\ 3 uk de nl fi fr eu.net\n\ 100 au nz jp
This means that all the US domains are ordered first, then Canada, then several European countries. Hosts in Australia, New Zealand, and Japan are ordered after any unknown (i.e. non-matching) hosts.
For more details, see the description of the hostWeights non-widget resource in the REFERENCE MANUAL section.
The "Nice Level" item deserves special mention. As mentioned in the "About Archie" section, Archie servers run on machines that must be shared between other Archie users and even other "real" users. This item allows you to voluntarily lower the priority of your request, just like the nice(1) command does for Unix. The menu provides some recommended values and you can enter arbitrary values in the text item. If you are searching with a large number of matches requested, please increase your nice level.
Note that, like nice(1), nicing a job does not mean your job won't affect others. In particular, once your job begins it is not pre-empted, thus you should still avoid long jobs during peak periods. You should especially avoid queries for items of only personal interest (you know what we mean) during these periods. As stated above, abusers of the service may find their access revoked without notice.
The following items set parameters of your query to the Archie server.
These items are Text items that allow you to edit their values.
The item labelled "Auto-Scroll Browser" controls whether the browser scrolls after an item is selected. Setting this to "yes" is useful when browsing a long list of matches. It can be annoying if you're doing more selective browsing, so set it to "no" in those cases.
The following items allow you to set parameters of file retrieval. You should be sure they are appropriately set before retrieving files using either "Open" or "Get".
The Query Menu provides two other types of queries besides the "Query Item" described in the "Basic Usage" section for querying the Archie database.
Selecting "Query Host" will use the hostname in the "Host" Text item on the bottom pane and will fill the browser with the contents of the root of its FTP directory. From then on, interaction is as previously described. The host to query can be in the "Host" item as a result of selecting a host in the browser, or you can type directly into the item the name of the host that you wish to open. Typing Return in the "Host" item is equivalent to selecting "Query Host" from the Query Menu.
Querying locations by selecting "Query Location" is similar: the Archie server is queried for the contents of the directory given by the "Location" item on the host given by the "Host" item. The browser is filled in with the results of the query (i.e., the contents of the directory). As before, you can type the name of the location into the "Location" item if you wish, and typing Return there is the same as invoking "Query Location".
Note that because the Archie database is only updated periodically, some files returned by Archie may not exist when you attempt to retrieve them. Similarly, recently added files may exist on the host but not in the Archie database.
This section provides all the information you should need to customize Xarchie. Command-line options, non-widget resources, widget hierarchies, translations actions, and other information are all provided. It is assumed that you understand enough about X applications to understand this.
The following non-widget resources can be set from the command-line or in a resource file. As usual, when given on the command line they can be abbreviated to their shortest unique prefix, often the first letter. Furthermore Xarchie accepts all the standard X Toolkit options (see X(1)).
Xarchie has a default set of resources built in. If you wish to customize the tool, take a copy of the default application defaults file (see the section "Files", below) and modify it. Then, before invoking Xarchie, set the environment variable XAPPLRESDIR to the directory containing your private copy. Alternatively, you can place entries in your .Xdefaults file or provide them with the -xrm toolkit option (see X(1)). Most of the following resources can also be set using the command-line options described in the previous section.
where parts of an entry are separated by spaces or tabs and entries are separated by a comma or newline. Each entry specifies a weight and a series of possible suffixes (one or more trailing components). A host's weight is determined by finding the first class for which the end of the host's name matches one of the suffixes. A host that belongs in none of the classes is assigned the weight 99. For example, the default for the USA is:
1 edu com net gov mil us\n\ 2 ca\n\ 3 uk de nl fi fr eu.net\n\ 100 au nz jp
This means that all the US domains are ordered first, then Canada, then several European countries. Hosts in Australia, New Zealand, and Japan are ordered after any unknown (i.e. non-matching) hosts. This resource can be set on the Settings Panel.
This allows them to be used by other applications using XFetchBytes(3X). The Xarchie distribution includes a sample program (xcutbuf.c) that retrieves the contents of a cutbuffer property.
The resource converter that looks up fontnames is modified so that the the two special strings "xarchieFont" and "xarchieBoldFont" result in the corresponding font being returned; other strings are looked up as normal fontnames.
Xarchie uses primarily Athena widgets, with some extra sub-classes as described below.
Xarchie xarchie [Form color|gray] <-- Color or gray-scale displays only Paned outerPaned Form buttonForm MenuButton fileButton MenuButton settingsButton MenuButton queryButton Command abortButton Command helpButton Label,Text status{Label,Text} Form browserForm Command browserUpButton Command browserDownButton Paned browserPaned Viewport browserViewport0 XfwfMultiList browserList0 Viewport browserViewport1 XfwfMultiList browserList1 Viewport browserViewport2 XfwfMultiList browserList2 Form stringForm Label,Text search{Label,Text} Label,Text host{Label,Text} Label,Text location{Label,Text} Label,Text file{Label,Text} Label,Text size{Label,Text} Label,Text modes{Label,Text} Label,Text date{Label,Text}
On color displays, there is an extra Form widget named "color" created as the only child of the toplevel shell, and all other widgets are children of it. This allows resources that are only applicable for color displays to use the prefix "Xarchie.color" while generally applicable resources should use the "Xarchie*" prefix. On gray-scale displays, the extra widget is named "gray". On monochrome displays, no extra widget is created.
The XfwfMultiList widget is a modification of the standard Athena List widget that allows multiple items to be selected. It was written by Brian Totty (totty@flute.cs.uiuc.edu) and is distributed by the Free Widget Foundation (contact free-widgets-request@kazoo.cs.uiuc.edu). Xarchie can be compiled to use standard Athena List widgets instead. See the Imakefile or your local installer.
To describe this widget hierarchy briefly, outerPaned controls the relative sizes of the three horizontal display areas while browserPaned allows the browser panels to be resized independently. Each browser panel consists of a Viewport to allow it to scroll and an XfwfMultiList (or List) to display the entries.
The command buttons and status widgets are pretty straightforward. The fileButton pops up the fileMenu, whose items invoke the obvious actions (see below) when selected. The settingsButton pops up the settingsMenu, which uses some special translations and the settings-submenu() action to permit the use of pullright submenus. The queryButton pops up the queryMenu, the abortButton (when active) invokes the abort() action, and the helpButton invokes the help() action to pop up the Help panel.
In the bottom pane, the searchText widget is used to enter the search term, and by default it binds Return to the query() action (see below) to send the query to Archie. The hostText binds Return to query-host() and the locationText binds Return to query-location(). All the other Text items in the stringForm cannot be edited and are used to display information about the current browser selection.
The "Panel" item on the Settings menu pops up the Settings Panel, which has the following widget hierarchy:
TopLevelShell settingsShell Form settingsForm Command setDoneButton Command setApplyButton Command setDefaultButton MenuButton,AsciiText setHost{Button,Text} MenuButton,Label setSearch{Button,Label} MenuButton,Label setSort{Button,Label} Label,AsciiText setHostWeights{Label,Text} MenuButton,AsciiText setNice{Button,Text} Label,AsciiText setMaxHits{Label,Text} Label,AsciiText setTimeout{Label,Text} Label,AsciiText setRetries{Label,Text} Label,AsciiText setAutoScroll{Button,Label} Label,AsciiText ftpMailAddress{Label,Text} Label,AsciiText ftpLocalDir{Label,Text} MenuButton,Label ftpType{Button,Label} MenuButton,Label ftpPrompt{Button,Label} MenuButton,Label ftpTrace{Button,Label} MenuButton,Label ftpStrip{Button,Label}
The setDoneButton invokes the settings-done() action, the setApplyButton invokes settings-apply(), and the setDefaultButton invokes settings-default(). The actions are described below. The MenuButton widgets pop up menus described below under "Menus". The AsciiText widgets are used to display and edit the corresponding parameters.
The "Save", "Load", and "Write" items on the File menu pop up the File panel, which has the following widget hierarchy:
TopLevelShell fileShell Form fileForm Label fileLabel XfwfFileChooser fileChooser Label,AsciiText filename{Label,Text} MenuButton,Label fileWriteMode{Button,Label} Command fileOkButton, fileCancelButton
The XfwfFileChooser widget provides a browser for selecting files. Xarchie can be compiled without the FileChooser, if necessary. See the Imakefile or your local installer.
In any event, the fileLabel indicates what operation is being performed, the fileChooser, fileText, and buttons are used to select a file, and the fileWriteModeButton pops up the fileWriteModeMenu (only enabled for Write). Typing Return in the filenameText is the same as clicking the fileOkButton, and sending the WM_DELETE_WINDOW message (typically from the window manager) is the same as clicking on the fileCancelButton.
TopLevelShell viewShell Form viewForm Command viewDoneButton Command viewDownButton Command viewUpButton Command viewSaveButton Text viewText
The title of the TopLevel shell is set to the basename of the file being viewed in the viewText. The operation of the buttons is all hard-coded. Clicking on the viewSaveButton results in the following panel being displayed to select the file to save to:
TopLevelShell viewSaveShell Form viewSaveForm Label viewSaveLabel AsciiText viewSaveLabelText XfwfFileChooser fileChooser Label viewSaveTextLabel AsciiText viewSaveText Command viewSaveOkButton, viewSaveCancelButton
The viewSaveLabelText indicates the name of the temporary file from which the save should be made and connot be changed. The fileChooser and fileText allow you to select the file to save to.
TopLevelShell helpShell Form helpForm Label helpLabel Viewport helpViewport List helpList Text helpText Command helpDoneButton Command helpPrevButton Command helpNextButton Command helpDownButton Command helpUpButton
The helpLabel identifies the version of Xarchie. The helpList displays the help topics, and the corresponding text is displayed in the helpText. The helpDoneButton invokes the help-done() action, the helpPrevButton invokes the help-prev() action, and the helpNextButton invokes the help-next() action. The helpDownButton and helpUpButton invoke the help-down() and help-up() actions respectively.
Selecting the "About" item on the File menu pops up the About panel, which has the following widget hierarchy:
TopLevelShell aboutShell Form aboutForm Label aboutLabel{0,1,2,3,4,5} Command aboutDoneButton
The labels are set to display the version of Xarchie and other contact information. There is little you can or should do with these widgets.
Finally, two types of popup windows can appear. An Alert box signals an error and blocks until clicked in; a Confirm box allows the user to make a Yes/No decision. These have the following widget hierarchies:
TransientShell alertShell Dialog alertDialog Command okButton TransientShell confirmShell Dialog confirmDialog Command yesButton,noButton
respectively. Several actions are defined (see below) for use in these popups.
SimpleMenu fileMenu SmeBSB menuLabel SmeBSB fileMenuItem{0,1,2,3,4,5,6}
There are three things worth mentioning. First, as noted above, the settingsMenu uses special translations and the settings-submenu() action to allow pullright submenus. Secondly, the submenus available from the Settings menu (searchMenu, sortMenu, niceMenu, and hostMenu) and those available on the Settings Panel (setSearchMenu, setSortMenu, setNiceMenu, and setHostMenu) have the same labels but are different widgets with different effects. The Settings Panel menus (the second group) only update the Settings panel, requiring the Done button to be clicked to take effect. The Settings menu submenus (the first group) take effect immediately, and also indicate the current item in the left margin of the menu.
Finally, the number, order, and effect of all menus are hardcoded, although the labels can, of course, be changed in the resource file. However, changing the labels will NOT change the effect of selecting the item, with the exception of the hostMenu and setHostMenu. These menus use the numHosts non-widget resource to indicate how many items are on the menu. Thus you can add hosts to the menu by adding label resources for the new hostMenuItem's and increasing the value of Xarchie.numHosts. Xarchie parses the labels to determine the hostname: anything up to whitespace constitutes the hostname (and optional port number), anything after is simply commentary.
The following action procedures are registered for Xarchie and can be bound to widget events using the translations resource (see the Xt manual, Appendix C). The actions of the browser widgets are hard-coded since they are so essential to correct behaviour. They can however be bound to different events using the notify() action (that is, you could notify on some other event than mouse clicks, if you know what you're doing).
Items are selected in the browser using the Left mouse button, as usual. Clicking with Shift does not clear other selections, allowing multiple selections. This is implemented using the XfwfMultiList translation actions Notify(), Set(), Toggle(), and OpenMany(), unless your version of Xarchie was compiled to not use the XfwfMultiList widget (see the Imakefile or your local installer). Modify at your own risk!
The following actions are used for other browser operations.
help-prev()
help-next()
Selects the previous or next help topic, respectively.
help-up()
help-down()
Scrolls the text of the current help topic up or down one page,
respectively. This is an alternative to using the Text widget's
scrollbar.
The following environment variables are used by Xarchie if they are defined:
TMPDIR- Directory for "Open"-ed files
XAPPLRESDIR- Directory containing Xarchie resource file
USER- Username for FTP mail address
HOSTNAME- Hostname for FTP mail address
Xarchie- default Xarchie resource file
Xarchie indicates X errors using the ever-popular default X error handler that prints a message and dies, possibly leaving a large core dump somewhere.
Errors due to incorrect resource specifications cause an error message on stderr, but do not kill Xarchie (usually).
Errors due to incorrect user commands or problems with the connection to Archie result in a popup alert box being displayed. Clicking on the indicated button in the alert box will make it go away and allow you to continue.
An incorrect value for the FTP mail address (as determined from the system information or from the USER and HOSTNAME variables) can result in access being denied by some anonymous FTP servers. See the description of the ftpMailAddress non-widget resource if your system has problems with this.
If you continually get "Can't resolve hostname" errors when you try to query, then Xarchie was not built properly. Contact your local maintainer and suggest that they read the PROBLEMS file concerning the "resolv" library.
If your queries always time out, then there are two possibilities. First, and by far the most likely, is that the server is simply busy. Try again later. The other possibility is that UDP traffic is disabled on your system. You should contact your local maintainer and ask them to read the PROBLEMS files concerning UDP traffic.
Crashes have been observed when the Help text is scrolled. There is no fix, but see the PROBLEMS file for some discussion.
The list of files in the FileChooser widgets don't seem to get displayed properly all the time. That is, sometimes items seem to be drawn on top of each other. Refreshing the window (eg., iconify/deiconify or scrolling up/down) clears it up. This seems like an Xaw bug, but is difficult to repeat in isolation.
Your mileage may vary regarding the Xarchie icon changing to reflect search and transfer status. Your window manager may not support application-specified icons, or may not support them changing dynamically. See the PROBLEMS file for some discussion.
It is not currently possible to abort during nameserver lookup. Perhaps some day I'll get motivated to add asynchronous DNS code.
The browser has a hard-coded maximum depth, beyond which you cannot expand directories. I don't think it will be a major problem however.
If you have problems with or questions about an individual Archie server site, contact archie-admin at that site. If you have any questions about Archie itself, write to info@bunyip.com. If you have questions about Prospero, write to info-prospero@isi.edu. The USENET newsgroup comp.archives.admin may also be helpful.
If you have a problem, please read the "Known Bugs" section first, then contact your local maintainer and/or refer to the PROBLEMS and INSTALL files in the Xarchie distribution.
When reporting bugs, problems, suggestions or contributions, please be sure to send them to the right place. Issues dealing with the X interface should be sent to George Ferguson (ferguson@cs.rochester.edu). Please be sure to include sufficient details, including hardware, OS, compiler, version of X, and the like. No amount of detail is too much.
Brendan Kehoe (brendan@cygnus.com) is in charge of the archie clients and most of the network stuff underlying Xarchie, Cliff Neuman (bcn@isi.edu) is in charge of Prospero, and Alan Emtage and Peter Deutsch ({bajan,peterd}@bunyip.com) are in charge of the Archie project itself. Individual archie servers, however, are maintained locally at each server site (archie-admin@<server-host>).
George Ferguson, University of Rochester,
(ferguson@cs.rochester.edu)
Original standalone
archie
program by Brendan Kehoe,
(brendan@cs.widener.edu).
Original Prospero
archie
program by Clifford Neuman,
(bcn@isi.edu).
The archie service was conceived of and implemented by Alan Emtage (bajan@bunyip.com), Peter Deutsch (peterd@bunyip.com) and Bill Heelan (wheelan@bunyip.com).