OpenDirectoryDownloader icon indicating copy to clipboard operation
OpenDirectoryDownloader copied to clipboard

Support RFC5854 metalink file output

Open hofmand opened this issue 4 years ago • 7 comments

Metalink files are XML files that provide more information than just the filename, such as file sizes, dates, and cryptographic hashes. Aria2c can read these files directly. You can add the statistics for an OpenDirectory in an XML comment at the top, consolidating the metadata and data into a single file.

You might not want estimated file sizes in the file unless the user chooses --exact-file-sizes but again you can add the estimated file sizes as comments. When you get downloading working, you could calculate a hash and add that in to help someone else's aria2c to verify their download, or even as a way to fingerprint your own files as a way to detect future file corruption.

And XML files give you the ability to transform them into any format you want just by writing a stylesheet.

hofmand avatar Apr 11 '20 11:04 hofmand

Hi hofmand,

Ah, I never heard of it. That would be something nice. I definitely want to check this out. Hopefully 'soon'.

Thanks!

Reference: https://en.wikipedia.org/wiki/Metalink

KoalaBear84 avatar Apr 11 '20 12:04 KoalaBear84

I think this format would be an even better approach than #46, right? @MCOfficer

Chaphasilor avatar Jan 27 '21 22:01 Chaphasilor

Right, aria2c actually supports metalink. Good spot.

MCOfficer avatar Jan 28 '21 08:01 MCOfficer

wget and JDownloader also support metalink, which is nice 😁

Chaphasilor avatar Jan 29 '21 14:01 Chaphasilor

Relevant: https://daniel.haxx.se/blog/2021/06/07/bye-bye-metalink-in-curl/

Chaphasilor avatar Jun 07 '21 14:06 Chaphasilor

@Chaphasilor Spreading the news while it's happening!

Hmm. So that is a blow for the support for it.

KoalaBear84 avatar Jun 07 '21 15:06 KoalaBear84

I mean in all honesty anything related to ODs isn't really secure, but we should keep it in mind.
Curl isn't a downloader, and wget, aria2, etc. have supported it for quite some time now, so it might still be a good idea to support it, depending on how easy it is to generate the metalink output.
It most likely isn't a security concern for ODD itself...

Chaphasilor avatar Jun 07 '21 15:06 Chaphasilor

Sadly support for it is already removed in curl and wget, so now there isn't any support anymore anywhere 🙃

https://github.com/curl/curl/pull/7176

KoalaBear84 avatar Jan 15 '23 22:01 KoalaBear84