serialdata/sr-info.py

Sun, 01 Nov 2020 22:21:19 +0100

author
David Douard <david.douard@sdf3.org>
date
Sun, 01 Nov 2020 22:21:19 +0100
changeset 44
b3c3d54d2c7c
parent 23
daf26b083899
permissions
-rw-r--r--

Many improvements

- add support for dimm-based selection,
- add support for poweroff (at least power thr display off),
- add support for the initial key pressed during initialization sequence,
- fix a race condition (sending a keycode while receiving a message)
- add support for the shift button
- many code cleanups and improvements

import zipfile
import configparser


def extract_metadata(fname):
    cfg = configparser.ConfigParser()
    with zipfile.ZipFile(fname) as zf:
        mdata = zf.open('metadata').read()
    cfg.read_string(mdata.decode())
    return cfg


def print_metadata(mdata):
    for kv in mdata['global'].items():
        print('%s: %s' % kv)
    for device, cfg in mdata.items():
        if device in ('global', 'DEFAULT'):
            continue
        print('%s:' % device)
        for kv in cfg.items():
            print('  %s: %s' % kv)


if __name__ == '__main__':
    import sys
    for fn in sys.argv[1:]:
        print_metadata(extract_metadata(fn))

mercurial