cfg.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/env python3
  2. from mmgen.common import *
  3. cfg = Config(process_opts=True)
  4. cmd_args = cfg._args
  5. from mmgen.cfgfile import mmgen_cfg_file
  6. cf_usr = mmgen_cfg_file(cfg,'usr')
  7. cf_sys = mmgen_cfg_file(cfg,'sys')
  8. cf_sample = mmgen_cfg_file(cfg,'sample')
  9. msg(f'Usr cfg file: {os.path.relpath(cf_usr.fn)}')
  10. msg(f'Sys cfg file: {os.path.relpath(cf_sys.fn)}')
  11. msg(f'Sample cfg file: {os.path.relpath(cf_sample.fn)}')
  12. if cmd_args:
  13. if cmd_args[0] == 'parse_test':
  14. ps = cf_sample.get_lines()
  15. msg(f'parsed chunks: {len(ps)}')
  16. pu = cf_usr.get_lines()
  17. msg('usr cfg: {}'.format( ' '.join(f'{i.name}={i.value}' for i in pu) ))
  18. elif cmd_args[0] == 'coin_specific_vars':
  19. for varname in cmd_args[1:]:
  20. msg('{}.{}: {}'.format(
  21. type(cfg._proto).__name__,
  22. varname,
  23. getattr(cfg._proto,varname)
  24. ))
  25. elif cmd_args[0] == 'autoset_opts':
  26. assert cfg.rpc_backend == 'aiohttp', "cfg.rpc_backend != 'aiohttp'"
  27. elif cmd_args[0] == 'autoset_opts_cmdline':
  28. assert cfg.rpc_backend == 'curl', "cfg.rpc_backend != 'curl'"
  29. elif cmd_args[0] == 'mnemonic_entry_modes':
  30. from mmgen.mn_entry import mn_entry
  31. msg('mnemonic_entry_modes: {}\nmmgen: {}\nbip39: {}'.format(
  32. cfg.mnemonic_entry_modes,
  33. mn_entry(cfg,'mmgen').usr_dfl_entry_mode,
  34. mn_entry(cfg,'bip39').usr_dfl_entry_mode ))