I implemented these a long time ago to help working on parts of the ui
by allowing a way to script moving past some screens. I haven't used
them in ages, it's pretty bad code and probably a fragmentary answers
file is a better solution to the same problem. What do you think?
setuptools declares a certain number of entry points that use the main
function of the associated component. That said, now that main is an
async function, it does not work. There seems to be no way to tell
setuptools to wrap the call to the entry point with asyncio.run so we
need to revert to a synchronous main function.
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
Add support for --recover-chooser-mode command line argument. When provided, run
as a recovery chooser, rather than as a regular console-conf instance.
Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
For whatever reason, urwid puts the terminal into cbreak mode during
initialization. If we put the terminal into raw mode instead, then we
don't have to ignore SIGINT and SIGQUIT, which is good, because when we
support dropping to a subshell we don't want to run that subshell with
those signals ignored, because that is extremely confusing.
This also lets me dump the code that puts the terminal into raw mode
during keyboard detection.
This does a few things with the end goal of making simplifying and
making consistent tox and 'make' methods of test or check.
Things here:
* move python programs out of bin and into their own main. Use
entry_points to get scripts written for them. One gain here is
that we no longer have python programs that are not named .py.
flake8 and friends would not check those programs by default.
* install scripts in bin/ using the setup.py scripts and adjust
snapcraft.yaml and debian packaging for that.
* declare and use PYTHON in Makefile to avoid repeating 'python3'
* declare and use CHECK_DIRS in Makefile for list of dirs to check.
* no longer run 'flake8' from 'make check' by default.
* remove the old tests/ directory.