1 Commits

Author SHA1 Message Date
19d6c78fb0 Added xdg-compliant path for Linux and macOS
Created config.py

Moved system path logic to config.py
2026-02-09 23:49:31 +01:00
3 changed files with 25 additions and 12 deletions

19
zut_app/config.py Normal file
View File

@@ -0,0 +1,19 @@
import os
import platform
USER_HOME = os.path.expanduser("~")
WINDOWS_PATH = "zutui" # probably should be in %AppData% or something, but I'm not sure, so I won't change it
LINUX_PATH = ".config/zutui"
def get_config_path():
system = platform.system()
if system == "Windows":
APP_DIR = os.path.join(USER_HOME, WINDOWS_PATH)
elif system in ["Linux", "Darwin"]:
APP_DIR = os.path.join(USER_HOME, LINUX_PATH)
else:
print(f"System {system} not supported, aborting...")
exit(1)
if not os.path.exists(APP_DIR):
os.makedirs(APP_DIR)
return APP_DIR

View File

@@ -1,16 +1,14 @@
import requests import requests
from bs4 import BeautifulSoup from bs4 import BeautifulSoup
import json import json
import os import os
USER_HOME = os.path.expanduser("~") from .config import get_config_path
APP_DIR = os.path.join(USER_HOME, "zutui")
if not os.path.exists(APP_DIR): APP_DIR = get_config_path()
os.makedirs(APP_DIR)
CACHE_FILE = os.path.join(APP_DIR, "grades_cache.json") CACHE_FILE = os.path.join(APP_DIR, "grades_cache.json")
TIMEOUT = 10 TIMEOUT = 10
class ZUT: class ZUT:
URLS = { URLS = {

View File

@@ -1,7 +1,5 @@
import json import json
import os import os
import time
from datetime import datetime from datetime import datetime
from textual.app import App, ComposeResult from textual.app import App, ComposeResult
from textual.containers import Container from textual.containers import Container
@@ -10,11 +8,9 @@ from textual.screen import Screen
from textual.binding import Binding from textual.binding import Binding
from .zut_client import ZUT from .zut_client import ZUT
from .config import get_config_path
USER_HOME = os.path.expanduser("~") APP_DIR = get_config_path()
APP_DIR = os.path.join(USER_HOME, "zutui")
if not os.path.exists(APP_DIR):
os.makedirs(APP_DIR)
CONFIG_FILE = os.path.join(APP_DIR, "config.json") CONFIG_FILE = os.path.join(APP_DIR, "config.json")
REFRESH_INTERVAL = 1800 REFRESH_INTERVAL = 1800