diff options
| author | Nippy <nippy@Nippy-Mac-mini.local> | 2026-10-09 10:49:26 +0200 |
|---|---|---|
| committer | Nippy <nippy@Nippy-Mac-mini.local> | 2026-10-09 10:49:26 +0200 |
| commit | 91978706279a19a3ac96393630876f3e50cbc518 (patch) | |
| tree | 1355da60486a305aefeea4e55543bbf1008715b3 /raveos-welcome/raveos_welcome.py | |
| parent | 17a23f8a0cec5439d674d90c593497e4ceed2c68 (diff) | |
| download | RaveOS-PKGBUILD-91978706279a19a3ac96393630876f3e50cbc518.tar.gz RaveOS-PKGBUILD-91978706279a19a3ac96393630876f3e50cbc518.zip | |
fix
Diffstat (limited to 'raveos-welcome/raveos_welcome.py')
| -rw-r--r-- | raveos-welcome/raveos_welcome.py | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/raveos-welcome/raveos_welcome.py b/raveos-welcome/raveos_welcome.py index 7aa55c3..08b9bed 100644 --- a/raveos-welcome/raveos_welcome.py +++ b/raveos-welcome/raveos_welcome.py @@ -29,7 +29,6 @@ from PyQt6.QtGui import ( from PyQt6.QtWidgets import QProxyStyle, QStyle from PyQt6.QtSvgWidgets import QSvgWidget -# ─── Constants ──────────────────────────────────────────────────────────────── FLAG_FILE = Path.home() / ".config" / "raveos" / ".welcome_done" APP_INSTALLER = "/usr/bin/raveos-app-installer" @@ -52,7 +51,6 @@ COLORS = { "error": "#e74c3c", } -# ─── Translations ───────────────────────────────────────────────────────────── def _detect_system_lang(): """Kezdőnyelv a rendszer locale alapján (hu/de, egyébként en).""" @@ -69,17 +67,14 @@ def _detect_system_lang(): _current_lang = _detect_system_lang() T = { - # Nav "nav_back": {"hu": "← Vissza", "de": "← Zurück", "en": "← Back"}, "nav_next": {"hu": "Tovább →", "de": "Weiter →", "en": "Next →"}, - # Step bar "step_welcome": {"hu": "ÜDVÖZLÉS", "de": "WILLKOMMEN", "en": "WELCOME"}, "step_network": {"hu": "HÁLÓZAT", "de": "NETZWERK", "en": "NETWORK"}, "step_optimize": {"hu": "OPTIMALIZÁCIÓ", "de": "OPTIMIERUNG", "en": "OPTIMIZE"}, "step_hyprland": {"hu": "HYPRLAND", "de": "HYPRLAND", "en": "HYPRLAND"}, "step_credits": {"hu": "KÖZREMŰKÖDŐK", "de": "MITWIRKENDE", "en": "CREDITS"}, "step_finish": {"hu": "BEFEJEZÉS", "de": "ABSCHLUSS", "en": "FINISH"}, - # Welcome page "welcome_tag": {"hu": "LINUX DISTRIBUTION", "de": "LINUX DISTRIBUTION", "en": "LINUX DISTRIBUTION"}, "welcome_about": {"hu": "RaveOS finomhangolás, kulcsra kész állapot!", "de": "RaveOS optimiert, startklar!", @@ -94,7 +89,6 @@ T = { "feat_apps": {"hu": "App Installer\negy kattintás, minden szoftver", "de": "App Installer\nein Klick, alle Software", "en": "App Installer\none click, all software"}, - # WiFi page "wifi_title": {"hu": "HÁLÓZAT", "de": "NETZWERK", "en": "NETWORK"}, "wifi_subtitle": {"hu": "WiFi kapcsolat", "de": "WLAN-Verbindung", "en": "WiFi connection"}, "wifi_scan": {"hu": "Frissítés", "de": "Aktualisieren", "en": "Refresh"}, @@ -111,7 +105,6 @@ T = { "wifi_error": {"hu": "Hiba: {err}", "de": "Fehler: {err}", "en": "Error: {err}"}, "wifi_timeout": {"hu": "Időtúllépés - próbáld újra","de": "Zeitüberschreitung - bitte erneut versuchen", "en": "Timeout - try again"}, "wifi_unknown_err": {"hu": "Ismeretlen hiba", "de": "Unbekannter Fehler", "en": "Unknown error"}, - # Optimize page "opt_title": {"hu": "OPTIMALIZÁCIÓ", "de": "OPTIMIERUNG", "en": "OPTIMIZATION"}, "opt_gaming": {"hu": "GAMING OPTIMALIZÁCIÓ - GPU: {gpu}", "de": "GAMING-OPTIMIERUNG - GPU: {gpu}", "en": "GAMING OPTIMIZATION - GPU: {gpu}"}, "opt_sysctl": {"hu": "Kernel/sysctl tweaks", @@ -218,11 +211,9 @@ T = { "opt_reboot_needed": {"hu": "A GPU optimalizációk érvénybe lépéséhez a számítógépet újra kell indítani!", "de": "Für die GPU-Optimierungen ist ein Neustart erforderlich!", "en": "A reboot is required for GPU optimizations to take effect!"}, - # Hyprland page "hypr_title": {"hu": "HYPRLAND - KEYBINDS", "de": "HYPRLAND - TASTENKÜRZEL", "en": "HYPRLAND - KEYBINDS"}, "hypr_source": {"hu": "Forrás: ", "de": "Quelle: ", "en": "Source: "}, "hypr_none": {"hu": "Nem található Hyprland konfiguráció.", "de": "Keine Hyprland-Konfiguration gefunden.", "en": "No Hyprland configuration found."}, - # Hyprland descriptions "hypr_spotlight": {"hu": "Spotlight (DMS) megnyitása", "de": "Spotlight (DMS) öffnen", "en": "Open Spotlight (DMS)"}, "hypr_terminal": {"hu": "Terminál megnyitása (Kitty)", "de": "Terminal öffnen (Kitty)", "en": "Open terminal (Kitty)"}, "hypr_filemanager": {"hu": "Fájlkezelő megnyitása (Thunar)", "de": "Dateimanager öffnen (Thunar)", "en": "Open file manager (Thunar)"}, @@ -260,7 +251,6 @@ T = { "hypr_layout": {"hu": "Layout: {p}", "de": "Layout: {p}", "en": "Layout: {p}"}, "hypr_run": {"hu": "Futtatás: {prog}", "de": "Ausführen: {prog}", "en": "Run: {prog}"}, "hypr_run_generic": {"hu": "Program futtatása", "de": "Programm ausführen", "en": "Run program"}, - # Credits page "credits_title": {"hu": "KÖZREMŰKÖDŐK", "de": "MITWIRKENDE", "en": "CONTRIBUTORS"}, "credits_rp1_name": {"hu": "RavePriest1", "de": "RavePriest1", "en": "RavePriest1"}, "credits_rp1_role": {"hu": "Névadó, hivatalos naplopó", "de": "Namensgeber, offizieller Faulenzer", "en": "Namesake, official slacker"}, @@ -274,7 +264,6 @@ T = { "credits_stefi_name": {"hu": "Stefi", "de": "Stefi", "en": "Stefi"}, "credits_stefi_role": {"hu": "Design", "de": "Design", "en": "Design"}, "credits_stefi_desc": {"hu": "5000 lesz!", "de": "Das macht 5000!", "en": "That'll be 5000!"}, - # Finish page "finish_ok": {"hu": "OK", "de": "OK", "en": "OK"}, "finish_title": {"hu": "KÉSZ!", "de": "FERTIG!", "en": "DONE!"}, "finish_sub": {"hu": "A RaveOS be van állítva.", "de": "RaveOS ist eingerichtet.", "en": "RaveOS is set up."}, @@ -289,7 +278,6 @@ T = { "finish_close": {"hu": "Bezárás", "de": "Schließen", "en": "Close"}, "finish_install_missing": {"hu": "Nem található az App Installer.", "de": "App Installer nicht gefunden.", "en": "App Installer not found."}, "finish_install_err": {"hu": "Nem sikerült elindítani. Napló: {log}", "de": "Start fehlgeschlagen. Protokoll: {log}", "en": "Failed to launch. Log: {log}"}, - # Tooltip keys (for optimize page descriptions that use _ACTION_DESCS) "action_killactive": {"hu": "Aktív ablak bezárása", "de": "Aktives Fenster schließen", "en": "Close active window"}, "action_togglefloat": {"hu": "Lebegő mód ki/be", "de": "Schwebenden Modus umschalten", "en": "Toggle floating mode"}, "action_pseudo": {"hu": "Pseudo-tiling ki/be", "de": "Pseudo-Tiling umschalten", "en": "Toggle pseudo-tiling"}, @@ -477,7 +465,6 @@ QToolTip {{ }} """ -# ─── WiFi Worker ─────────────────────────────────────────────────────────────── class WiFiScanner(QThread): result = pyqtSignal(list) @@ -537,7 +524,6 @@ class WiFiConnector(QThread): self.failure.emit(str(e)) -# ─── Logo Widget ─────────────────────────────────────────────────────────────── def _find_svg() -> str: if Path(SVG_LOGO).exists(): @@ -574,7 +560,6 @@ class RaveLogo(QWidget): layout.addWidget(fallback) -# ─── WiFi page visibility check ─────────────────────────────────────────────── def _should_show_wifi() -> bool: try: @@ -599,7 +584,6 @@ def _should_show_wifi() -> bool: return has_wifi -# ─── Signal bar helper ───────────────────────────────────────────────────────── def signal_icon(signal: int) -> str: if signal >= 80: return "▂▄▆█" @@ -614,7 +598,6 @@ def security_tag(sec: str) -> str: return _t("wifi_encrypted") -# ─── Page 1: Welcome ─────────────────────────────────────────────────────────── class WelcomePage(QWidget): def __init__(self): @@ -626,7 +609,6 @@ class WelcomePage(QWidget): lay.setContentsMargins(60, 40, 60, 40) lay.setSpacing(0) - # Logo logo = RaveLogo() lay.addWidget(logo, alignment=Qt.AlignmentFlag.AlignHCenter) lay.addSpacing(10) @@ -653,7 +635,6 @@ class WelcomePage(QWidget): lay.addWidget(sep) lay.addSpacing(24) - # About card card = QFrame() card.setObjectName("card") card_lay = QVBoxLayout(card) @@ -699,7 +680,6 @@ class WelcomePage(QWidget): lay.addWidget(card) lay.addSpacing(18) - # Community links links_row1 = QHBoxLayout() links_row1.setSpacing(8) links_row2 = QHBoxLayout() @@ -754,7 +734,6 @@ class WelcomePage(QWidget): subprocess.Popen(["xdg-open", url]) -# ─── Page 2: WiFi ────────────────────────────────────────────────────────────── class WiFiPage(QWidget): def __init__(self): @@ -798,7 +777,6 @@ class WiFiPage(QWidget): self.list.itemClicked.connect(self._on_select) lay.addWidget(self.list) - # Password field self.pw_frame = QFrame() pw_lay = QVBoxLayout(self.pw_frame) pw_lay.setContentsMargins(0, 0, 0, 0) @@ -816,13 +794,11 @@ class WiFiPage(QWidget): self.pw_frame.setVisible(False) lay.addWidget(self.pw_frame) - # Status self.status_label = QLabel("") self.status_label.setObjectName("body") self.status_label.setAlignment(Qt.AlignmentFlag.AlignCenter) lay.addWidget(self.status_label) - # Connect button self.connect_btn = QPushButton(_t("wifi_connect")) self.connect_btn.setObjectName("primary") self.connect_btn.setEnabled(False) @@ -912,13 +888,10 @@ class WiFiPage(QWidget): self.connect_btn.setEnabled(True) -# ─── Hyprland Detection ─────────────────────────────────────────────────────── HYPR_CONFIG = Path.home() / ".config" / "hypr" / "hyprland.conf" _HYPR_FALLBACK = Path("/usr/share/raveos/hyprland-theme/theme-data/hypr/hyprland.conf") -# Hyprland 0.55+ Lua config mod (RaveOS ezt hasznalja alapertelmezetten, -# nincs is hagyomanyos hyprland.conf a rendszeren) HYPR_KEYBINDS_LUA = Path.home() / ".config" / "hypr" / "config" / "keybinds.lua" _HYPR_KEYBINDS_LUA_FALLBACK = Path( "/usr/share/raveos/hyprland-theme/theme-data/hypr/config/keybinds.lua" @@ -1111,10 +1084,6 @@ def _parse_hypr_binds(config_path: Path) -> list: return binds -# ─── Hyprland Lua config parser (keybinds.lua, hl.bind(...) hivasok) ───────── -# Best-effort parser: nem valodi Lua interpreter, csak a RaveOS keybinds.lua -# tipikus mintait (hl.bind("KEY", hl.dsp.xxx(...)), local string valtozok, -# egyszeru "for i = a, b do ... end" munkaterulet-ciklusok) ismeri fel. def _lua_extract_call(line: str, funcname: str): marker = funcname + "(" @@ -1268,8 +1237,6 @@ def _lua_try_add_bind(line: str, env: dict, binds: list): return combo = _fmt_key(combo_raw) - # ciklus-valtozok (pl. workspace = i) behelyettesitese a dispatcher - # kifejezesbe is, hogy a leiras a tenyleges munkaterulet-szamot mutassa dispatch_expr = args[1] for name, value in env.items(): if isinstance(value, int): @@ -1342,7 +1309,6 @@ def _parse_hypr_binds_lua(path: Path) -> list: return binds -# ─── Page: Hyprland Keybinds ───────────────────────────────────────────────── class HyprlandPage(QWidget): def __init__(self): @@ -1351,8 +1317,6 @@ class HyprlandPage(QWidget): self._binds = _parse_hypr_binds(cfg) self._cfg_path = cfg if not self._binds: - # nincs hagyomanyos hyprland.conf (vagy nincs benne bind sor) - - # a RaveOS Hyprland 0.55+ Lua config modot hasznalja lua_cfg = HYPR_KEYBINDS_LUA if HYPR_KEYBINDS_LUA.exists() else _HYPR_KEYBINDS_LUA_FALLBACK lua_binds = _parse_hypr_binds_lua(lua_cfg) if lua_binds: @@ -1439,7 +1403,6 @@ class HyprlandPage(QWidget): self.msg.setText(_t("hypr_none")) -# ─── GPU Detection ──────────────────────────────────────────────────────────── def _detect_gpu() -> tuple[str, str]: gpu_type = "other" @@ -1570,7 +1533,6 @@ def _detect_gpu() -> tuple[str, str]: return gpu_type, gpu_label -# ─── Page 3: Optimize ────────────────────────────────────────────────────────── OPTIMIZE_SCRIPT = "/usr/share/raveos-welcome/gaming-optimize.sh" OPTIMIZE_LOG = "/var/log/raveos-welcome/gaming-optimize.log" @@ -1623,7 +1585,6 @@ class OptimizePage(QWidget): vlay.setContentsMargins(0, 0, 8, 0) vlay.setSpacing(4) - # --- Gaming optimization --- self.sec1 = QLabel(_t("opt_gaming", gpu=self._gpu_label)) self.sec1.setObjectName("section_title") vlay.addWidget(self.sec1) @@ -1655,7 +1616,6 @@ class OptimizePage(QWidget): scroll.setWidget(inner) lay.addWidget(scroll, 1) - # Status + gomb self.status_lbl = QLabel("") self.status_lbl.setObjectName("body") self.status_lbl.setAlignment(Qt.AlignmentFlag.AlignCenter) @@ -1748,7 +1708,6 @@ class OptimizePage(QWidget): self.status_lbl.setText(_t("opt_apply_err", code=exit_code, log=OPTIMIZE_LOG)) -# ─── Page 4: Credits ────────────────────────────────────────────────────────── class CreditsPage(QWidget): def __init__(self): @@ -1827,7 +1786,6 @@ class CreditsPage(QWidget): desc_lbl.setText(_t(desc_key)) -# ─── Page 5: Finish ──────────────────────────────────────────────────────────── class FinishPage(QWidget): launch_installer = pyqtSignal() @@ -1868,7 +1826,6 @@ class FinishPage(QWidget): lay.addWidget(sep) lay.addSpacing(24) - # App installer CTA card card = QFrame() card.setObjectName("card") card_lay = QVBoxLayout(card) @@ -1930,7 +1887,6 @@ class FinishPage(QWidget): self.install_status.setVisible(True) -# ─── Main Window ─────────────────────────────────────────────────────────────── class RaveOSWelcome(QMainWindow): def __init__(self): @@ -1955,15 +1911,12 @@ class RaveOSWelcome(QMainWindow): root.setContentsMargins(0, 0, 0, 0) root.setSpacing(0) - # Step indicator bar self.step_bar = self._make_step_bar() root.addWidget(self.step_bar) - # Page container self.stack = QStackedWidget() root.addWidget(self.stack, stretch=1) - # Pages self.p_welcome = WelcomePage() self.p_optimize = OptimizePage() self.p_credits = CreditsPage() @@ -1980,12 +1933,10 @@ class RaveOSWelcome(QMainWindow): self.stack.addWidget(self.p_credits) self.stack.addWidget(self.p_finish) - # Nav buttons nav = QHBoxLayout() nav.setContentsMargins(24, 10, 24, 18) nav.setSpacing(12) - # Language selector (bottom-left) self.lang_hu_btn = QPushButton("Magyar") self.lang_hu_btn.setObjectName("lang_btn") self.lang_hu_btn.setFixedHeight(30) @@ -2185,11 +2136,6 @@ class RaveOSWelcome(QMainWindow): os.environ.get("XDG_CURRENT_DESKTOP", "").lower() == "hyprland" if is_hyprland: - # Hyprland 0.55+ Lua config mod alatt a hagyomanyos - # "hyprctl dispatch exec <parancs>" szintaxis mar nem mukodik, - # csak a hl.dsp.exec_cmd("...") Lua hivas - de a regi .conf - # alapu Hyprland telepiteseken meg a regi szintaxis a jo, ezert - # eloszor azt probaljuk, es csak hiba eseten valtunk Lua-ra. result = subprocess.run( ["hyprctl", "dispatch", "exec", cmd], capture_output=True, text=True @@ -2227,7 +2173,6 @@ class RaveOSWelcome(QMainWindow): QTimer.singleShot(1200, _check) -# ─── Flag helpers ────────────────────────────────────────────────────────────── def _flag_exists() -> bool: return FLAG_FILE.exists() @@ -2237,7 +2182,6 @@ def _write_flag(): FLAG_FILE.touch() -# ─── Fast tooltip style ──────────────────────────────────────────────────────── class _FastTooltipStyle(QProxyStyle): def styleHint(self, hint, option=None, widget=None, returnData=None): @@ -2248,7 +2192,6 @@ class _FastTooltipStyle(QProxyStyle): return super().styleHint(hint, option, widget, returnData) -# ─── Entry point ─────────────────────────────────────────────────────────────── def main(): if _flag_exists() and "--force" not in sys.argv: |