diff options
| author | Christian Kolset <christian.kolset@gmail.com> | 2026-08-02 11:05:48 -0600 |
|---|---|---|
| committer | Christian Kolset <christian.kolset@gmail.com> | 2026-08-02 11:05:48 -0600 |
| commit | 1c349a982026736f4c2a26951d9d0aefe7b963bc (patch) | |
| tree | b66175df392e3d707ca45650facfd18bcba6c337 /core/app_settings.py | |
| parent | fa0304793a4525db68cb53b527d695bfa2c65966 (diff) | |
| parent | 0aa59c13af65beeae104662593b21ba4d8a37789 (diff) | |
Merge branch 'feat/auto-updater'
Diffstat (limited to 'core/app_settings.py')
| -rw-r--r-- | core/app_settings.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/core/app_settings.py b/core/app_settings.py index ea3ac49..718a768 100644 --- a/core/app_settings.py +++ b/core/app_settings.py @@ -18,14 +18,22 @@ import sys from pathlib import Path -def _settings_path() -> Path: +def app_data_dir() -> Path: + """Per-user, per-platform base directory for anything this app needs to + persist outside the install directory (settings, updater cache, ...) — + deliberately outside the install dir since an update can replace/move + everything in there.""" if sys.platform == "win32": base = Path(os.environ.get("APPDATA", Path.home())) elif sys.platform == "darwin": base = Path.home() / "Library" / "Application Support" else: base = Path(os.environ.get("XDG_CONFIG_HOME", Path.home() / ".config")) - return base / "labUI" / "settings.json" + return base / "labUI" + + +def _settings_path() -> Path: + return app_data_dir() / "settings.json" SETTINGS_PATH = _settings_path() |
