v1.8.78: auto-updater — Gitea releases check, download, apply
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -59,6 +59,10 @@ class ServerStore:
|
||||
self._terminal_font_size: int = 11
|
||||
self._window_geometry: str = ""
|
||||
self._servers_file: str = DEFAULT_SERVERS_FILE
|
||||
# Update settings
|
||||
self._update_mode: str = "auto-download" # "notify-only" | "auto-download" | "full-auto"
|
||||
self._last_update_check: float = 0
|
||||
self._skip_version: str = ""
|
||||
self._load_settings()
|
||||
self._load()
|
||||
|
||||
@@ -79,6 +83,9 @@ class ServerStore:
|
||||
self._check_interval = settings.get("check_interval", 60)
|
||||
self._terminal_font_size = settings.get("terminal_font_size", 11)
|
||||
self._window_geometry = settings.get("window_geometry", "")
|
||||
self._update_mode = settings.get("update_mode", "auto-download")
|
||||
self._last_update_check = settings.get("last_update_check", 0)
|
||||
self._skip_version = settings.get("skip_version", "")
|
||||
except json.JSONDecodeError:
|
||||
log.warning("Corrupted settings.json, using defaults")
|
||||
except Exception as e:
|
||||
@@ -93,6 +100,9 @@ class ServerStore:
|
||||
"check_interval": self._check_interval,
|
||||
"terminal_font_size": self._terminal_font_size,
|
||||
"window_geometry": self._window_geometry,
|
||||
"update_mode": self._update_mode,
|
||||
"last_update_check": self._last_update_check,
|
||||
"skip_version": self._skip_version,
|
||||
}
|
||||
try:
|
||||
tmp = SETTINGS_FILE + ".tmp"
|
||||
@@ -413,3 +423,28 @@ class ServerStore:
|
||||
def set_terminal_font_size(self, size: int):
|
||||
self._terminal_font_size = max(6, min(28, size))
|
||||
self._save_settings()
|
||||
|
||||
# ── Update settings ──────────────────────────────────
|
||||
|
||||
def get_update_mode(self) -> str:
|
||||
return self._update_mode
|
||||
|
||||
def set_update_mode(self, mode: str):
|
||||
if mode in ("notify-only", "auto-download", "full-auto"):
|
||||
self._update_mode = mode
|
||||
self._save_settings()
|
||||
|
||||
def get_last_update_check(self) -> float:
|
||||
return self._last_update_check
|
||||
|
||||
def set_last_update_check(self):
|
||||
import time
|
||||
self._last_update_check = time.time()
|
||||
self._save_settings()
|
||||
|
||||
def get_skip_version(self) -> str:
|
||||
return self._skip_version
|
||||
|
||||
def set_skip_version(self, version: str):
|
||||
self._skip_version = version
|
||||
self._save_settings()
|
||||
|
||||
Reference in New Issue
Block a user