gtk-gnutella logo
Current version: 1.3.0

The Most Efficient Gnutella Client

gtk-gnutella is a server/client for the Gnutella peer-to-peer network. It runs on Microsoft Windows, MacOS and every Unix-like system which supports GTK+ (1.2 or above). The GNOME desktop environment is not required. It is currently developed and tested under Linux (Debian) as well as NetBSD. It is known to run at least on Linux, FreeBSD, NetBSD, Darwin, Solaris, Tru64 UNIX (OSF/1), SGI IRIX, BeOS whereas CPU architectures include x86, AMD64, PowerPC, SPARC, MIPS. And of course Microsoft Windows (XP at least).

gtk-gnutella is free open-source software and released under the GNU General Public License (GPL-2).

gtk-gnutella is not finished yet, but it is fully functional: you may share, search, and download. And it is stable too, users usually just leave it run unattended for days.

This website is written in PHP, follows HTML5 and CSS3 web standards and does not use cookies.

All ideas and comments are welcome to the gtk-gnutella-devel mailing list. Bugs should be reported to the SourceForge.net Bug Tracker

We need additional contributors for C development, documentation, software translation and website translation.

News

6 March 2026, Version 1.3.0 Released

This is a maintenance release with minor bug fixes.

Improvements
Under the Hood

3 March 2024, Version 1.2.3 Released

This is a maintenance release with minor bug fixes.

Improvements
Bug Fixes
Under the Hood

25 February 2022, Version 1.2.2 Released

This is a maintenance release with major bug fixes.

There were several shortcomings with bandwidth management: capping was not performed correctly and could overuse uploading bandwidth. Also when the DHT is turned off or on, we need to recompute proper bandwidth stealing.

Corruption of the DHT disk databases could also lead to a crash.

There was a critical old bug in the Dynamic Querying layer that affected Ultrapeers mostly: we could corrupt memory and/or crash when the current node was removed and we were processing a Dynamic Query for that node. This is more likely to happen when running as an Ultrapeer but it could also affect nodes running as leaves, although the probability of that bug happening is much less in that case.

Finally, it is best to not iterate on a global list that could get changed due to a node removal. This was the case when sending pongs to neighbouring nodes, so we now take a private copy.

Improvements
Bug Fixes
Under the Hood

Older news...

Users Love Us Community Choice SF Favourite Community Leader Open Source Excellence SourceForge.net Logo RSS Feed Available Open Hub metrics Coverity Scan Build Status gtk-gnutella at GitHub
gtk-gnutella © 2000-2014 by Yann Grossel, Raphaël Manfredi and various contributors.