Package: metalink
Version: 0.3.6-1
The current implementation of the command line arguments
handling in metalink(1) has several deficiencies:
• a single dash (‘-’) is not recognized as synonymous to
standard input, thus requiring a workaround (like using
‘/dev/stdin’ instead); compare:
$ metalink --nomirrors --alldigests /dev/stdin < /dev/null > /dev/null
Hashing '/dev/stdin' ...
$ metalink --nomirrors --alldigests - < /dev/null > /dev/null
Unable to open '-'
$
• the POSIX standard option terminator (‘--’) is not handled
properly in the presence of the single dash argument; compare:
$ metalink --nomirrors --alldigests -- - < /dev/null > /dev/null
Unable to open '--'
Unable to open '-'
$ metalink --nomirrors --alldigests -- /dev/stdin < /dev/null > /dev/null
Hashing '/dev/stdin' ...
$
Also, it would be nice if the base URI's could be specified via
command line options (instead of the standard input), as it
would enable one to, say:
$ find foo/ -type f \
-exec metalink --alldigests --base=http://example.com/ -- {} +
Currently, it's possible to use, e. g.:
$ printf %s\\n http://example.com/ \
| find foo/ -type f \
-exec metalink --alldigests -- {} +
instead, but it only works as long as all the arguments fit into
a single exec* () call. (Shouldn't be a problem on GNU/Hurd,
but may be one on GNU/Linux.)
--
FSF associate member #7257
pgpsVbdYXQ4MH.pgp
Description: PGP signature

