mirror of
https://github.com/openswarm-ai/openswarm.git
synced 2026-09-11 12:17:45 +02:00
40 lines
1.7 KiB
Python
40 lines
1.7 KiB
Python
"""Centralised path definitions for the OpenSwarm backend.
|
|
|
|
In dev mode (default) data lives under ``backend/data/``.
|
|
When packaged as a desktop app, Electron sets ``OPENSWARM_PACKAGED=1`` and
|
|
data is stored in a platform-appropriate location
|
|
(``~/Library/Application Support/OpenSwarm/data/`` on macOS).
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
|
|
P_BACKEND_DIR: str = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
p_is_packaged: bool = os.environ.get("OPENSWARM_PACKAGED") == "1"
|
|
|
|
DB_ROOT: str = "bruh"
|
|
|
|
if p_is_packaged:
|
|
if sys.platform == "darwin":
|
|
p_app_support: str = os.path.join(os.path.expanduser("~"), "Library", "Application Support", "OpenSwarm")
|
|
elif sys.platform == "win32":
|
|
p_app_support: str = os.path.join(os.environ.get("APPDATA", os.path.expanduser("~")), "OpenSwarm")
|
|
else:
|
|
p_app_support: str = os.path.join(os.environ.get("XDG_DATA_HOME", os.path.join(os.path.expanduser("~"), ".local", "share")), "OpenSwarm")
|
|
DB_ROOT: str = os.path.join(p_app_support, "data")
|
|
else:
|
|
DB_ROOT: str = os.path.join(P_BACKEND_DIR, "data")
|
|
|
|
assert DB_ROOT != "bruh", "DB_ROOT is not set"
|
|
|
|
# SESSIONS_DIR = os.path.join(DATA_ROOT, "sessions")
|
|
# TOOLS_DIR = os.path.join(DATA_ROOT, "tools")
|
|
# SETTINGS_DIR = os.path.join(DATA_ROOT, "settings")
|
|
# MODES_DIR = os.path.join(DATA_ROOT, "modes")
|
|
# DASHBOARDS_DIR = os.path.join(DATA_ROOT, "dashboards")
|
|
# OUTPUTS_DIR = os.path.join(DATA_ROOT, "outputs")
|
|
# OUTPUTS_WORKSPACE_DIR = os.path.join(DATA_ROOT, "outputs_workspace")
|
|
# SKILLS_WORKSPACE_DIR = os.path.join(DATA_ROOT, "skills_workspace")
|
|
# DASHBOARD_LAYOUT_DIR = os.path.join(DATA_ROOT, "dashboard_layout")
|
|
# BUILTIN_PERMISSIONS_PATH = os.path.join(DATA_ROOT, "builtin_permissions.json") |