reflector

2013-05-12 22:34 UTC
  • Xyne

Metadata

Description:

A Python 3 module and script to retrieve and filter the latest Pacman mirror list.

Latest Version:

2013

Architecture:

  • any

Dependencies:

  • python3

Arch Repositories:

  • [community]
  • [xyne-any]
  • [xyne-i686]
  • [xyne-x86_64]

Arch Forum ID:

115714

Tags:

About

Reflector retrieves information from archlinux.org's Mirror Status service via the JSON interface and filters servers based on user options to generate Pacman mirrorlists. Please see reflector --help for details.

Acknowledgement

Thanks to Pierre for creating the previous MirrorStatus interface for Reflector on archlinux.de.

Help Message

$ reflector --help

usage: reflector [-h] [--connection-timeout n] [--list-countries]
                 [--cache-timeout n] [--save <filepath>]
                 [--sort {delay,rate,country,score,age}] [--threads n]
                 [--verbose] [-a n] [-c <country>] [-f n] [-i <regex>]
                 [-x <regex>] [-l n] [-n n] [-p <protocol>]

retrieve and filter a list of the latest Arch Linux mirrors

optional arguments:
  -h, --help            show this help message and exit
  --connection-timeout n
                        The number of seconds to wait before a connection
                        times out.
  --list-countries      Display a table of the distribution of servers by
                        country.
  --cache-timeout n     The cache timeout in seconds for the data retrieved
                        from the Arch Linux Mirror Status API. The default is
                        300 (5 minutes).
  --save <filepath>     Save the mirrorlist to the given path.
  --sort {delay,rate,country,score,age}
                        Sort the mirrorlist: "delay": MirrorStatus delay;
                        "rate": download rate; "country": server's location;
                        "score": MirrorStatus score; "age": last server
                        synchronization.
  --threads n           The number of threads to use when rating mirrors.
  --verbose             Print extra information to STDOUT. Only works with
                        some options.

filters:
  The following filters are inclusive, i.e. the returned list will only
  contain mirrors for which all of the given conditions are met.

  -a n, --age n         Only return mirrors that have synchronized in the last
                        n hours. n may be an integer or a decimal number.
  -c <country>, --country <country>
                        Match one of the given countries (case-sensitive). Use
                        "--list-countries" to see which are available.
  -f n, --fastest n     Return the n fastest mirrors that meet the other
                        criteria. Do not use this option without other
                        filtering options.
  -i <regex>, --include <regex>
                        Include servers that match <regex>, where <regex> is a
                        Python regular express.
  -x <regex>, --exclude <regex>
                        Exclude servers that match <regex>, where <regex> is a
                        Python regular express.
  -l n, --latest n      Limit the list to the n most recently synchronized
                        servers.
  -n n, --number n      Return at most n mirrors.
  -p <protocol>, --protocol <protocol>
                        Match one of the given protocols, e.g. "http", "ftp".

CHANGELOG

2013-01-04

  • added --include and --exclude filter options
  • removed --grep option (replaced by --include)

2012-06-28

  • added JSON data caching to avoid redundant connections to archlinux.org
  • added --connection-timeout and --cache-timeout options

2012-03-24

  • added "delay" and "score" to sort options

2011-03-25

  • rewritten in Python 3 following the deprecation of the perl-xyne-arch package
Contact
echo xyne.archlinux.ca | sed 's/\./@/'
Feeds
Blog News
Validation
XHTML 1.0 Strict CSS level 3 Atom 1.0