7

aria2c has invaluable features like:

  • Segmented downloading
  • Metalink Support
  • Download multiple files simultaneously
  • Multiple connections downloading
  • Torrent support with chunk checksum validation

which I believe don't exist in wget, and the download acceleration based on multiple connections downloading is the most crucial option.

But aria2c is only an example and there should be several potent rivals with more options than wget.

What could be the reason for still using wget? Are there any hidden benefits?

PS. As a new user I just met aria2c last night and had the question about two different competitors; I'm not related to aria2c in any way. Please don't be prejudiced.

DummyBeginner
  • 367
  • 1
  • 4
  • 19
  • 1
    aria who? Familiarity counts for a lot in many situations where a choice is to be made. I doubt most command-line users will do an exhaustive search for superior alternatives for every command entered. – Digital Trauma Feb 02 '15 at 22:53
  • @DigitalTrauma You're right. They don't search and adapt to what they have, But in case of new needs, They would look up for something feeds their needs. It's my case too, After several Hash checksums failing to `wget` downloaded files (due to poor internet connection), I had to find something faster and stronger in getting files with multiple connection support. – DummyBeginner Feb 02 '15 at 23:20
  • Unix co-designer Doug McIlroy [once wrote](http://www.faqs.org/docs/artu/ch01s06.html): "Make each program do one thing well." `wget` would seem to be more in line with this philosophy than `aria2c`. Likewise, this is why people use `cat` over `tr` over `sed` over `awk` over `perl` when the application permits, even though the later entries in that list have correspondingly more features. A simpler program with fewer features is usually the *better* choice when you don't need those features. – Nate Eldredge Feb 03 '15 at 02:37
  • Just so you know, aria2 also works as a backend for the GUI tool "uGet". http://ugetdm.com :) – Michael Tunnell Feb 03 '15 at 02:44
  • 1
    I am surprised nobody has mentioned curl in all of this. It is yet another tool which is popular and widely spread which overlaps these very closely. – Vality Feb 03 '15 at 06:14

1 Answers1

28

Aria2 probably is objectively better, but there are a few reasons wget has (and will likely retain) the crown as default downloading application in Ubuntu:

  • wget is tested and omnipresent. It's actually older than some of the moderators.
  • Because it's almost 20, everything and its brother depends directly upon wget. It's not as easy as just replacing one with the other. You would need a legacy script to interface between apps wanting wget and that request being sent through Aria2.
  • wget is also smaller, approximately 20% of the size of Aria2. This matters for default applications because of the CD size.
  • While Aria2 may do everything, wget is plenty for most jobs.
  • There's also the question of multithreaded downloads being antisocial. They can hammer a server for new connections which isn't always desirable. Modern internet connections cope fine with single-threaded downloads.

If you're just doing stuff for yourself, feel free to use whatever you like. Aria2 seems capable enough and it's probably even objectively better... But it has a lot of history to overcome before it replaces anything.

If you want to pursue this and get Ubuntu to replace wget with Aria2 as the default for Ubuntu, you'd have to talk to the Ubuntu developers on the ubuntu-devel mailing list. Expect resistance. You'll have to make arguments overcoming the above and you may have to do some of the work up front (eg providing a legacy handoff script as a wget binary replacement). It's possible, I'm sure it is but I won't lie and say it'll be easy.

The reason everybody uses wget is slightly cyclical. It's everywhere and everybody knows it. Until Aria2 (which I can barely type twice without spelling it incorrectly) is as omnipresent as wget, experienced users are going to keep using what they know if it's good enough. There's a lot of muscle memory to overcome.

Oli
  • 289,791
  • 117
  • 680
  • 835
  • Thanks, Since I installed Ubuntu, I had to install various tiny packages, whether as dependency or stand alone. Most of them have just the size of several KBs and get installed in the blink of an eye. So is the only advantage of `wget`, the fact that it's pre-installed on Ubuntu? As an experienced user, How do you appraise the operation of both `wget` and `aria2c` in comparison? – DummyBeginner Feb 02 '15 at 12:42
  • In terms of package downloads, I'm not sure Ubuntu or the mirrors really want people sending 10 connections per file! I've never used `aria2c`. `wget`, `rsync` or a proper torrent client has (to date) always been enough. – Oli Feb 02 '15 at 12:47
  • About package downloads, I just meant the `aria2c` package itself ,that installing a tiny package wouldn't be a hardship; Not installing Ubuntu packages through `aria2c`. I'm not interested to pursue the replacement of `wget` by `aria2c`. Just wanted to compare two download manager and hear potential benefits of `wget` which might be deprived of them, If I leave it without question. Also added a _Ps_ to the question, It's a general note though. – DummyBeginner Feb 02 '15 at 12:58
  • It's entirely likely that Aria2 *does* do a better job. Us old fogies just know what to expect from `wget`. Habits are hard to break. – Oli Feb 02 '15 at 13:05
  • Thanks. I almost got my answer in your last comment.I wasn't seeking why one is default or another isn't. Just about the usage of end users who have the choice. Although in the answer and reasons you mentioned about why `wget` is the default, I learnt new facts. And about replacement I agree with you that it would be hard (At least the size of the package, however, all reasons were considerable) And if the replacement needs to be done, The `aria2c` developer should go after it, Not me.It would be nice if you add your last comment under the answer too,As it made a clear statement of my question – DummyBeginner Feb 02 '15 at 13:17
  • 3
    Perhaps worth mentioning `curl` too. We can discuss the relative merits of these utils until the cows come home, but the playing field is already crowded by `wget` and `curl`, With `curl` probably in second place, that just adds to the inertia that `aria2c` would face to become the de-facto standard. I had never heard of `aria2c` before reading this question. – Digital Trauma Feb 02 '15 at 22:50
  • I think you have already mentioned a very important reason for its lack of popularity. `aria2c` is hard to type, to remember, and frankly I don't understand this name at all. – Siyuan Ren Feb 03 '15 at 07:38
  • `Modern internet connections cope fine with single-threaded downloads.` - err, if you're on wired connection, maybe, but on WiFi, multiple connections download significantly faster than a single connection between 2 computers on the same wifi network =/ – hanshenrik Dec 07 '20 at 05:03
  • @hanshenrik That comment is in the context of server. – Oli Dec 08 '20 at 13:47