Hi: OK, here's a very brief introduction to downloading with CVS. there are more complete docs out there and if you're at all interested, please read them. You can use an environment variable, I think it's CVSROOT, to specify the server and path of the CVS repository. Since I don't use this, I won't talk about it The rough form of CVS commmands is as follows: cvs <options> <command> <options> CVS has a lot of commands and options that I don't know about, so I'll only give the examples you need to download from the speakup CVS repository. The first thing you need to type is: cvs -d:pserver:anonymous at linux-speakup.org:/usr/src/CVS login There are a couple of things to note. firstly, notice the colon between org and /usr. That does need to be there. Secondly, the cvs in /usr/src/CVS is in caps. If all goes well, you will be prompted for a password. Type in please (all lower case) and hit enter. You should return to your shell prompt. Now, you are in a position to download or, to use the CVS term, checkout modules. A module is simply a project in the CVS repository. When you check out a module, a subdirectory wil be created with that module in it so make sure you're where you want to be before you do a checkout. I'm guessing you're interested in the speak freely CVS code. To get that, do the following: cvs -d:pserver:anonymous at linux-speakup.org:/usr/src/CVS co speak_freely After it does its thing, you'll have a subdirectory called speak_freely with the speak freely CVS source code. change into that subdir and do what you're told to get it to compile. Note that many packages in CVS repositories have additional or supplimentory commands that need to be run on CVS source trees that do not need to be run on release tarballs, so check any documentation there might be. Speak freely is, however, not one of these. Now, you've done the hard part. You can easily update the CVS source tree in the future, provided you've not done anything radical to the source, by changing into the speak_freely CVS source directory and typing: cvs update -P -d Having said that, I'm getting "cvs [update aborted]: recv() from server linux-speakup.org: Connection reset by peer" and I don't know why ... but that's not meant to happen <grin>. You don't need to specify the server or password, as these are remembered by CVS and the files it stores. One other note about the speakup CVS server. linux-speakup.org (a.k.a. bumpy.braille.uwo.ca) is set to reject anyone who's IP address does not reverse lookup to match their hostname. some ISPs out there do not provide reverse lookups for their IP addresses (i.e. you cannot lookup a user's host name from their IP address - nothing is returned). If your ISP does this, sorry, you're out of luck. Get some nice friend to snag it and tar it up for you. Them's the breaks. Hope this helps. Geoff.