249 lines
8.4 KiB
Markdown
249 lines
8.4 KiB
Markdown
# Main Desktop — CachyOS Overview
|
||
|
||
> Last updated: 2026-08-11
|
||
|
||
---
|
||
|
||
## System
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Distro** | CachyOS (base: Arch Linux) |
|
||
| **Kernel** | 7.0.10-2-cachyos (also has LTS: 6.18.33-2) |
|
||
| **Desktop** | KDE Plasma 6.6.5 (Wayland / kwin_wayland) |
|
||
| **Display Server** | Wayland + Xwayland 24.1.11 |
|
||
| **Init** | systemd v260 |
|
||
| **Shell** | fish 4.7.1 |
|
||
| **Terminal** | Konsole |
|
||
| **Boot Mode** | UEFI / EFI |
|
||
| **Kernel Params** | `quiet nowatchdog splash rw rootflags=subvol=/@` |
|
||
|
||
---
|
||
|
||
## Hardware
|
||
|
||
### CPU
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Model** | Intel Core i7-13700K (13th Gen, Raptor Lake) |
|
||
| **Cores / Threads** | 16 cores / 24 threads (8P + 8E) |
|
||
| **Max Boost** | 5.3 GHz (P-cores) / 4.2 GHz (E-cores) |
|
||
| **Process** | Intel 7 (10nm) |
|
||
| **Cache** | L1: 1.4 MB, L2: 24 MB, L3: 30 MB |
|
||
| **Virtualization** | VMX enabled |
|
||
| **Governor** | powersave (intel_pstate) |
|
||
|
||
### Memory
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Total** | 32 GB |
|
||
| **Used (at capture)** | ~4.65 GB (15%) |
|
||
| **Swap** | 31 GB zram (zstd, priority 100) |
|
||
| **Swappiness** | 150 |
|
||
|
||
### GPU
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Model** | NVIDIA GeForce RTX 4060 Ti |
|
||
| **VRAM** | 8 GB |
|
||
| **Driver** | nvidia 610.57.04 |
|
||
| **Architecture** | Lovelace (AD106, TSMC 5nm) |
|
||
| **APIs** | OpenGL 4.6, Vulkan 1.4.350, EGL 1.5 |
|
||
| **PCIe** | Gen 4 x8 |
|
||
| **Vendor** | ASUSTeK |
|
||
|
||
### Display
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Monitor** | Xiaomi Mi Monitor (34", ultrawide) |
|
||
| **Resolution** | 3440×1440 @ 144 Hz |
|
||
| **Connection** | DisplayPort (DP-3) |
|
||
| **DPI** | 110 |
|
||
|
||
### Motherboard
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Model** | ASUS ROG STRIX B760-I GAMING WIFI |
|
||
| **Firmware** | UEFI AMI v1662 (2024-08-07) |
|
||
|
||
### Storage
|
||
|
||
| Device | Model | Size | Filesystem | Mount |
|
||
|---|---|---|---|---|
|
||
| `/dev/nvme0n1` | Samsung 970 EVO Plus 1TB | 931.5 GB | btrfs (subvols) | `/`, `/home`, `/var/log`, `/var/tmp` |
|
||
| `/dev/nvme0n1p1` | EFI partition | 4 GB | vfat | `/boot` |
|
||
| `/dev/sda` | Verbatim STORE N GO | 14.5 GB | — | USB drive |
|
||
|
||
- **Total used:** 33.73 GB / 927.5 GB (3.6%)
|
||
- **Btrfs subvolume layout:** `/@` for root, shared partition for home/logs/tmp
|
||
|
||
### Network
|
||
|
||
| Device | Type | Driver | Status |
|
||
|---|---|---|---|
|
||
| Intel I226-V (enp5s0) | 2.5GbE Ethernet | igc | **Up** @ 1000 Mbps |
|
||
| Intel AX211 (wlan0) | WiFi 6E | iwlwifi | Down |
|
||
| Intel AX211 Bluetooth | BT 5.4 | btusb | Up |
|
||
|
||
### Audio
|
||
|
||
- Intel Raptor Lake HDA + NVIDIA AD106M HDA
|
||
- PipeWire 1.6.6 (with pipewire-pulse + wireplumber)
|
||
|
||
---
|
||
|
||
## Software
|
||
|
||
### Package Manager
|
||
|
||
| PM | Count |
|
||
|---|---|
|
||
| pacman (total) | 1590 packages |
|
||
| pacman (explicitly installed) | 239 |
|
||
| flatpak | 15 apps |
|
||
| **Total** | **1605** |
|
||
|
||
### Key Applications
|
||
|
||
| Category | Apps |
|
||
|---|---|
|
||
| **Browser** | Brave |
|
||
| **File Manager** | Dolphin |
|
||
| **Text Editor** | Kate, Micro, Nano, Vim |
|
||
| **Terminal** | Konsole, Alacritty |
|
||
| **Media** | VLC, Haruna, Jellyfin (server on homelab) |
|
||
| **Graphics** | GIMP 3.2, Krita 6.0, Inkscape 1.4 |
|
||
| **3D / CAD** | Blender 5.1, FreeCAD 1.1 |
|
||
| **3D Printing** | Bambu Studio (Flatpak, `com.bambulab.BambuStudio`) |
|
||
| **Video Editing** | Kdenlive 26.04 |
|
||
| **Screen Recording** | OBS Studio 32.1 |
|
||
| **Notes** | Obsidian 1.12 |
|
||
| **IDE** | VSCodium (native, via AUR `vscodium-bin`) + Claude Code 2.1.173 extension |
|
||
| **Containers** | Docker 29.5 + docker-compose |
|
||
| **AUR Helper** | paru 2.1 |
|
||
| **Automation** | n8n (on homelab) |
|
||
| **Theming** | CachyOS Nord KDE, CachyOS Emerald KDE, CachyOS Iridescent KDE |
|
||
| **KWin Scripts** | Mouse Tiler |
|
||
| **Productivity** | Kara |
|
||
|
||
### Compilers & Runtimes
|
||
|
||
| Tool | Version |
|
||
|---|---|
|
||
| clang | 22.1.5 |
|
||
| gcc | 16.1.1 |
|
||
| python | 3.14.5 |
|
||
| nodejs | 26.1.0 |
|
||
| npm | 11.16.0 |
|
||
|
||
> npm global prefix: `~/.npm-global` (added to fish PATH via `fish_add_path`)
|
||
> Claude Code CLI installed globally: `~/.npm-global/bin/claude`
|
||
|
||
### Enabled Services
|
||
|
||
| Service | Purpose |
|
||
|---|---|
|
||
| NetworkManager | Network management |
|
||
| systemd-resolved | DNS resolution |
|
||
| bluetooth | Bluetooth |
|
||
| docker.socket | Docker daemon |
|
||
| ufw | Firewall |
|
||
| avahi-daemon | mDNS/zeroconf |
|
||
| snapper-cleanup.timer | Btrfs snapshot cleanup |
|
||
| fstrim.timer | SSD TRIM |
|
||
| ananicy-cpp | CPU/IO process priority |
|
||
| intel_lpmd | Intel low power mode daemon |
|
||
| plasmalogin | KDE login manager |
|
||
|
||
### Btrfs & Snapshots
|
||
|
||
- Snapper configured with `cachyos-snapper-support`
|
||
- `limine-snapper-sync` for bootloader snapshot sync
|
||
- `btrfs-assistant` GUI available
|
||
|
||
---
|
||
|
||
## Kernel & Boot
|
||
|
||
| Property | Value |
|
||
|---|---|
|
||
| **Active kernel** | linux-cachyos 7.0.10-2 |
|
||
| **LTS kernel** | linux-cachyos-lts 6.18.33-2 |
|
||
| **NVIDIA module** | linux-cachyos-nvidia-open 7.0.10-2 |
|
||
| **Bootloader** | Limine 12.3 |
|
||
| **Intel microcode** | 20260512 |
|
||
|
||
---
|
||
|
||
## Keyboard Customisation
|
||
|
||
### AltGr+P → `'` (apostrophe) remap
|
||
|
||
The default Slovak (`sk`) xkb layout inherits `þ` on AltGr+P from the `latin` include. Fixed via a custom xkb user variant.
|
||
|
||
**Files:**
|
||
|
||
- `~/.config/xkb/symbols/sk` — custom variant file (named `sk`, not `sk_custom`, because libxkbcommon looks up variants by layout filename)
|
||
- `~/.config/xkb/rules/evdev.xml` — local copy of system evdev.xml with `sk_custom` variant registered
|
||
- `~/.config/xkb/rules/evdev` — local copy of system evdev rules file
|
||
- `~/.config/kxkbrc` — KDE keyboard config pointing to `LayoutList=sk`, `VariantList=sk_custom`
|
||
|
||
**`~/.config/xkb/symbols/sk` content:**
|
||
|
||
```
|
||
partial alphanumeric_keys
|
||
xkb_symbols "sk_custom" {
|
||
include "sk(basic)"
|
||
key <AD10> { [ p, P, apostrophe, NoSymbol ] };
|
||
};
|
||
```
|
||
|
||
**Gotchas:**
|
||
- `setxkbmap` and `XKB_CONFIG_ROOT` do not work on Wayland — changes must go through `~/.config/xkb/`
|
||
- The symbols file must be named after the layout (`sk`), not the variant (`sk_custom`) — libxkbcommon looks up variants inside the layout file
|
||
- `include "sk"` causes infinite recursion when the file is named `sk` — use `include "sk(basic)"` instead
|
||
- KDE reads `~/.config/xkb/`, not `~/.xkb/`
|
||
- keyd was tested but doesn't work cleanly with non-US layouts on Wayland without switching the display server to US layout
|
||
|
||
---
|
||
|
||
## Troubleshooting
|
||
|
||
### Bambu Studio (Flatpak) — model/build plate not rendering after NVIDIA driver update
|
||
|
||
**Symptom:** Bambu Studio opens fine but the build plate and any loaded model are invisible/blank. This is a **recurring pattern**, confirmed on at least two separate occasions (2026-07-11 and 2026-08-11), both directly following a host NVIDIA driver update.
|
||
|
||
**Root cause (recurring pattern):** The Flatpak runtime bundles its own NVIDIA GL extension (`org.freedesktop.Platform.GL.nvidia-XXX`), which must exactly match the host NVIDIA driver version (down to the patch digit). CachyOS is rolling-release, so `nvidia-smi` driver version drifts ahead of the installed Flatpak extension after routine system updates — this silently breaks EGL/DRI2 initialization (`failed to create dri2 screen`, `driver (null)`, `Cannot load libcuda.so.1` in logs), even though nothing about Bambu Studio itself changed.
|
||
|
||
**Diagnosis:**
|
||
```bash
|
||
# Host driver version
|
||
nvidia-smi --query-gpu=driver_version --format=csv,noheader
|
||
|
||
# Installed Flatpak NVIDIA GL extension(s)
|
||
flatpak list -d | grep -i nvidia
|
||
```
|
||
If the host driver version doesn't match any installed `Platform.GL.nvidia-XXX` extension exactly, that's the cause.
|
||
|
||
**Fix:**
|
||
```bash
|
||
flatpak update
|
||
```
|
||
`flatpak update` alone is sufficient — it detects and pulls the correct matching `org.freedesktop.Platform.GL.nvidia-<version>` extension for the current host driver automatically. No need to name the exact version manually. Fully quit and relaunch Bambu Studio afterward (reboot not required).
|
||
|
||
Note: on the 2026-08-11 occurrence, forcing XWayland (`GDK_BACKEND=x11 GSK_RENDERER=gl`) was tried first and did **not** fix it — confirming this is purely a driver/Flatpak-runtime version mismatch, not a Wayland compositor issue. That step can be skipped in future occurrences; go straight to the diagnosis/fix above.
|
||
|
||
**If Flathub hasn't published the matching extension version yet:** switch off Flatpak entirely and use the AUR binary instead, which uses the host driver directly and avoids this whole class of bug on future driver updates:
|
||
```bash
|
||
paru -S bambu-studio-bin
|
||
```
|
||
|
||
**Confirmed occurrences:**
|
||
- 2026-07-11 — host driver updated, matching `org.freedesktop.Platform.GL.nvidia-610-43-03` extension installed, resolved.
|
||
- 2026-08-11 — host driver updated to 610.57.04, resolved via plain `flatpak update` pulling `org.freedesktop.Platform.GL.nvidia-610-57-04`.
|