diff options
Diffstat (limited to 'hyprsunset_qt')
| -rw-r--r-- | hyprsunset_qt/config.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/hyprsunset_qt/config.py b/hyprsunset_qt/config.py index f8ad5cf..a718861 100644 --- a/hyprsunset_qt/config.py +++ b/hyprsunset_qt/config.py @@ -4,6 +4,7 @@ from __future__ import annotations import re from dataclasses import dataclass +from pathlib import Path _BLOCK_RE = re.compile(r"profile\s*\{(.*?)\}", re.DOTALL) @@ -82,3 +83,19 @@ def night_index(profiles: list[Profile]) -> int | None: if p.temperature is not None: return i return None + + +CONFIG_PATH = Path.home() / ".config" / "hypr" / "hyprsunset.conf" + + +def read_config(path: Path = CONFIG_PATH) -> list[Profile]: + path = Path(path) + if not path.exists(): + return [] + return parse_config(path.read_text()) + + +def write_config(profiles: list[Profile], path: Path = CONFIG_PATH) -> None: + path = Path(path) + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(serialize(profiles)) |
