DC++ is an open-source file-sharing protocol mainly differentiated from other protocols by the fact that users share complete files and download the entire file from a single user by means of a direct connection. Some clients actually defy this and allow you to download the same file from multiple users, but they are in the minority. For a more complete overview of the protocol itself, see the wikipedia article on the subject.
There are multiple DC++ hubs around the world. The Cal hub is special because all the users are on the Berkeley network, and as a result, the data transferred does not count against a user's weekly bandwidth allowance.
Contents
Getting a client
First, download a DC++ client.
- Official Windows client
- Shakespeer – probably the only Mac OS X client that's still actively developed
Note that if you're using a Mac OS earlier than 10.4, you will need to download version 0.8.5 and not the latest version.
Setting up
Once you've downloaded your client, you need to set it up to connect to the Cal network. The basic settings are:
Hub address: caldchub.no-ip.com Username: anything you want Password: leave blank
More detailed instructions are below.
Windows
Now click OK to save the settings. Immediately after you add shared folders, DC++ will hash the files in it so that they can be shared. In order to connect to the Cal hub, you must have at least 1 GB of hashed files.
The last thing you need to do is add the hub to your "Favorite hubs" list. To do this, click on the Add new Favorite hub toolbar button and fill in the following info:
Name: Berkeley Hub Address: caldchub.no-ip.com
Then, click OK, then click the CHECKBOX next to the Berkeley Hub.
Mac OS
After downloading Shakespeer, open the program.
- Go to Shakespeer→Preferences...
- Fill out the fields to your pleasing
- Click on Share
- Choose the download folders. They can be identical.
- Add folders to share. One of them should also be the downloads folder.
- Set Upload slots to be 4
- Close the Preferences window
- Click on Bookmarks in the Navigation pane
- Click New at the bottom of the window. Enter
caldchub.no-ip.com
as the address. Check the box next to the address you just filled in. - It will take some time for Shakespeer to hash your files. You can check the progress at any time by going to Window→Show Server Messages; when hashing is done, finished hashing all files will be displayed there. Note that in order to connect to the Cal hub, you must have at least 1 GB of hashed files.
- If you're having trouble downloading files, chances are you have a firewall that is blocking the connection.
First off, head over to Shakespeer→Preferences...→Network and make sure that the Connection mode selected is Active mode. Then,
- open System Preferences
- go to Sharing→Firewall
- click New..., choose Other in the drop-down menu, enter 1416 for both UDP and TCP ports, enter DC++ (or whatever else you want) for the description, and click OK
- lastly, make sure there's a checkbox next to the newly-created rule
Restart Shakespeer, you should have no problems connecting now.
Linux
Type this into a terminal:
cvs -d:pserver:anonymous@cvs.linuxdcpp.berlios.de:/cvsroot/linuxdcpp login (leave the password blank, press Enter) cvs -z3 -d:pserver:anonymous@cvs.linuxdcpp.berlios.de:/cvsroot/linuxdcpp co linuxdcpp
Now you will have the current CVS checkout of the Linux DC++ client. It uses scons as its build system, not make, so you will probably need to install that (for example, using apt-get install scons or whatever other package manager you use). To build it, just issue this command:
scons
It will require a lot of development libraries. Big ones are the GTK+, glade, and bzip2 header files. Normally for your distro this will be the package name with a -dev or -devel appended. For example, in Fedora Core, you would install the package gtk2-devel to get the GTK+ header files. As listed in the readme file, the dependencies are:
scons >= 0.96 pkg-config g++ >= 3.4 gtk+-2.0 >= 2.6 gthread-2.0 >= 2.4 libglade-2.0 >= 2.4 pthread zlib libbz2
Of course, the names of the packages will be different for your distro. If you need help finding out the names, try asking politely on IRC.
After building the package, there will be an executable named linuxdcpp in your current working directory. Run it (e.g. with ./linuxdcpp) and enjoy.