diff options
author | Dave Reisner <dreisner@archlinux.org> | 2012-04-25 22:28:39 -0400 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2012-06-25 23:39:28 -0500 |
commit | ab8431c92953c4562af214e5170f8ef321037108 (patch) | |
tree | d1f0fdc0556d60648ff44be0217c3c57e25cdfaf | |
parent | b58489d29a1898a4bff1b5da6ca4bfb14003dbfe (diff) |
pkgdelta: use human_to_size to parse --min-pkg-size
Update the documentation accordingly to mention that users can expect
huamn readable sizes to be acceptable.
Signed-off-by: Dave Reisner <dreisner@archlinux.org>
-rw-r--r-- | doc/pkgdelta.8.txt | 3 | ||||
-rw-r--r-- | scripts/pkgdelta.sh.in | 13 |
2 files changed, 9 insertions, 7 deletions
diff --git a/doc/pkgdelta.8.txt b/doc/pkgdelta.8.txt index 5913dba6..587320a6 100644 --- a/doc/pkgdelta.8.txt +++ b/doc/pkgdelta.8.txt @@ -35,7 +35,8 @@ Options *--min-pkg-size <size>*:: Minimal size of the package file in bytes to be considered for delta creation. - Default value: 1048576 bytes = 1MiB + Default value: 1048576 bytes = 1MiB. This may be any absolute size in bytes, or + a human readable value such as `4 MiB` or `3.5MB`. *-q, \--quiet*:: Be quiet. Do not output anything but warnings and errors. diff --git a/scripts/pkgdelta.sh.in b/scripts/pkgdelta.sh.in index 03193667..3d80261f 100644 --- a/scripts/pkgdelta.sh.in +++ b/scripts/pkgdelta.sh.in @@ -54,8 +54,8 @@ This delta file can then be added to a database using repo-add.\n\n")" echo printf -- "$(gettext "Options:\n")" printf -- "$(gettext " -q, --quiet minimize output\n")" - printf -- "$(gettext " --min-pkg-size minimum package size before deltas are generated (bytes)\n")" - printf -- "$(gettext " --max-delta-size percent of package size above which deltas will be discarded\n")" + printf -- "$(gettext " --min-pkg-size minimum package size before deltas are generated\n")" + printf -- "$(gettext " --max-delta-size percent of new package above which the delta will be discarded\n")" } version() { @@ -66,6 +66,8 @@ This is free software; see the source for copying conditions.\n\ There is NO WARRANTY, to the extent permitted by law.\n")" } +m4_include(library/human_to_size.sh) + isnumeric() { [[ $1 != *[!0-9]* ]] } @@ -176,15 +178,14 @@ while :; do -q|--quiet) QUIET=1;; --min-pkg-size) - if ! isnumeric "$2"; then + if ! min_pkg_size=$(human_to_size "$2"); then echo "invalid argument '$2' for option -- '$1'" exit 1 fi - min_pkg_size=$2 shift ;; --max-delta-size) - arg=$(echo "$2" | awk '{print $1 * 100}') - if ! isnumeric "$arg" || (($arg > 200)); then + arg=$(awk -v val="$2" 'BEGIN { print val * 100 }') + if ! isnumeric "$arg" || (( arg > 200 )); then echo "invalid argument '$2' for option -- '$1'" exit 1 fi |