[pacman-dev] [PATCH] rankmirrors: Add a --repo option to target a specific repo

Dan McGee dpmcgee at gmail.com
Thu May 6 18:49:59 CEST 2010


I can't get this to apply. Can you try resending and making sure
spaces don't get eaten and it isn't base64 encoded?

-Dan

On Wed, Mar 31, 2010 at 12:51 PM, Daenyth Blank <daenyth+arch at gmail.com> wrote:
> ---
>  scripts/rankmirrors.sh.in |   19 ++++++++++++++-----
>  1 files changed, 14 insertions(+), 5 deletions(-)
>
> diff --git a/scripts/rankmirrors.sh.in b/scripts/rankmirrors.sh.in
> index d5cbadd..54b04e0 100644
> --- a/scripts/rankmirrors.sh.in
> +++ b/scripts/rankmirrors.sh.in
> @@ -35,6 +35,7 @@ usage() {
>        echo "  -t, --times    only output mirrors and their response times"
>        echo "  -u, --url      test a specific url"
>        echo "  -v, --verbose  be verbose in ouptut"
> +       echo "  -r, --repo     specify a specific repo name instead of guessing"
>        exit 0
>  }
>
> @@ -69,13 +70,18 @@ ARCH="$(uname -m)"
>  getfetchurl() {
>        local strippedurl="${1%/}"
>
> -       local replacedurl="${strippedurl//'$repo'/core}"
> -       replacedurl="${replacedurl//'$arch'/$ARCH}"
> +       local replacedurl="${replacedurl//'$arch'/$ARCH}"
> +       if [[ $TARGETREPO ]]; then
> +               replacedurl="${strippedurl//'$repo'/core}"
> +               local tmp="${replacedurl%/*}"
> +               tmp="${tmp%/*}"
>
> -       local tmp="${replacedurl%/*}"
> -       tmp="${tmp%/*}"
> +               local reponame="${tmp##*/}"
> +       else
> +               replacedurl="${strippedurl//'$repo'/$TARGETREPO}"
> +               local reponame="$TARGETREPO"
> +       fi
>
> -       local reponame="${tmp##*/}"
>        if [[ -z $reponame || $reponame = $replacedurl ]]; then
>                echo "fail"
>        else
> @@ -119,6 +125,7 @@ while [[ $1 ]]; do
>                        times) TIMESONLY=1 ; shift ;;
>                        verbose) VERBOSE=1 ; shift ;;
>                        url) CHECKURL=1; [[ $2 ]] || err "Must specify
> url."; URL="$2"; shift 2;;
> +                       repo) [[ $2 ]] || err "Must specify repo
> name."; TARGETREPO="$2"; shift 2;;
>                        *) err "\`$1' is an invalid argument."
>                esac
>        elif [[ ${1:0:1} = - ]]; then
> @@ -136,6 +143,7 @@ while [[ $1 ]]; do
>                                        t) TIMESONLY=1 ;;
>                                        v) VERBOSE=1 ;;
>                                        u) CHECKURL=1; [[ $2 ]] || err
> "Must specify url."; URL="$2"; snum=2;;
> +                                       r) [[ $2 ]] || err "Must
> specify repo name."; TARGETREPO="$2"; snum=2;;
>                                        n) [[ $2 ]] || err "Must
> specify number." ; NUM="$2" ; snum=2;;
>                                        *) err "\`-$1' is an invald argument." ;;
>                                esac
> @@ -182,6 +190,7 @@ for line in  "${linearray[@]}"; do
>
>                # Getting values and times and such
>                server="${line#*= }"
> +               server="${server%%#*}"
>                url="$(getfetchurl "$server")"
>                [[ $url = fail ]] && err "url \`$URL' is malformed."
>                time=$(gettime "$url")
> --
> 1.7.0
>
>


More information about the pacman-dev mailing list