Introduction
IIT Kharagpur once had one of the largest DC (Direct Connect) networks in India. It lost its glory when the pandemic hit and everything went off-campus. This is an effort to restore that glory, let’s get started.
Installing the client
Metahub -the IIT KGP DC Hub - is a private hub and inaccessible from outside the IIT Kharagpur network. Users connect to the hub using DC clients and can share files at high speeds. Metahub was previously known as HiT Hi FiT Hai.
There are various DC clients available for different platforms. To name a few, we have:
Platform | Client(s) |
Windows | EiskaltDC++, DC++ |
Linux | EiskaltDC++, LinuxDC++, ncdc |
MacOS | EiskaltDC++, Shakespeer, ncdc |
However, it is recommended to use Eiskalt DC++ for uniformity across different platforms.
To install EiskaltDC++ on your platform of interest refer to the corresponding section.
Windows
Download Eiskalt DC++.
Go through the basic installation setup and install it.
Linux
Install Eiskalt DC++ on Debian-based distributions like - ubuntu, linux mint etc using the following command
sudo apt install eiskaltdcpp
Note
If you are not on a Debian-based distribution, search for the package name using the package manager your distribution uses and install it.
MacOS
Install Homebrew - skip this step if already installed.
To check whether it is installed or not, use the following command
command -v brew
If the output is like the following, then brew is installed!
~> command -v brew /opt/homebrew/bin/brew
Install Eiskalt DC++ using the following command
brew install eiskaltdcpp
Configuring the client
Open Eiskalt DC++ & press the following keyboard shortcut to open its preferences window according to your platform.
Windows
: ctrl+oLinux
: ctrl+omacOS
: cmd+,
Set a
Nick
aka username for your current instance.Note
Nick must be unique.
Other entries are optional, setting or not-setting them will not create any problem in connecting to the hub.
Configure TLS option. Goto:
Connection
>Advanced
>TLS settings
and chooseAllow TLS
.Note
- This is an ambiguous setting. If
Allow TLS
option doesn’t work for you, you can try other available options. This is further detailed in Some Common Issues section.
- This is an ambiguous setting. If
Configure downloads directory. Goto:
Downloads
>Downloads
.Note
- Make sure to configure both,
Downloads Directory
andUnfinished Downloads Directory
.
- Make sure to configure both,
Now click
Ok
.Press the following key combination for the quick connect dialog box, according to your platform.
Windows
: ctrl+nLinux
: ctrl+nmacOS
: cmd+n
Enter the domain for MetaHub -
dc.metakgp.org
- to connect. PressOk
.Warning
Do not use any IP. We have deprecated the usage of IPs and have migrated to the above mentioned domain.
You should now be connected to the hub and if the fonts are set properly you should see something like this.
NOTE:
Just focus on the Prompts and that you are connected, your exact GUI will be different since I customised mine to not bleed my eyes.
To properly render (display) the "METAHUB" text as shown in the screenshot above follow the steps in the "Rendering MOTD" section.
You may encounter one of these common issues::
Connected to the hub but unable to browse or download files.
Nick is already taken by another user.
These issues are well explained with their solutions in the Some Common Issues section. If you run into any other problems not documented here, please fill out the MetaHub Issue Tracker Form to report them. We're always working to improve the user experience and your feedback helps.
How to share content
It's not enough to just download content - to bring back the DC culture - everyone is encouraged to share their collection as well.
To share folder(s) follow the following steps:
Warning
It is a must to mirror (share) whatever you download, so you at least have to share the folder in which you download content from the HUB.
Open Eiskalt DC++ & press the following keyboard shortcut to open its preferences window according to your platform
Windows
: ctrl+oLinux
: ctrl+omacOS
: cmd+,
Now navigate to:
Sharing
>Basic
and toggle off theView share in simple mode
.Now select the folder(s) where you keep downloaded content from the HUB. Keep the following things in mind:
You can choose other folders as well, but choosing your download folder is essential to mirror your downloaded files.
You will need to click on
down arrows
to expand folders.You might need to increase the width of the Name column to be able to see the names of the folders.
How to download content
To browse the files of a specific user, simply
Right-Click
on their profile and select theBrowse Files
option.Now you will be taken to the file explorer for the user's shared directory. Use the
Down Arrow
to expand the folders of your interest.Now
Right-click
on the file you want to download and selectDownload
orDownload to
(for a list of frequently used folders to download).Now enjoy tremendously fast download speed and the file will be downloaded.
Note
Don't forget to mirror the content you download.
Some common issues
You are connected to the hub and can also see the list of all connected users but when you try to browse the files for any user it keeps on connecting and finally, nothing happens. This might be a result of multiple configurational and system issues. To fix them you are recommended to follow the below practices:
Allow all incoming connections for the client through your firewall - recommended for all platforms.
Changing the mode of your connection.
To do so, Goto:Preferences
>Connection
>Connection
, explore the available options and select the one that works for you.Make sure you meet the minimum sharing requirement to be able to browse and download content from other users.
Refer to the rules for the exact number. At the time of writing this documentation, the rules are:
Nick was already taken by another user, even if your Nick was unique.
This happens when the connection with the hub is dropped abruptly. It can be due to multiple reasons:
The network was turned off abruptly.
The network was changed abruptly.
Due to this, the connection packets remain alive and it appears to the hub that you are still connected, i.e., your previous connection wasn't closed properly.
FIX:
The only way to fix it is to wait for at max 15 minutes so that the packets expire automatically and then you can connect to the hub normally. Usually, they expire quite early but sometimes might take time so better have a walk outside your room, get some fresh air then try to connect to the hub again.
Rendering MOTD
This is completely an optional step based on personal preference. If you want to render the ASCII art for METAHUB
to be rendered properly, as shown in the image below, you will need a mono font.
Installing mono font
However there are many options available, for the sake of documenting the exact process, we will be installing hack-nerd-font
which comes with a mono version of itself. To install it on your system of preference refer to the sections below.
On Windows
Download a Nerd Font - recommended Hack Nerd Font.
Extract the downloaded zip file.
To install all of them simultaneously, you first need to select them all. To do so, click the first font on the list, hold the
Shift key
, and click the last font. You can also drag to select them if you want. As long as they’re all selected, it doesn’t matter how you do it. It should look like this.:Next,
right-click
on the name of any of the font files. If you have multiple user accounts on your PC, you might want to clickInstall for All Users
. Otherwise, just clickInstall
.If you already installed some of the fonts, you’ll get a popup warning you about it. Click
Yes
and let it proceed.Another window will indicate the progress of the installation. Once it disappears, your fonts are installed and ready for use.
On Linux
Download a Nerd Font - recommended Hack Nerd Font.
Unzip and copy to
~/.fonts
.Run the following command to manually rebuild the font cache.
Bash
fc-cache -fv
On macOS
Install Homebrew if not already installed.
Use the following command to install the
hack-nerd-font
Bash
brew install font-hack-nerd-font
Changing fonts on your client
Now that the fonts are installed on your system, follow the steps below to configure the client to use those fonts.
Press the following keyboard shortcut to open its preferences window according to your platform.
Windows
: ctrl+oLinux
: ctrl+omacOS
: cmd+,
Goto:
GUI
>Fonts
.Double-click on the currently set font's name.
A dialogue box will appear, search for
mono
keyword.Then select the mono-font you wish to use.