Files
mw-pfeddersheim-workstation/docs/tech/stack.md
T
ja d9392447f9 doxify: inject DOX framework into AGENTS.md and update system config docs
- Inject all 10 DOX sections into root AGENTS.md (Core Contract, Read Before
  Editing, Update After Editing, Hierarchy, Child Doc Shape, Style, Closeout,
  User Preferences, Child DOX Index)
- Update ADR 0002: linux612->linux618, 575xx->580xx NVIDIA migration
- Update setup.md: kernel/driver refs to current linux618 + 580xx
- Update stack.md, hardware-inventory.md: NVIDIA note 595.71->580xx
- Update manual-overrides.md: add br_vm_internal bridge deletion entry
- Update workstation-health.md: add Recent Cleanup section
- Update README.md: current software versions, expand roles list
- Add docs/neovim-cheatsheet.md
- Bump last_updated to 2026-06-17 on all modified docs
2026-06-17 14:13:34 +02:00

95 lines
4.6 KiB
Markdown

---
description: >-
Detailed inventory of the core software stack, OS context, and maintenance
policies for the mw-pfeddersheim-workstation.
tags:
- software-stack
- inventory
- tech-stack
last_updated: '2026-06-17'
---
# Software Stack - mw-pfeddersheim-workstation
## Core Development Environment
| Technology | Version | Description |
|------------|---------|-------------|
| **Node.js** | 25.6.1 | Primary JavaScript/TypeScript runtime |
| **Python** | 3.14.3 | Secondary scripting and AI automation language |
| **PHP** | 8.5.3 (CLI) | Legacy and ERP integration language |
| **Ansible** | 2.20.2 (core) | Infrastructure provisioning and configuration |
| **Docker** | 29.2.1 | Containerization and environment isolation |
| **Git** | latest | Version control |
| **ripgrep** | latest | Fast line-oriented search tool (`rg`) |
| **bat** | latest | A `cat` clone with syntax highlighting |
| **rustdesk** | latest | Remote management via Tailscale |
## Desktop Environment
|| Technology | Version | Description |
||------------|---------|-------------|
|| **Hyprland** | 0.55.2 | Wayland compositor (uwsm-managed) |
|| **Waybar** | latest | Status bar (with USB auto-mount module) |
|| **Kitty** | latest | GPU-accelerated terminal emulator |
|| **Fuzzel** | latest | Application launcher (preferred over Wofi) |
|| **Dunst** | latest | Notification daemon |
|| **yazi** | latest | Terminal file manager (full deps: chafa, 7zip, resvg, etc.) |
## Known Issues (2026-05-22 Boot Audit)
| Domain | Issue | Status |
|--------|-------|--------|
| **PCIe slot** | GPU in bottom PCIEX4 slot (PCIe 2.0 x4, ~2 GB/s) instead of top PCIEX16 (PCIe 3.0 x16, ~16 GB/s). **8x bandwidth loss** | **Pending**: physical move required |
| **PCIe slot** | NVMe Samsung PM9A1 running Gen2 x4 (8 GT/s) instead of Gen3 x4 (16 GT/s). May resolve after GPU slot fix + BIOS Gen3 setting | **Pending**: BIOS tuning |
| **Idle daemon** | hypridle SEGV crash loop — sdbus-cpp 2.3.0 ABI break | **Fixed**: sdbus-cpp upgraded to 2.3.1-1 |
| **Webcam (UVC)** | Device 1-10 has multiple UVC control failures (zoom/pan/tilt/iris non-functional due to firmware non-compliance) | Known hardware limitation, core capture works |
| **KVM** | `/dev/kvm` unavailable — libvirtd cannot use hardware acceleration | Open — check BIOS VT-x/AMD-V |
| **Wi-Fi regulatory** | `regulatory.db` firmware missing — channels restricted | Open — install `wireless-regdb` |
| **D-Bus** | Stale `org.kde.kwalletd6.service` file; dunst/kscreen naming mismatches | **Fixed**: kwalletd6 stub removed; kscreen/kscreenlocker/libkscreen uninstalled (35 MiB) |
| **XDG portals** | Deprecated `UseIn` key usage (portals.conf preferred) | Low priority, functional |
**Removed (2026-05-22, ADR 0007)**: All X11 display managers (lightdm, sddm), X11 video/input drivers (xf86-*), X11 tools (xterm, xorg-xinit, x11vnc, etc.), entire KDE Plasma stack (kwin, plasma-desktop, plasma-workspace, plasma-nm, plasma-pa, powerdevil, etc.), and Dolphin (replaced by yazi). `greetd`+`tuigreet` is the active DM. Screenshots use `grim`+`slurp`+`grimblast`.
## Browsers
| Technology | Version | Notes |
|------------|---------|-------|
| **Google Chrome** | 148.0.7778.178 (AUR) | Sole browser — Wayland-native, VA-API on NVIDIA |
| ~~Chromium~~ | ~~removed~~ | All artifacts cleaned 2026-05-22 (see ADR 0006) |
## OS Context
- **OS**: Linux (Manjaro/Arch Linux based)
- **Architecture**: x86_64
## Package Domain Classification (ADR 0007 Tier 4)
Packages previously listed as "Misc" reclassified to functional domains:
| Package | New Domain | Role |
|---------|-----------|------|
| uv | Python Toolchain | Fast Python package/env manager |
| jq | Shell/Terminal | JSON processor |
| inxi | Hardware | System hardware info |
| lsof | Core OS | List open files |
| iproute2 | Network | Advanced routing/networking |
| openresolv | Network | DNS resolver management |
| perl-image-exiftool | Dev Tools | Metadata read/write |
| icoutils | Dev Tools | ICO/ANE cursor extraction |
| innoextract-git | Dev Tools | Inno Setup installer extraction |
| opencl-headers | GPU Compute | OpenCL C headers |
| libxnvctrl-580xx | NVIDIA | NVML/XNVCTRL for 580xx |
| zram-generator | Core OS | Systemd zram swap generator |
| mkinitcpio-openswap | Core OS | Swap resume hook for mkinitcpio |
## Maintenance Policies
- **Updates**: System-wide updates via `pacman` managed through maintenance scripts.
- **Node.js**: Global packages managed via `pnpm`.
- **Python**: Use `uv` for environment management.
- **PHP**: Managed via system package manager, focused on CLI execution.
## Tool Path Summary
- **Ansible**: `/usr/bin/ansible`
- **Python**: `/usr/bin/python`
- **Docker**: `/usr/bin/docker`