summaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
Diffstat (limited to 'backend')
-rw-r--r--backend/localplatformlinux.py4
-rw-r--r--backend/main.py5
2 files changed, 7 insertions, 2 deletions
diff --git a/backend/localplatformlinux.py b/backend/localplatformlinux.py
index da0a758f..811db8a6 100644
--- a/backend/localplatformlinux.py
+++ b/backend/localplatformlinux.py
@@ -60,6 +60,8 @@ def chown(path : str, user : UserType = UserType.HOST_USER, recursive : bool =
return result == 0
def chmod(path : str, permissions : int, recursive : bool = True) -> bool:
+ if _get_effective_user_id() != 0:
+ return True
result = call(["chmod", "-R", str(permissions), path] if recursive else ["chmod", str(permissions), path])
return result == 0
@@ -191,4 +193,4 @@ def get_unprivileged_user() -> str:
logger.warn("Unprivileged user is not properly configured. Defaulting to 'deck'")
user = 'deck'
- return user \ No newline at end of file
+ return user
diff --git a/backend/main.py b/backend/main.py
index 2eb785c7..b2e3e74a 100644
--- a/backend/main.py
+++ b/backend/main.py
@@ -24,7 +24,7 @@ from aiohttp_jinja2 import setup as jinja_setup
# local modules
from browser import PluginBrowser
from helpers import (REMOTE_DEBUGGER_UNIT, csrf_middleware, get_csrf_token,
- mkdir_as_user, get_system_pythonpaths)
+ mkdir_as_user, get_system_pythonpaths, get_effective_user_id)
from injector import get_gamepadui_tab, Tab, get_tabs, close_old_tabs
from loader import Loader
@@ -178,6 +178,9 @@ if __name__ == "__main__":
# Required for multiprocessing support in frozen files
multiprocessing.freeze_support()
+ else:
+ if get_effective_user_id() != 0:
+ logger.warning(f"decky is running as an unprivileged user, this is not officially supported and may cause issues")
# Append the loader's plugin path to the recognized python paths
sys.path.append(path.join(path.dirname(__file__), "plugin"))