diff options
author | Igor Pashev <igor.pashev@nexenta.com> | 2013-04-17 14:08:01 +0400 |
---|---|---|
committer | Igor Pashev <igor.pashev@nexenta.com> | 2013-04-17 14:08:01 +0400 |
commit | 207cd347945b53a1034d0ed8ad35037cf497e471 (patch) | |
tree | 455f399a5c405141b9c2fe500bcf9be05534d304 /examples/python2.7/patches/platform-lsbrelease.diff | |
parent | 62c2114fcab6cf9826089109633117494ace630e (diff) | |
download | cibs-207cd347945b53a1034d0ed8ad35037cf497e471.tar.gz |
Examples: vim & python
Diffstat (limited to 'examples/python2.7/patches/platform-lsbrelease.diff')
-rw-r--r-- | examples/python2.7/patches/platform-lsbrelease.diff | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/examples/python2.7/patches/platform-lsbrelease.diff b/examples/python2.7/patches/platform-lsbrelease.diff new file mode 100644 index 0000000..cd6f7d1 --- /dev/null +++ b/examples/python2.7/patches/platform-lsbrelease.diff @@ -0,0 +1,41 @@ +# DP: Use /etc/lsb-release to identify the platform. + +--- a/Lib/platform.py ++++ b/Lib/platform.py +@@ -288,6 +288,10 @@ + id = l[1] + return '', version, id + ++_distributor_id_file_re = re.compile("(?:DISTRIB_ID\s*=)\s*(.*)", re.I) ++_release_file_re = re.compile("(?:DISTRIB_RELEASE\s*=)\s*(.*)", re.I) ++_codename_file_re = re.compile("(?:DISTRIB_CODENAME\s*=)\s*(.*)", re.I) ++ + def linux_distribution(distname='', version='', id='', + + supported_dists=_supported_dists, +@@ -312,6 +316,25 @@ + args given as parameters. + + """ ++ # check for the Debian/Ubuntu /etc/lsb-release file first, needed so ++ # that the distribution doesn't get identified as Debian. ++ try: ++ etclsbrel = open("/etc/lsb-release", "rU") ++ for line in etclsbrel: ++ m = _distributor_id_file_re.search(line) ++ if m: ++ _u_distname = m.group(1).strip() ++ m = _release_file_re.search(line) ++ if m: ++ _u_version = m.group(1).strip() ++ m = _codename_file_re.search(line) ++ if m: ++ _u_id = m.group(1).strip() ++ if _u_distname and _u_version: ++ return (_u_distname, _u_version, _u_id) ++ except (EnvironmentError, UnboundLocalError): ++ pass ++ + try: + etc = os.listdir('/etc') + except os.error: |