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.1.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: mircheck-1.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 73673b516cda26ffdd32b7f473409b31c5167a32bdda3f9f10eb781555be9cab
MD5 2db94407c44618a0e2fe87769b1a59b7
BLAKE2b-256 4cbb7e1c7ec8a04bcea879b742601fc3fe3827a7c0360dc8d1c8b3e5ddb17156

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mircheck-1.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f917fa9174453a0070928fdb95d6e7443429630e5e807ba366414fb7daffdeb4
MD5 4ff884f8828e2f495c9517afef867f27
BLAKE2b-256 ccf85034d4813f2e4ff5c8433ef8ef762f3c490a45415da9fe0a9f135d4b67ac

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