ocr-text-processing / ocr-application /lib /python3.11 /site-packages /distro-1.9.0.dist-info /METADATA
| Metadata-Version: 2.1 | |
| Name: distro | |
| Version: 1.9.0 | |
| Summary: Distro - an OS platform information API | |
| Home-page: https://github.com/python-distro/distro | |
| Author: Nir Cohen | |
| Author-email: nir36g@gmail.com | |
| License: Apache License, Version 2.0 | |
| Platform: All | |
| Classifier: Development Status :: 5 - Production/Stable | |
| Classifier: Intended Audience :: Developers | |
| Classifier: Intended Audience :: System Administrators | |
| Classifier: License :: OSI Approved :: Apache Software License | |
| Classifier: Operating System :: POSIX :: Linux | |
| Classifier: Operating System :: POSIX :: BSD | |
| Classifier: Operating System :: POSIX :: BSD :: FreeBSD | |
| Classifier: Operating System :: POSIX :: BSD :: NetBSD | |
| Classifier: Operating System :: POSIX :: BSD :: OpenBSD | |
| Classifier: Programming Language :: Python :: 3 | |
| Classifier: Programming Language :: Python :: 3 :: Only | |
| Classifier: Programming Language :: Python :: 3.6 | |
| Classifier: Programming Language :: Python :: 3.7 | |
| Classifier: Programming Language :: Python :: 3.8 | |
| Classifier: Programming Language :: Python :: 3.9 | |
| Classifier: Programming Language :: Python :: 3.10 | |
| Classifier: Programming Language :: Python :: 3.11 | |
| Classifier: Programming Language :: Python :: 3.12 | |
| Classifier: Topic :: Software Development :: Libraries :: Python Modules | |
| Classifier: Topic :: System :: Operating System | |
| Requires-Python: >=3.6 | |
| Description-Content-Type: text/markdown | |
| License-File: LICENSE | |
| Distro - an OS platform information API | |
| ======================================= | |
| [](https://github.com/python-distro/distro/actions/workflows/ci.yaml) | |
| [](https://pypi.python.org/pypi/distro) | |
| [](https://img.shields.io/pypi/pyversions/distro.svg) | |
| [](https://codecov.io/github/python-distro/distro?branch=master) | |
| [](https://pypi.python.org/pypi/distro) | |
| [](http://distro.readthedocs.io/en/latest/) | |
| `distro` provides information about the | |
| OS distribution it runs on, such as a reliable machine-readable ID, or | |
| version information. | |
| It is the recommended replacement for Python's original | |
| [`platform.linux_distribution`](https://docs.python.org/3.7/library/platform.html#platform.linux_distribution) | |
| function (removed in Python 3.8). It also provides much more functionality | |
| which isn't necessarily Python bound, like a command-line interface. | |
| Distro currently supports Linux and BSD based systems but [Windows and OS X support](https://github.com/python-distro/distro/issues/177) is also planned. | |
| For Python 2.6 support, see https://github.com/python-distro/distro/tree/python2.6-support | |
| ## Installation | |
| Installation of the latest released version from PyPI: | |
| ```shell | |
| pip install distro | |
| ``` | |
| Installation of the latest development version: | |
| ```shell | |
| pip install https://github.com/python-distro/distro/archive/master.tar.gz | |
| ``` | |
| To use as a standalone script, download `distro.py` directly: | |
| ```shell | |
| curl -O https://raw.githubusercontent.com/python-distro/distro/master/src/distro/distro.py | |
| python distro.py | |
| ``` | |
| ``distro`` is safe to vendor within projects that do not wish to add | |
| dependencies. | |
| ```shell | |
| cd myproject | |
| curl -O https://raw.githubusercontent.com/python-distro/distro/master/src/distro/distro.py | |
| ``` | |
| ## Usage | |
| ```bash | |
| $ distro | |
| Name: Antergos Linux | |
| Version: 2015.10 (ISO-Rolling) | |
| Codename: ISO-Rolling | |
| $ distro -j | |
| { | |
| "codename": "ISO-Rolling", | |
| "id": "antergos", | |
| "like": "arch", | |
| "version": "16.9", | |
| "version_parts": { | |
| "build_number": "", | |
| "major": "16", | |
| "minor": "9" | |
| } | |
| } | |
| $ python | |
| >>> import distro | |
| >>> distro.name(pretty=True) | |
| 'CentOS Linux 8' | |
| >>> distro.id() | |
| 'centos' | |
| >>> distro.version(best=True) | |
| '8.4.2105' | |
| ``` | |
| ## Documentation | |
| On top of the aforementioned API, several more functions are available. For a complete description of the | |
| API, see the [latest API documentation](http://distro.readthedocs.org/en/latest/). | |
| ## Background | |
| An alternative implementation became necessary because Python 3.5 deprecated | |
| this function, and Python 3.8 removed it altogether. Its predecessor function | |
| [`platform.dist`](https://docs.python.org/3.7/library/platform.html#platform.dist) | |
| was already deprecated since Python 2.6 and removed in Python 3.8. Still, there | |
| are many cases in which access to that information is needed. See [Python issue | |
| 1322](https://bugs.python.org/issue1322) for more information. | |
| The `distro` package implements a robust and inclusive way of retrieving the | |
| information about a distribution based on new standards and old methods, | |
| namely from these data sources (from high to low precedence): | |
| * The os-release file `/etc/os-release` if present, with a fall-back on `/usr/lib/os-release` if needed. | |
| * The output of the `lsb_release` command, if available. | |
| * The distro release file (`/etc/*(-|_)(release|version)`), if present. | |
| * The `uname` command for BSD based distrubtions. | |
| ## Python and Distribution Support | |
| `distro` is supported and tested on Python 3.6+ and PyPy and on any | |
| distribution that provides one or more of the data sources covered. | |
| This package is tested with test data that mimics the exact behavior of the data sources of [a number of Linux distributions](https://github.com/python-distro/distro/tree/master/tests/resources/distros). | |
| ## Testing | |
| ```shell | |
| git clone git@github.com:python-distro/distro.git | |
| cd distro | |
| pip install tox | |
| tox | |
| ``` | |
| ## Contributions | |
| Pull requests are always welcome to deal with specific distributions or just | |
| for general merriment. | |
| See [CONTRIBUTIONS](https://github.com/python-distro/distro/blob/master/CONTRIBUTING.md) for contribution info. | |
| Reference implementations for supporting additional distributions and file | |
| formats can be found here: | |
| * https://github.com/saltstack/salt/blob/develop/salt/grains/core.py#L1172 | |
| * https://github.com/chef/ohai/blob/master/lib/ohai/plugins/linux/platform.rb | |
| * https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/facts/system/distribution.py | |
| * https://github.com/puppetlabs/facter/blob/master/lib/src/facts/linux/os_linux.cc | |
| ## Package manager distributions | |
| * https://src.fedoraproject.org/rpms/python-distro | |
| * https://www.archlinux.org/packages/community/any/python-distro/ | |
| * https://launchpad.net/ubuntu/+source/python-distro | |
| * https://packages.debian.org/stable/python3-distro | |
| * https://packages.gentoo.org/packages/dev-python/distro | |
| * https://pkgs.org/download/python3-distro | |
| * https://slackbuilds.org/repository/14.2/python/python-distro/ | |