aMule stands for all-platform Mule.
aMule is an eMule-like client for the eD2k and Kademlia networks, supporting multiple platforms.
Currently aMule (officially) supports a wide variety of platforms and operating systems, being compatible with more than 60 different hardware+OS configurations.
aMule is entirely free, its sourcecode released under the GPL just like eMule, and includes no adware or spyware as is often found in proprietary P2P applications.
aMule is built upon the wxWidgets (formerly wxWindows) toolkit, which enables it to support multiple platforms.
All aMule requirements are listed here.
Hardware
An aMule-compatible platform. Though it supports a wide variety of platforms, some few rare ones are still not (officially) supported.
A keyboard, a mouse and a screen are strongly recommended for obvious reasons. Though they might not be needed depending on the aMule application you want to run.
Software
Required
An aMule-compatible operating system is required
The standard C and C++ libraries
wxWidgets 2.8.7 or higher. Command line applications will do with just wxBase. GUI applications will require their wxwidgets taste (wxGTK, wxMSW, wxMac, etc) depending on the Operating System you are running on (note that wxbase is integrated into all wx GUI tastes). wxWidgets 2.8.7 is mandatory if you want support.
zlib library
libcrypto++ library
bison is required to compile aMule
Recommended
GetText is not absolutely required, but very strongly if you want to use any of aMule's translations
libpng is recommended when using amuleweb to be able to generate progress bar images
libgd is recommended when using cas to be able to generate images
flex might be needed to generate some files, but maybe not.
Perl and XChat are required to run some tools in the aMule package
aMule has most features of the eMule client. These include:
eD2k and Kademlia support.
aMule is currently available in 28 languages.
Support for Source Exchange in order to find sources for files more efficiently.
Large queues and the Credit system helps to ensure that everyone will get the file they want and rewards those who actively upload to other users.
Support for the compressed transfers and server communication (using zlib), which means faster transfers for compressible files and less strain on servers.
Support for Secure Identification, which insures that your user hash can't be stolen in order to inpersonate your client.
Support for IP-Filters so that you can keep known bad IPs from connecting to you.
Boolean search (AND, OR, NOT).
You can have the traditional progress bar for transfers, percents completed or both.
aMule supports systrays for both Gnome, KDE and other compatible window managers. Of course, on Windows too.
Supports Online Signatures, so you can brag about using aMule.
Checks against aggressive clients.
Uses MD4 hashes to find sources and ensure that the file matches the original copies of the file, in order to avoid corruption.
Intelligent Corruption Handler (ICH) and AICH helps to speed up the correction of corrupted parts.
Auto priorities and source management allow you to start many downloads without having to monitor them.
The Preview function allows you to look at your videos and archives before they are completed. For video previewing, MPlayer or Xine are recommended but Video Lan Client should work too.
Support for categories so that you can organize your downloads.
To find the files you want, aMule offers a lot of search possibilities, which are:
Servers search (local and global)
Kademlia nodes search
Integration in your favourite browser for easy click-and-download (with ed2k:// links).
Messaging and Friends system. You can send messages to other clients and add them as friends.
aMule supports updating the server list from an URL during run-time, at startup or as it connects to other clients.
PowerShare function: better handling of your shared files (known as Release).
Skins support.
aMule-specific features
Multiplatform.
Proxy support.
Improved checks against aggressive clients.
Complete External Connections protocol from scratch.
aMule Daemon allows you to run a bare aMule client with no graphical interface and very low CPU and memory usage. Ideal for servers, people who usually control aMule remotely and those who just usually don't keep taking a look at how far downloads are going.
aMule Remote GUI to control your aMule remotely as if you where in front of it.
aMuleWeb for browser interface and amulwebDLG is a graphical interface to aMuleWeb. They also work both locally and from remote clients. You can control your aMule from anywhere in the world as long as you have an internet connection and a browser, no matter what hardware or operating system you use! ;)
PHP (specific implementation) support in aMuleWeb
The amulecmd command line interface and amulecmdDLG as a graphical command line interface both allow to remotely control aMule too. All of them work both locally and from remote clients. You can control your aMule remotely from anywhere as if you were in a shell!
Slot allocation allows you to specify to how many clients you wish to upload to at once. For example, if you have 20KB/s for your maximum upload, you can set slot allocation to 10KB/s which means that you will upload to two users with 10KB/s each.
Other utilities such as CAS, wxCAS, aLC, XAS, AMPS, etc.
Fast eD2k links handler at the bottom of every page (can be disabled on Preferences).
Run a command when a file is completed.
Save 10 sources on rare files when usefull (20 or less sources).
Filter search results.
Default file permissions for completed downloads.
Multiple filesystems support.
Version updates checks.
Planned features
EC library and API.
and and and ...
Version 2.2.6 - The "we don't have holidays" version.
2009-09-16
GonoszTopi:
- Fixed obfuscated server UDP communication.
- Fixed cross-endian Kad node verification.
- Fixed name conflict in builtin PHP parser.
- Fixed configure finding unwanted Crypto++ installations.
Marcell:
- Properly update transfers tab's bottom pane's title.
mr_hyde:
- Fixed a bug in detecting and using the fallocate() function.
Sam Hocevar:
- Now really fixed that security issue.
Stu Redman:
- Fixed HTTP download if server transmits no content-length
- Fixed several cases of amulecmd printing zero on big endian machines
- Fixed amuleweb crashing on tiny downloads
- Added version resources to MSVC binaries
- Fixed wrong search text in search dialog after deleting a tab
- Fixed download limit in amuled (which was 50% of what was set)
Wuischke:
- Fix amuleweb progress bar display for files > 4GB
Special Thanks To:
- stefanero and his bleeding-edge system
The title tells everything.
I won't steal your precious time making you read useless text, so here are the details:
For paranoid people: checksums of the source code tarball:
- MD5: 530d9b48187e36f78fc21bb19e94326d
- SHA-1: 369bb950897c3f1f59fc1190ac7034113ac253d0