3
# DP: Use /etc/lsb-release to identify the platform.
6
if [ $# -eq 3 -a "$2" = '-d' ]; then
9
elif [ $# -ne 1 ]; then
10
echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
15
patch $pdir -f --no-backup-if-mismatch -p0 < $0
18
patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
21
echo >&2 "usage: `basename $0`: -patch|-unpatch [-d <srcdir>]"
26
--- Lib/platform.py.orig 2008-10-25 17:49:17.000000000 +0200
27
+++ Lib/platform.py 2009-03-19 10:50:23.000000000 +0100
30
return '', version, id
32
+_distributor_id_file_re = re.compile("(?:DISTRIB_ID\s*=)\s*(.*)", re.I)
33
+_release_file_re = re.compile("(?:DISTRIB_RELEASE\s*=)\s*(.*)", re.I)
34
+_codename_file_re = re.compile("(?:DISTRIB_CODENAME\s*=)\s*(.*)", re.I)
36
def linux_distribution(distname='', version='', id='',
38
supported_dists=_supported_dists,
40
args given as parameters.
43
+ # check for the Debian/Ubuntu /etc/lsb-release file first, needed so
44
+ # that the distribution doesn't get identified as Debian.
46
+ etclsbrel = open("/etc/lsb-release", "rU")
47
+ for line in etclsbrel:
48
+ m = _distributor_id_file_re.search(line)
50
+ _u_distname = m.group(1).strip()
51
+ m = _release_file_re.search(line)
53
+ _u_version = m.group(1).strip()
54
+ m = _codename_file_re.search(line)
56
+ _u_id = m.group(1).strip()
57
+ if _u_distname and _u_version:
58
+ return (_u_distname, _u_version, _u_id)
59
+ except (EnvironmentError, UnboundLocalError):
63
etc = os.listdir('/etc')