{ "info": { "author": "Nir Cohen", "author_email": "nir36g@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: POSIX :: BSD", "Operating System :: POSIX :: BSD :: FreeBSD", "Operating System :: POSIX :: BSD :: NetBSD", "Operating System :: POSIX :: BSD :: OpenBSD", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Operating System" ], "description": "Distro - an OS platform information API\n=======================================\n\n[![Build Status](https://travis-ci.org/nir0s/distro.svg?branch=master)](https://travis-ci.org/nir0s/distro)\n[![Build status](https://ci.appveyor.com/api/projects/status/e812qjk1gf0f74r5/branch/master?svg=true)](https://ci.appveyor.com/project/nir0s/distro/branch/master)\n[![PyPI version](http://img.shields.io/pypi/v/distro.svg)](https://pypi.python.org/pypi/distro)\n[![Supported Python Versions](https://img.shields.io/pypi/pyversions/distro.svg)](https://img.shields.io/pypi/pyversions/distro.svg)\n[![Requirements Status](https://requires.io/github/nir0s/distro/requirements.svg?branch=master)](https://requires.io/github/nir0s/distro/requirements/?branch=master)\n[![Code Coverage](https://codecov.io/github/nir0s/distro/coverage.svg?branch=master)](https://codecov.io/github/nir0s/distro?branch=master)\n[![Code Quality](https://landscape.io/github/nir0s/distro/master/landscape.svg?style=flat)](https://landscape.io/github/nir0s/distro)\n[![Is Wheel](https://img.shields.io/pypi/wheel/distro.svg?style=flat)](https://pypi.python.org/pypi/distro)\n[![Latest Github Release](https://readthedocs.org/projects/distro/badge/?version=stable)](http://distro.readthedocs.io/en/latest/)\n[![Join the chat at https://gitter.im/nir0s/distro](https://badges.gitter.im/nir0s/distro.svg)](https://gitter.im/nir0s/distro?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)\n\n`distro` provides information about the\nOS distribution it runs on, such as a reliable machine-readable ID, or\nversion information.\n\nIt is the recommended replacement for Python's original\n[`platform.linux_distribution`](https://docs.python.org/3.7/library/platform.html#platform.linux_distribution)\nfunction (which will be removed in Python 3.8).\nIt also provides much more functionality which isn't necessarily Python bound,\nlike a command-line interface.\n\nDistro currently supports Linux and BSD based systems but [Windows and OS X support](https://github.com/nir0s/distro/issues/177) is also planned.\n\nFor Python 2.6 support, see https://github.com/nir0s/distro/tree/python2.6-support\n\n## Installation\n\nInstallation of the latest released version from PyPI:\n\n```shell\npip install distro\n```\n\nInstallation of the latest development version:\n\n```shell\npip install https://github.com/nir0s/distro/archive/master.tar.gz\n```\n\n\n## Usage\n\n```bash\n$ distro\nName: Antergos Linux\nVersion: 2015.10 (ISO-Rolling)\nCodename: ISO-Rolling\n\n$ distro -j\n{\n \"codename\": \"ISO-Rolling\",\n \"id\": \"antergos\",\n \"like\": \"arch\",\n \"version\": \"16.9\",\n \"version_parts\": {\n \"build_number\": \"\",\n \"major\": \"16\",\n \"minor\": \"9\"\n }\n}\n\n\n$ python\n>>> import distro\n>>> distro.linux_distribution(full_distribution_name=False)\n('centos', '7.1.1503', 'Core')\n```\n\n\n## Documentation\n\nOn top of the aforementioned API, several more functions are available. For a complete description of the\nAPI, see the [latest API documentation](http://distro.readthedocs.org/en/latest/).\n\n## Background\n\nAn alternative implementation became necessary because Python 3.5 deprecated\nthis function, and Python 3.8 will remove it altogether.\nIts predecessor function `platform.dist` was already deprecated since\nPython 2.6 and will also be removed in Python 3.8.\nStill, there are many cases in which access to that information is needed.\nSee [Python issue 1322](https://bugs.python.org/issue1322) for more\ninformation.\n\nThe `distro` package implements a robust and inclusive way of retrieving the\ninformation about a distribution based on new standards and old methods,\nnamely from these data sources (from high to low precedence):\n\n* The os-release file `/etc/os-release`, if present.\n* The output of the `lsb_release` command, if available.\n* The distro release file (`/etc/*(-|_)(release|version)`), if present.\n* The `uname` command for BSD based distrubtions.\n\n\n## Python and Distribution Support\n\n`distro` is supported and tested on Python 2.7, 3.4+ and PyPy and on\nany distribution that provides one or more of the data sources\ncovered.\n\nThis package is tested with test data that mimics the exact behavior of the data sources of [a number of Linux distributions](https://github.com/nir0s/distro/tree/master/tests/resources/distros).\n\n\n## Testing\n\n```shell\ngit clone git@github.com:nir0s/distro.git\ncd distro\npip install tox\ntox\n```\n\n\n## Contributions\n\nPull requests are always welcome to deal with specific distributions or just\nfor general merriment.\n\nSee [CONTRIBUTIONS](https://github.com/nir0s/distro/blob/master/CONTRIBUTING.md) for contribution info.\n\nReference implementations for supporting additional distributions and file\nformats can be found here:\n\n* https://github.com/saltstack/salt/blob/develop/salt/grains/core.py#L1172\n* https://github.com/chef/ohai/blob/master/lib/ohai/plugins/linux/platform.rb\n* https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/facts/system/distribution.py\n* https://github.com/puppetlabs/facter/blob/master/lib/src/facts/linux/os_linux.cc\n\n## Package manager distributions\n\n* https://src.fedoraproject.org/rpms/python-distro\n* https://www.archlinux.org/packages/community/any/python-distro/\n* https://launchpad.net/ubuntu/+source/python-distro\n* https://packages.debian.org/sid/python-distro\n* https://packages.gentoo.org/packages/dev-python/distro\n* https://pkgs.org/download/python2-distro\n* https://slackbuilds.org/repository/14.2/python/python-distro/\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/nir0s/distro", "keywords": "", "license": "Apache License, Version 2.0", "maintainer": "", "maintainer_email": "", "name": "distro", "package_url": "https://pypi.org/project/distro/", "platform": "All", "project_url": "https://pypi.org/project/distro/", "project_urls": { "Homepage": "https://github.com/nir0s/distro" }, "release_url": "https://pypi.org/project/distro/1.4.0/", "requires_dist": null, "requires_python": "", "summary": "Distro - an OS platform information API", "version": "1.4.0" }, "last_serial": 4776869, "releases": { "0.5.0": [ { "comment_text": "", "digests": { "md5": "8011869e59be4e05174ac64c9ce6da6a", "sha256": "873b3a87a5c69913d3d722d70370ffad65bbd21740770d5e6ef5acc2387f2174" }, "downloads": -1, "filename": "distro-0.5.0.tar.gz", "has_sig": false, "md5_digest": "8011869e59be4e05174ac64c9ce6da6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10519, "upload_time": "2016-04-21T05:55:47", "url": "https://files.pythonhosted.org/packages/b7/ff/876ab097c769295f880c9056d09c934f5c7c4c6054df1a83953b73f85f73/distro-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "f41649862818d798da1b1324eb8db9d4", "sha256": "671757a4438aa813723984e0e5800de76af6aef12e7bb2468f648d155a1472f6" }, "downloads": -1, "filename": "distro-0.6.0.tar.gz", "has_sig": false, "md5_digest": "f41649862818d798da1b1324eb8db9d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10518, "upload_time": "2016-04-21T05:56:07", "url": "https://files.pythonhosted.org/packages/01/9c/ea1b152ac247a5747598168b88ae82eb742461e2e556262ae741e69bd30f/distro-0.6.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "87a5ede695cdcc6ac2d503f8207d8ffd", "sha256": "bf8ac22bb0e2a7dcfd6e5d238fb2b009f71a78bb773e7d420605b27871f95754" }, "downloads": -1, "filename": "distro-1.0.0.tar.gz", "has_sig": false, "md5_digest": "87a5ede695cdcc6ac2d503f8207d8ffd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11094, "upload_time": "2016-09-26T06:39:21", "url": "https://files.pythonhosted.org/packages/15/97/e2d5863d03cd01b250e51117be031dab2ec0916efc5915f5094f5fd7602c/distro-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "4923b1bafbd394eb68a9118c846934bd", "sha256": "94977c5b2c225e2f6552c8773bfe6b76b55521add9fc52960de4b24bbb16c9df" }, "downloads": -1, "filename": "distro-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4923b1bafbd394eb68a9118c846934bd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15883, "upload_time": "2016-11-16T12:33:52", "url": "https://files.pythonhosted.org/packages/80/4e/22225a92917ebf7780ddb972e14add3d710c718ac00f152c7811ca07b4f3/distro-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1726863ed44003b4e52884f888918c4", "sha256": "b940995858ec63a29a272ddf7916818bb5cccb9297928fb8230fd37a146b1f26" }, "downloads": -1, "filename": "distro-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d1726863ed44003b4e52884f888918c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10864, "upload_time": "2016-11-03T06:30:40", "url": "https://files.pythonhosted.org/packages/0d/c5/de784640f0b434799d6eecb63baea9c099e7fe6c0908b4036c3a5200c281/distro-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "f3fb5b714b61a46ab67aba35e13a8979", "sha256": "b62e8e0cc6c7b5f688e7034358c770adb5b338c866100be0d62a8a38e5772767" }, "downloads": -1, "filename": "distro-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f3fb5b714b61a46ab67aba35e13a8979", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15904, "upload_time": "2017-01-12T10:06:25", "url": "https://files.pythonhosted.org/packages/64/4d/2d450e0a6dcf394bc0c581e499a66e00d255938f74db6b15748373d36cc4/distro-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "259e26a3a5a1c92faead7216cce433a9", "sha256": "77ec1f3695eed4dcda4e0e89d04dfcd91a20d3080d34f9294c5da47235382745" }, "downloads": -1, "filename": "distro-1.0.2.tar.gz", "has_sig": false, "md5_digest": "259e26a3a5a1c92faead7216cce433a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27787, "upload_time": "2017-01-12T10:06:27", "url": "https://files.pythonhosted.org/packages/42/ac/89b295d2784d450ca71ac6f3665cb90f07afe0928e4436af627983faf2b1/distro-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "9246867c8d100f7850ace4dc95f9df74", "sha256": "f9fe1179ef339cc9456f21f9445d92112ec8f5dbc639ea73ca76b3141de7cc93" }, "downloads": -1, "filename": "distro-1.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9246867c8d100f7850ace4dc95f9df74", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16037, "upload_time": "2017-03-19T10:12:58", "url": "https://files.pythonhosted.org/packages/4a/c2/50dbfaac03c14b8e155e4329553ef1f73a51a5c3cece8fb62e849c0785ed/distro-1.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5b16166628250c124fe722c6f45fd397", "sha256": "2d99cdfd48a72f5e5f8545a03ee320521af43bfc53d471f4adfaea3ec36fb2ce" }, "downloads": -1, "filename": "distro-1.0.3.tar.gz", "has_sig": false, "md5_digest": "5b16166628250c124fe722c6f45fd397", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28300, "upload_time": "2017-03-19T10:12:59", "url": "https://files.pythonhosted.org/packages/df/65/a8a94c1e069cf5f5bffab2a6b88d5a78089c60f2916e96d18b625731f191/distro-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "f645a9e41babe2ee3cb198c386399892", "sha256": "c6bbd046334248383199440a6163dcf9557585b6c192985020abefda84a4814c" }, "downloads": -1, "filename": "distro-1.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f645a9e41babe2ee3cb198c386399892", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16227, "upload_time": "2017-04-01T13:31:10", "url": "https://files.pythonhosted.org/packages/b5/82/363544dcfa3e7f1478e6839aa929a95ac6e1b0c3b56a277e6a6ef3ace2c9/distro-1.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1624fe57831ba50b2ecc850ff0dc86a8", "sha256": "9b000b0d637bb0cbd130a7a4835681e6993e309a85564dfea9d884825fe46954" }, "downloads": -1, "filename": "distro-1.0.4.tar.gz", "has_sig": false, "md5_digest": "1624fe57831ba50b2ecc850ff0dc86a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28772, "upload_time": "2017-04-01T13:31:13", "url": "https://files.pythonhosted.org/packages/aa/4e/2cf3e7f67abe101c053af838f8d9b3b5911fd9360b498a1ba66a23d1ed46/distro-1.0.4.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "301d1025bcfed8497f64b1834bc50ead", "sha256": "f0e43d555fd45eda71eb474c2927c17b75e0673bf13f90f70bdce5b1a90cf0c5" }, "downloads": -1, "filename": "distro-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "301d1025bcfed8497f64b1834bc50ead", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16281, "upload_time": "2017-11-28T09:11:27", "url": "https://files.pythonhosted.org/packages/b0/55/29bfd4d4d4149e860ed01aa446108eb17b240997b746c06a2d0c8ce04f69/distro-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc4c60a102271446a23ab20069a3453c", "sha256": "722054925f339a39ca411a8c7079f390a41d42c422697bedf228f1a9c46ac1ee" }, "downloads": -1, "filename": "distro-1.1.0.tar.gz", "has_sig": false, "md5_digest": "fc4c60a102271446a23ab20069a3453c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45669, "upload_time": "2017-11-28T09:11:30", "url": "https://files.pythonhosted.org/packages/21/7b/14198029b49abdf80c6b8aadd9862f863b683dc4d3c2418f01bc6fad9fa3/distro-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "a6c75226930c98396a72b8dd3c5b2b0f", "sha256": "49945b5696240ac95021bd4908c1ace423db3e5ecac05a85497e4b3662750766" }, "downloads": -1, "filename": "distro-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a6c75226930c98396a72b8dd3c5b2b0f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16288, "upload_time": "2017-12-24T18:08:18", "url": "https://files.pythonhosted.org/packages/c1/e4/933159b5f7f9f5b7ae463e76f58da84a30d0943ab3c162c366a9ad95f01e/distro-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1454c287f2931418eed41f498cc3018d", "sha256": "d94370e43b676ac44fbe1ab68ca903a6147eaba3a9e8eff85b2c05556a455b76" }, "downloads": -1, "filename": "distro-1.2.0.tar.gz", "has_sig": false, "md5_digest": "1454c287f2931418eed41f498cc3018d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45893, "upload_time": "2017-12-24T18:08:20", "url": "https://files.pythonhosted.org/packages/b2/2e/e4b8b7f947465474e58bc9dbaa6ea8c4b4cc9e845711c0fc2f66601e464b/distro-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "3c3ae6e8ea65f9c2611f83354a82d8dc", "sha256": "6ec8e539cf412830e5ccf521aecf879f2c7fcf60ce446e33cd16eef1ed8a0158" }, "downloads": -1, "filename": "distro-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3c3ae6e8ea65f9c2611f83354a82d8dc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16807, "upload_time": "2018-05-09T08:20:11", "url": "https://files.pythonhosted.org/packages/f6/b1/ba5a96bccd3496241d8908164b9502a129156443cdd5acbdbf04a90b7a09/distro-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ed993934da5ca740189541a2274781a4", "sha256": "224041cef9600e72d19ae41ba006e71c05c4dc802516da715d7fda55ba3d8742" }, "downloads": -1, "filename": "distro-1.3.0.tar.gz", "has_sig": false, "md5_digest": "ed993934da5ca740189541a2274781a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48067, "upload_time": "2018-05-09T08:20:14", "url": "https://files.pythonhosted.org/packages/d2/42/3b059929a920cd9d4e91e7a5e35f0d2ed75211f8f4e877be9d1bde9fdf46/distro-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "81fc137ea6700533b575dce004307c9e", "sha256": "eedf82a470ebe7d010f1872c17237c79ab04097948800029994fa458e52fb4b4" }, "downloads": -1, "filename": "distro-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "81fc137ea6700533b575dce004307c9e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17894, "upload_time": "2019-02-04T08:56:46", "url": "https://files.pythonhosted.org/packages/ea/35/82f79b92fa4d937146c660a6482cee4f3dfa1f97ff3d2a6f3ecba33e712e/distro-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2406d8efdb872c64a79e28967eff71a", "sha256": "362dde65d846d23baee4b5c058c8586f219b5a54be1cf5fc6ff55c4578392f57" }, "downloads": -1, "filename": "distro-1.4.0.tar.gz", "has_sig": false, "md5_digest": "f2406d8efdb872c64a79e28967eff71a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53719, "upload_time": "2019-02-04T08:56:48", "url": "https://files.pythonhosted.org/packages/ca/e3/78443d739d7efeea86cbbe0216511d29b2f5ca8dbf51a6f2898432738987/distro-1.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "81fc137ea6700533b575dce004307c9e", "sha256": "eedf82a470ebe7d010f1872c17237c79ab04097948800029994fa458e52fb4b4" }, "downloads": -1, "filename": "distro-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "81fc137ea6700533b575dce004307c9e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17894, "upload_time": "2019-02-04T08:56:46", "url": "https://files.pythonhosted.org/packages/ea/35/82f79b92fa4d937146c660a6482cee4f3dfa1f97ff3d2a6f3ecba33e712e/distro-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2406d8efdb872c64a79e28967eff71a", "sha256": "362dde65d846d23baee4b5c058c8586f219b5a54be1cf5fc6ff55c4578392f57" }, "downloads": -1, "filename": "distro-1.4.0.tar.gz", "has_sig": false, "md5_digest": "f2406d8efdb872c64a79e28967eff71a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53719, "upload_time": "2019-02-04T08:56:48", "url": "https://files.pythonhosted.org/packages/ca/e3/78443d739d7efeea86cbbe0216511d29b2f5ca8dbf51a6f2898432738987/distro-1.4.0.tar.gz" } ] }