Hi, Thanks for the tip. I came up with the solution below. For my purposes the short fingerprint is enough.
Laszlo ====== import platform as p import uuid import hashlib def get_fingerprint(md5=False): """ Fingerprint of the current operating system/platform. If md5 is True, a digital fingerprint is returned. """ sb = [] sb.append(p.node()) sb.append(p.architecture()[0]) sb.append(p.architecture()[1]) sb.append(p.machine()) sb.append(p.processor()) sb.append(p.system()) sb.append(str(uuid.getnode())) # MAC address text = '#'.join(sb) if md5: md5 = hashlib.md5() md5.update(text) return md5.hexdigest() else: return text def get_short_fingerprint(length=6): """ A short digital fingerprint of the current operating system/platform. Length should be at least 6 characters. """ assert 6 <= length <= 32 # return get_fingerprint(md5=True)[-length:] On Tue, Jan 29, 2013 at 2:43 PM, Andrew Berg <bahamutzero8...@gmail.com> wrote: > On 2013.01.29 07:18, Jabba Laci wrote: >> Hi, >> >> I have a script that I want to run in different environments: on >> Linux, on Windows, on my home machine, at my workplace, in virtualbox, >> etc. In each environment I want to use different configurations. For >> instance the temp. directory on Linux would be /tmp, on Windows >> c:\temp, etc. When the script starts, I want to test the environment >> and load the corresponding config. settings. How to get an >> OS-independent fingerprint of the environment? > http://docs.python.org/3.3/library/platform.html > http://docs.python.org/3.3/library/os.html#os.environ > > -- > CPython 3.3.0 | Windows NT 6.2.9200.16461 / FreeBSD 9.1-RELEASE > -- > http://mail.python.org/mailman/listinfo/python-list -- http://mail.python.org/mailman/listinfo/python-list