From: Zac Medico Date: Wed, 4 Jun 2008 03:47:56 +0000 (-0000) Subject: Use "platform" module instead of os.uname, or -- even worse -- a system X-Git-Tag: v2.2_pre8~27 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=cc04625c811f511c3fcba7eeaab2f246968b9fc3;p=portage.git Use "platform" module instead of os.uname, or -- even worse -- a system call to uname. Change repoman's identification string not to use "processor" on Linux (where it is huge), Interix (where it doesn't exist) and AIX/HP-UX (where it prints "unknown"), but "machine" instead. (branches/prefix r10554) svn path=/main/trunk/; revision=10574 --- diff --git a/bin/repoman b/bin/repoman index 7f381da94..cf8047eaf 100755 --- a/bin/repoman +++ b/bin/repoman @@ -20,6 +20,7 @@ import stat import sys import tempfile import time +import platform from itertools import izip from stat import S_ISDIR, ST_CTIME @@ -1754,7 +1755,11 @@ else: sys.stderr.write("Failed to insert portage version in message!\n") sys.stderr.flush() portage_version = "Unknown" - unameout = commands.getstatusoutput("uname -srp")[1] + unameout = platform.system() + " " + platform.release() + " " + if platform.system() in ["Darwin", "SunOS"]: + unameout += platform.processor() + else: + unameout += platform.machine() commitmessage+="\n(Portage version: "+str(portage_version)+"/"+vcs+"/"+unameout if options.force: commitmessage += ", RepoMan options: --force" diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 3423ec241..051d6dd4a 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -29,6 +29,7 @@ try: from random import shuffle import UserDict from itertools import chain, izip + import platform except ImportError, e: sys.stderr.write("\n\n") sys.stderr.write("!!! Failed to complete python imports. These are internal modules for\n") @@ -41,7 +42,7 @@ except ImportError, e: raise bsd_chflags = None -if os.uname()[0] in ["FreeBSD"]: +if platform.system() in ["FreeBSD"]: def bsd_chflags(): pass def _chflags(path, flags, opts=""): diff --git a/pym/portage/data.py b/pym/portage/data.py index 5fc811e43..5f4d05630 100644 --- a/pym/portage/data.py +++ b/pym/portage/data.py @@ -3,13 +3,13 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -import os, sys, pwd, grp +import os, sys, pwd, grp, platform from portage.util import writemsg from portage.output import green,red from portage.output import create_color_func bad = create_color_func("BAD") -ostype=os.uname()[0] +ostype=platform.system() userland = None if ostype == "DragonFly" or ostype.endswith("BSD"): userland = "BSD"