Skip to content

amule-project/amule

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11,285 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aMule

aMule

aMule is an eMule-like client for the eDonkey and Kademlia networks.

Forum | Documentation | FAQ

Important Notice

The work in aMule will continue in the new aMule-org repo. The reason we had to create a new organization is that Gonosztopi, who is the single owner of aMule Project, has been unreachable. As a result, in the aMule-project organization we became unable to update the infrastructure to the project's needs.

Overview

aMule is a multi-platform client for the eD2k / Kad file-sharing network, originally a fork of the Windows client eMule (via xMule and lMule). aMule started in August 2003.

Supported platforms today: Linux, FreeBSD, OpenBSD, macOS, and Windows (MSYS2 / mingw-w64), on both x86_64 and ARM64.

aMule aims to stay close to eMule in look-and-feel so users moving between the two have minimal friction. New eMule protocol-level features are generally adopted into aMule shortly after.


Distributions
Arch Linux
AUR
Debian stable
Debian testing
FreeBSD
Gentoo
Kali Linux
Manjaro
NixOS 25.05
OpenBSD
openSUSE Tumbleweed (Packman)
RPMFusion Fedora 42
Slackware
Solus
Ubuntu 24.04 LTS
Ubuntu 25.04

Development Statistics

aMule-project (frozen) aMule-org
Open Pull Requests Open Pull Requests
Open Issues Open Issues
Bug Bug
Feature Request Feature Request
Enhancement Enhancement

Features

  • amule — all-in-one GUI client.
  • amuled — headless daemon, no GUI.
  • amulegui — remote GUI; connects to a local or remote amuled over the EC (External Connection) protocol.
  • amuleweb — HTTP interface to a running amuled.
  • amulecmd — interactive CLI for a running amuled.

Installation

aMule ships pre-built binaries for every major desktop. Building from source is also supported.

Pre-built binaries (recommended)

Download the latest release for your platform from the Releases page. Quick start:

  • Linux — AppImage (any distro) or Flatpak: download, chmod +x, run.
  • macOS — Universal2 .dmg: download, drag to /Applications.
  • Windows — choose either the NSIS installer .exe (Start-menu shortcuts, uninstaller, x64 / ARM64) or the portable .zip (no install, unzip and run).

See docs/INSTALL_BINARIES.md for per-platform notes — including the macOS unsigned-binary workaround, the Windows SmartScreen prompt, and the Linux FUSE dependency for AppImage.

Building from source

aMule uses CMake. Quick start:

cmake -B build -DBUILD_MONOLITHIC=YES -DBUILD_REMOTEGUI=YES
cmake --build build -j"$(nproc)"
sudo cmake --install build

See docs/INSTALL.md for the full list of dependencies, build options (BUILD_DAEMON, BUILD_AMULECMD, ENABLE_NLS, ENABLE_UPNP, ENABLE_IP2COUNTRY, etc.), and platform-specific notes. The CI workflow .github/workflows/ccpp.yml is the authoritative reference for the exact deps and flags used to build aMule on Linux, macOS, and Windows.

Setting Up

aMule comes with reasonable default settings and should be usable as-is. Two configuration steps are still worth doing on day one.

Open the ports — get a HighID

To receive a HighID you need to open aMule's ports on your firewall and/or forward them on your router. See the network connectivity guide for details.

Set bandwidth limits

aMule ships with both upload and download caps disabled by default (MaxUpload=0, MaxDownload=0 — both interpreted as literal unlimited). On a connection that aMule can saturate, that means aMule will eat all the bandwidth available to it, starving every other application sharing the link. Setting realistic limits is strongly recommended.

Under Preferences → Connection, set the limits to roughly 80 % of your actual line speed to avoid saturating the upstream and starving your own traffic. Values are in kilobytes per second (kB/s); ISP advertised speeds are usually in megabits per second (Mbps). To convert, multiply Mbps by 125.

Example: a 100 Mbps / 20 Mbps fibre line → roughly 12 500 kB/s downstream and 2 500 kB/s upstream. Set the limits to about 10 000 down / 2 000 up to stay below the line cap.

Reporting Bugs

If you find a bug or miss a feature, please open an issue on GitHub (preferred) or report it on the forum. A good bug report includes the exact aMule version (amuled --version), the platform you're on, and steps to reproduce. See the bug report guide for detailed instructions on attaching backtraces and reproducer steps.

Contributing

Contributions are always welcome!

See the contributing guide for how to get involved. In short:

  • Code — fix a bug, implement a feature, improve performance. The preferred path is a pull request on GitHub; patches on the forum also work.
  • Translation — translate aMule, its documentation, or its website into your language.
  • Documentation — help improve the project documentation at amule-org.github.io/docs.

About

'All-platform' P2P client based on eMule

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors