Intelligent Download Manager Service (project idea)

Technical contact: delphij@


The current FreeBSD ports infrastructure uses fetch(1) to get distfiles. This approach is simple and straightforward but have many shortcomings:

Desired workflow

The intelligent download manager consists two components. The first one is an agent, which is a command line tool that accepts information for downloading files (target directory and filename, URLs for downloading the file with an optional priority number, size, and even an expected cryptographical hash). The agent checks if there is a running instance of the service and invokes one if there is no one running, then submit these information to the service.

To simulate existing fetch(1) command which is script friendly, the agent should be able to work in blocking manner, where after it submits the request to download manager service, it wait for response and can optionally inquiry the service for status (where are we downloading from, how much data have been downloaded, etc) and present that to the user.

Required features

IdeasPage/IDMS (last edited 2013-03-21T23:09:12+0000 by XinLi)