summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <git@the-compiler.org>2017-08-08 20:19:33 +0200
committerFlorian Bruhin <git@the-compiler.org>2017-08-08 21:29:07 +0200
commite50b7b65a48ef137a04b2becfc82b78cc354c224 (patch)
tree8647dc22f6280186cf69233b181e944428b40500
parent1aefaaf7c74136138ed4084d503d20159ec187ec (diff)
downloadqutebrowser-e50b7b65a48ef137a04b2becfc82b78cc354c224.tar.gz
qutebrowser-e50b7b65a48ef137a04b2becfc82b78cc354c224.zip
version.distribution(): Handle Funtoo
-rw-r--r--qutebrowser/utils/version.py7
-rw-r--r--tests/unit/utils/test_version.py9
2 files changed, 15 insertions, 1 deletions
diff --git a/qutebrowser/utils/version.py b/qutebrowser/utils/version.py
index e1cc26e64..3d712e57a 100644
--- a/qutebrowser/utils/version.py
+++ b/qutebrowser/utils/version.py
@@ -81,6 +81,8 @@ def distribution():
return None
pretty = info.get('PRETTY_NAME', 'Unknown')
+ if pretty == 'Linux': # Thanks, Funtoo
+ pretty = info.get('NAME', pretty)
if 'VERSION_ID' in info:
dist_version = pkg_resources.parse_version(info['VERSION_ID'])
@@ -88,8 +90,11 @@ def distribution():
dist_version = None
dist_id = info.get('ID', None)
+ id_mappings = {
+ 'funtoo': 'gentoo', # does not have ID_LIKE=gentoo
+ }
try:
- parsed = Distribution[dist_id]
+ parsed = Distribution[id_mappings.get(dist_id, dist_id)]
except KeyError:
parsed = Distribution.unknown
diff --git a/tests/unit/utils/test_version.py b/tests/unit/utils/test_version.py
index 32c3fcf5c..c9c97c6b8 100644
--- a/tests/unit/utils/test_version.py
+++ b/tests/unit/utils/test_version.py
@@ -163,6 +163,15 @@ from qutebrowser.browser import pdfjs
version.DistributionInfo(
id='manjaro', parsed=version.Distribution.manjaro,
version=None, pretty='Manjaro Linux')),
+ # Funtoo
+ ("""
+ ID="funtoo"
+ NAME="Funtoo GNU/Linux"
+ PRETTY_NAME="Linux"
+ """,
+ version.DistributionInfo(
+ id='funtoo', parsed=version.Distribution.gentoo,
+ version=None, pretty='Funtoo GNU/Linux')),
])
def test_distribution(tmpdir, monkeypatch, os_release, expected):
os_release_file = tmpdir / 'os-release'