[meta] source_os = "linux" target_distro_family = "opensuse" # Debian/Ubuntu/Mint user on their first openSUSE Tumbleweed or Leap install. # Body text assumes apt/dpkg familiarity; explains zypper and YaST concepts. [log_paths] steam = "~/.local/share/Steam/logs/content_log.txt" proton = "~/.local/share/Steam/logs/proton_log.txt" # ── zypper / RPM ───────────────────────────────────────────────────────────── [[patterns]] id = "zypper-lock" sources = ["journald"] match_text = "System management is locked" severity = "warn" title = "zypper package manager is locked" body = "Another zypper or PackageKit process is running — like apt being held by unattended-upgrades. Wait it out or check: sudo ps aux | grep zypper — the lock file is at /var/run/zypp.pid" [[patterns]] id = "zypper-dep-conflict" sources = ["journald"] match_text = "conflicts with" severity = "warn" title = "Package dependency conflict" body = "zypper presents conflict resolution choices interactively. If running non-interactively, read the error — usually one package needs to be removed or a different provider selected. zypper dup (distribution upgrade) resolves more aggressively than zypper up." [[patterns]] id = "zypper-gpg-key" sources = ["journald"] match_text = "does not verify" severity = "warn" title = "Repository signature not trusted" body = "A repo key isn't trusted. Accept it: sudo zypper --gpg-auto-import-keys ref — or import manually: sudo rpm --import /path/to/key.gpg" # ── AppArmor ────────────────────────────────────────────────────────────────── [[patterns]] id = "apparmor-denial" sources = ["journald"] match_text = "apparmor=\"DENIED\"" severity = "info" title = "AppArmor access denied" body = "openSUSE ships AppArmor (similar to Ubuntu, not Debian default). An app is blocked by its security profile. Check: sudo aa-status — then audit the profile with: sudo aa-logprof" # ── System ──────────────────────────────────────────────────────────────────── [[patterns]] id = "kernel-driver-firmware" sources = ["kmsg"] match_text = "firmware: failed to load" severity = "warn" title = "Firmware file missing" body = "sudo zypper install kernel-firmware — openSUSE packages firmware separately like Debian but the package is called kernel-firmware, not firmware-linux." [[patterns]] id = "oom-killer" sources = ["kmsg"] match_text = "Out of memory: Kill process" severity = "warn" title = "OOM killer fired" body = "A process was killed for RAM. openSUSE sets up swap during install; if you skipped it, add a swapfile via YaST -> System -> Partitioner or manually with dd + mkswap." [[patterns]] id = "disk-io-error" sources = ["kmsg"] match_text = "Buffer I/O error on device" severity = "warn" title = "Disk I/O error" body = "Storage error. Check SMART: sudo smartctl -a /dev/sdX — install smartmontools first: sudo zypper install smartmontools" # ── Audio ───────────────────────────────────────────────────────────────────── [[patterns]] id = "pipewire-connect-fail" sources = ["journald"] match_text = "Failed to connect to PipeWire" severity = "warn" title = "PipeWire not responding" body = "Tumbleweed ships PipeWire by default. Restart: systemctl --user restart pipewire pipewire-pulse wireplumber" [[patterns]] id = "bluetooth-rfkill-blocked" sources = ["journald"] match_text = "Blocked through rfkill" severity = "warn" title = "Bluetooth rfkill blocked" body = "rfkill unblock bluetooth — if hard-blocked, check BIOS or a physical switch." # ── GPU / display ───────────────────────────────────────────────────────────── [[patterns]] id = "gpu-hang" sources = ["kmsg"] match_text = "GPU HANG" severity = "warn" title = "GPU hang" body = "GPU stopped responding. For NVIDIA on openSUSE, use the official NVIDIA repo: https://www.nvidia.com/object/unix.html — or the community packages.opensuse.org repo." # ── Network ─────────────────────────────────────────────────────────────────── [[patterns]] id = "networkmanager-activation-fail" sources = ["journald"] match_text = "Activation failed" severity = "info" title = "NetworkManager: connection failed" body = "nmcli device status — openSUSE uses NetworkManager by default. For wifi firmware issues: sudo zypper install kernel-firmware-iwlwifi (Intel) or kernel-firmware-realtek (Realtek)." # ── Gaming ──────────────────────────────────────────────────────────────────── [[patterns]] id = "proton-runtime-missing" sources = ["applog:proton"] match_text = "wine: cannot find" severity = "warn" title = "Proton runtime issue" body = "Right-click game in Steam -> Properties -> Local Files -> Verify integrity. Steam on openSUSE: sudo zypper install steam (from the games repo on OBS)."