M .gitignore => .gitignore +0 -0
M BEMfile => BEMfile +0 -0
M COPYING => COPYING +0 -0
M Dockerfile => Dockerfile +1 -1
@@ 2,4 2,4 @@ FROM ubuntu:18.04
RUN DPKG_FRONTEND=noninteractive apt update && apt upgrade --yes
-RUN apt install --yes xterm
+RUN apt install --yes xterm bash
M LICENSE => LICENSE +0 -0
M README.md => README.md +0 -0
M bem/__init__.py => bem/__init__.py +0 -0
M bem/bem_cache.py => bem/bem_cache.py +0 -0
M bem/bem_cli.py => bem/bem_cli.py +8 -0
@@ 3,13 3,21 @@ import configparser
import pathlib
import logging
import sys
+import signal
from . import bem_constants
from . import bem_util
from . import bem_config
from . import bem_engine
+def sigint_handler(sig, frame):
+ logging.error("BEM caught SIGINT, you probably shouldn't see this")
+ sys.exit(1)
+
def bem_cli():
+
+ signal.signal(signal.SIGINT, sigint_handler)
+
parser = argparse.ArgumentParser()
parser.add_argument("--version", "-V", action='version',
M bem/bem_config.py => bem/bem_config.py +0 -0
M bem/bem_constants.py => bem/bem_constants.py +0 -0
M bem/bem_engine.py => bem/bem_engine.py +7 -0
@@ 116,6 116,13 @@ def execute_command(config, command):
"mode": "rw",
}
+ # TODO: make this generic
+ xauth = str(pathlib.Path.home() / ".Xauthority")
+ volumes[xauth] = {
+ "bind": xauth,
+ "mode": "rw",
+ }
+
user = 0
if config["squashmethod"] == "bind":
volumes["/etc/shadow"] = {
M bem/bem_util.py => bem/bem_util.py +0 -0
M setup.py => setup.py +0 -0