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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: mircheck-1.1.3.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.3.tar.gz
Algorithm Hash digest
SHA256 bbce2dbd663a28b3aa878ec5f4e725534e05a3d2ed4c13af722929237c0d85a6
MD5 178566d836153a40634f09c20319067d
BLAKE2b-256 bbf59f1b04667dccff23f28803d26917630c73fe0fd940035f45155beb47cb34

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mircheck-1.1.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 de0ca81afea70a05cdf828cbc031742b27ef3c556ef096b86af8cf27706db450
MD5 14598138374f8a813df99b844c365082
BLAKE2b-256 8b5faeec399c243c6171e5567bc9a4f9757006cf989111f673297d6815a78346

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