NCurses Direct Connect
Ncdc is a modern and lightweight direct connect client with a friendly ncurses interface.
- Latest version
1.22.1 (File: ncdc-1.22.1.tar.gz
Size: 362.9 KiB (371.572 bytes)
d15fd378aa345f423e59a38691c668f69b516cd4b8afbbcdc446007740c3afadncdc-1.22.1.tar.gz - changes)
Convenient static binaries for Linux: File: ncdc-linux-x86_64-1.22.1.tar.gz
Size: 2.4 MiB (2.518.680 bytes)
2a270c2c29bdb2fb294c0d3dcaf7f313ed6a4e1f0880621ec3e7871cd2e5a4a5x86-64 - File: ncdc-linux-i486-1.22.1.tar.gz
Size: 2.5 MiB (2.598.612 bytes)
448ffe13ad7887a11759646b3192418c548691c7bcfc0253aa48740e85ce93b4i486 - File: ncdc-linux-arm-1.22.1.tar.gz
Size: 2.2 MiB (2.325.405 bytes)
ac3c866e18e050078b9001d35b46d6f0d02b721cb1d970222e785b75d1e64ed4ARM - File: ncdc-linux-aarch64-1.22.1.tar.gz
Size: 2.4 MiB (2.516.573 bytes)
7dfd1372983585c832d9f7e607dff73021fe283c406b9c54799853ee45a5cd5fAArch64 . Check the installation instructions for more info.
- Development version
- The latest development version is available from git and can be cloned using
git clone git://g.blicky.net/ncdc.git. The repository is available for online browsing.
The following libraries are required: ncurses, zlib, bzip2, sqlite3, glib2 and gnutls.
Ncdc is entirely written in C and available under a liberal MIT license.
- Bug tracker - For bugs reports, feature requests and patches.
adcs://dc.blicky.net:2780/- For real-time chat.
- Packages and ports
I have a few old packages on the Open Build Service, but these are unmaintained. The static binaries are preferred.
A convenient installer is available for Android.
Common features all modern DC clients (should) have:
- Connecting to multiple hubs at the same time,
- Support for both ADC and NMDC protocols,
- Chatting and private messaging,
- Browsing the user list of a connected hub,
- Share management and file uploading,
- Connections and download queue management,
- File list browsing,
- TTH-checked, multi-source and segmented file downloading,
- Searching for files,
- Secure hub (adcs:// and nmdcs://) and client connections on both protocols,
- Bandwidth throttling,
- IPv6 support.
And special features not commonly found in other clients:
- Different connection settings for each hub,
- Encrypted UDP messages (ADC SUDP),
- Subdirectory refreshing,
- Nick notification and highlighting in chat windows,
- Trust on First Use for TLS-enabled hubs,
- A single listen port for both TLS and TCP connections,
- Efficient file uploads using sendfile(),
- Large file lists are opened in a background thread,
- Doesn't trash your OS file cache (with the flush_file_cache option enabled),
- (Relatively...) low memory usage.
What doesn't ncdc do?
Since the above list is getting larger and larger every time, it may be more interesting to list a few features that are (relatively) common in other DC clients, but which ncdc doesn't do. Yet.
- NAT Traversal,
- OP features (e.g. client detection, file list scanning and other useful stuff for OPs),
- SOCKS support.
Of course, there are many more features that could be implemented or improved. These will all be addressed in later versions (hopefully :).