import time
import signal
import sys
+import shutil
import tools.config
from tools import services
-def start(args):
+def start(args, unlocked_cb=None):
def signal_handler(sig, frame):
stop(args)
sys.exit(0)
- xdg_session = os.getenv("XDG_SESSION_TYPE")
- if xdg_session != "wayland":
- logging.warning('XDG Session is not "wayland"')
-
cfg = tools.config.load_session()
+ wayland_display = cfg["session"]["wayland_display"]
+ if wayland_display == "None" or not wayland_display:
+ logging.warning('WAYLAND_DISPLAY is not set, defaulting to "wayland-0"')
waydroid_data = cfg["session"]["waydroid_data"]
if not os.path.isdir(waydroid_data):
os.makedirs(waydroid_data)
session_cfg = tools.config.load_session()
if container_state != session_cfg["session"]["state"]:
if session_cfg["session"]["state"] == "RUNNING":
- services.user_manager.start(args)
+ services.user_manager.start(args, unlocked_cb)
services.clipboard_manager.start(args)
+ if unlocked_cb:
+ unlocked_cb = None
elif session_cfg["session"]["state"] == "STOPPED":
services.user_manager.stop(args)
services.clipboard_manager.stop(args)