From 0a1ad48a206fa0a86c80b5b818a05fbd93be4b8d Mon Sep 17 00:00:00 2001 From: Erfan Abdi Date: Thu, 23 Sep 2021 05:19:39 +0330 Subject: [PATCH] lxc: Add WSLg support --- tools/actions/container_manager.py | 3 ++- tools/helpers/lxc.py | 17 ++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/tools/actions/container_manager.py b/tools/actions/container_manager.py index 37ab7e7..520034d 100644 --- a/tools/actions/container_manager.py +++ b/tools/actions/container_manager.py @@ -17,7 +17,8 @@ def start(args): def add_prop(key, cfg_key): value = session_cfg["session"][cfg_key] if value != "None": - props.append(key + "=" + session_cfg["session"][cfg_key]) + value = value.replace("/mnt/", "/mnt_extra/") + props.append(key + "=" + value) if not os.path.isfile(args.work + "/waydroid_base.prop"): raise RuntimeError("waydroid_base.prop Not found") diff --git a/tools/helpers/lxc.py b/tools/helpers/lxc.py index 8ed65a9..50098ca 100644 --- a/tools/helpers/lxc.py +++ b/tools/helpers/lxc.py @@ -55,6 +55,7 @@ def generate_nodes_lxc_config(args): make_entry("/dev/graphics/fb1") make_entry("/dev/fb2") make_entry("/dev/graphics/fb2") + make_entry("/dev/dxg") make_entry("/dev/dri", options="bind,create=dir,optional 0 0") # Binder dev nodes @@ -99,6 +100,11 @@ def generate_nodes_lxc_config(args): make_entry("/dev/video32") make_entry("/dev/video33") + # WSLg + make_entry("tmpfs", "mnt_extra", "tmpfs", "nodev 0 0", False) + make_entry("/mnt/wslg", "mnt_extra/wslg", + options="rbind,create=dir,optional 0 0") + return nodes @@ -155,14 +161,19 @@ def make_base_props(args): return "" props = [] + egl = tools.helpers.props.host_get(args, "ro.hardware.egl") + gralloc = find_hal("gralloc") if gralloc == "": - gralloc = "gbm" - props.append("ro.hardware.egl=mesa") + if os.path.exists("/dev/dri"): + gralloc = "gbm" + egl = "mesa" + else: + gralloc = "default" + egl = "swiftshader" props.append("debug.stagefright.ccodec=0") props.append("ro.hardware.gralloc=" + gralloc) - egl = tools.helpers.props.host_get(args, "ro.hardware.egl") if egl != "": props.append("ro.hardware.egl=" + egl) -- 2.47.3