Skip to main content

A tool to find the fastest mirror for Ubuntu and its derivatives

Project description

Mircheck - Fastest Mirror Selector for Ubuntu and it's derivatives

This script helps you find the fastest mirror for your Ubuntu and it's derivatives and generates a sources.list file accordingly. It downloads the Release file from each mirror to measure the speed and identifies the fastest one.

Requirements

  • Python 3.6 or higher
  • requests library

Installation

  1. Recommended - Using PIP

    pip install mircheck
    
  2. Clone the repository:

    git clone https://github.com/arkrwn/mircheck.git
    cd mircheck/mircheck
    pip install -r ../requirements.txt
    chmod +x main.py
    

Usage

Install using pip: `mircheck [options] <distribution> <country>`
Install using git: `./mircheck [options] <distribution> <country>`

Positional Arguments

  • distribution: Distribution code name (e.g., jammy, bionic).
  • country: Country code or name.

Options

  • -a, --arch ARCH: Specify architecture (e.g., amd64, arm64). Default is the architecture of the current machine.
  • -s, --sources: Include deb-src lines in the generated sources.list.
  • -o, --outfile OUTFILE: Output file for sources.list. Default is ./sources.list.
  • -n, --nonfree: Include non-free section in the generated sources.list.
  • -d, --distribution_type {stable, testing, unstable, experimental, release_codename, sid}: Specify which distribution of Debian to use. Default is stable.

Examples

  1. Find the fastest mirror for Ubuntu jammy in Indonesia and save to the current directory:

    mircheck jammy id
    
  2. Find the fastest mirror for Debian stable in Germany and include source lines:

    mircheck stable germany -s
    
  3. Find the fastest mirror for Ubuntu bionic in the USA and save to a custom path:

    mircheck bionic us -o /path/to/custom/sources.list
    

Output

The script will test each mirror's speed and display the results in kilobytes per second (KB/s). It will identify the fastest mirror and generate a sources.list file with the appropriate entries.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contributing

Feel free to submit issues and pull requests. For major changes, please open an issue first to discuss what you would like to change.

Acknowledgements

  • The Ubuntu for providing mirror lists.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mircheck-1.1.4.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

mircheck-1.1.4-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file mircheck-1.1.4.tar.gz.

File metadata

  • Download URL: mircheck-1.1.4.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.9

File hashes

Hashes for mircheck-1.1.4.tar.gz
Algorithm Hash digest
SHA256 dc4fd13757f68288bd5eccdc8363d044ed5e6c33cc3eaf00a4eec93d19d2bec3
MD5 f6f186b3fdbea8a2b898d79fc14ae037
BLAKE2b-256 174bab1373df85b8fc47265ef487a5c0a317edee08c9035cf6ffc872c706c155

See more details on using hashes here.

File details

Details for the file mircheck-1.1.4-py3-none-any.whl.

File metadata

  • Download URL: mircheck-1.1.4-py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.9

File hashes

Hashes for mircheck-1.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 1d184329daf60cffc5686d50c02c5a1ca44ced36644934af2252662258c8a81b
MD5 1818b931087044eb1075ee98cf1221ae
BLAKE2b-256 09807655c51df37059d61eee03ca53730a93dd09630e166f8f52af071b6f16d3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page