'Fill a Uname from the currently running platform.'

@classmethod
def FromCurrentSystem(cls):

    uname = platform.uname()
    fqdn = socket.getfqdn()
    system = uname[0]
    (architecture, _) = platform.architecture()
    if (system == 'Windows'):
        service_pack = platform.win32_ver()[2]
        kernel = uname[3]
        release = uname[2]
        version = (uname[3] + service_pack)
    elif (system == 'Darwin'):
        kernel = uname[2]
        release = 'OSX'
        version = platform.mac_ver()[0]
    elif (system == 'Linux'):
        kernel = uname[2]
        release = platform.linux_distribution()[0]
        version = platform.linux_distribution()[1]
    if pep425tags:
        pep425tag = ('%s%s-%s-%s' % (pep425tags.get_abbr_impl(), pep425tags.get_impl_ver(), str(pep425tags.get_abi_tag()).lower(), pep425tags.get_platform()))
    else:
        pep425tag = ('%s_%s_%s' % (system, release, architecture))
    return cls(system=system, architecture=architecture, node=uname[1], release=release, version=version, machine=uname[4], kernel=kernel, fqdn=fqdn, pep425tag=pep425tag)
