From b17ccc38eeddd40777be96d664d9d4373b147af5 Mon Sep 17 00:00:00 2001 From: ed Date: Tue, 8 Apr 2025 19:23:14 +0000 Subject: [PATCH] prefer XDG_CONFIG_HOME on all platforms convenient escape-hatch --- copyparty/__main__.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/copyparty/__main__.py b/copyparty/__main__.py index a2f01405..0800d110 100644 --- a/copyparty/__main__.py +++ b/copyparty/__main__.py @@ -228,7 +228,21 @@ def init_E(EE: EnvParams) -> None: if E.mod.endswith("__init__"): E.mod = os.path.dirname(E.mod) - if sys.platform == "win32": + try: + p = os.environ.get("XDG_CONFIG_HOME") + if not p: + raise Exception() + p = os.path.abspath(os.path.realpath(p)) + p = os.path.join(p, "copyparty") + if not os.path.isdir(p): + os.mkdir(p) + os.listdir(p) + except: + p = "" + + if p: + E.cfg = p + elif sys.platform == "win32": bdir = os.environ.get("APPDATA") or os.environ.get("TEMP") or "." E.cfg = os.path.normpath(bdir + "/copyparty") elif sys.platform == "darwin":