Commit Graph
30 Commits
Author SHA1 Message Date
mw ce99f58374 docs: Caddy manual override + OnlyOffice MCP SSE investigation (#92)
Record the Caddy reverse-proxy at /etc/caddy/ (14 *.localhost sites,
mkcert TLS, systemd caddy.service) as a manual override in
docs/tech/manual-overrides.md - no caddy Ansible role exists yet.

Add a 'Local Dev Services' section to docs/tech/stack.md listing all
*.localhost sites and useful Caddy commands.

New learning record docs/learnings/2026-07-06-caddy-onlyoffice-mcp-sse-
investigation.md: Caddy emits 'context canceled' SSE aborts (~1.5ms) on
onlyoffice.localhost/mcp -> localhost:3847. Upstream verified alive
(HTTP 406 to plain GET = expected). Handed off to GitLab issue
satware/mcp/onlyoffice#92 with 5 hypotheses, 7 tasks, and a proposed
flush_interval -1 + transport http { versions 1.1 } mitigation (not
applied yet to avoid masking root cause).
2026-07-06 08:58:27 +02:00
mw 2b6ce0d635 docs: Remmina Wayland crash fix + upstream MR !2757
- Added learning doc for 2026-07-03 session: diagnosed SIGSEGV in
  XKeysymToKeycode (missing NULL check on XOpenDisplay), forked Remmina
  to gitlab.com/satware, built with FreeRDP3, verified fix, submitted MR.
- Added manual override entry for patched remmina-plugin-rdp.so in
  ~/.config/remmina/plugins/
2026-07-03 12:13:34 +02:00
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
jaandJunie fe7f133136 feat(hyprland): migrate config from .conf to .lua format (Hyprland 0.55+)
- Add hyprland.lua.j2 Ansible template with full Lua DSL config
- Update tasks to deploy hyprland.lua instead of hyprland.conf
- Add docs/tech/hyprland-lua-migration.md with API reference,
  dispatcher mapping, pitfalls, and validation commands
- Update keybindings doc to reflect .lua config format

Co-authored-by: Junie <junie@jetbrains.com>
2026-06-15 06:43:23 +02:00
ja 6f455ab0f2 chore: remove alesi-routine-morning systemd timer
- Deleted alesi-routine-morning.service and .timer from ~/.config/systemd/user/
- Timer failed daily at 07:45 (exit 128, git outside repo)
- daily-routine.sh script retained for manual use
- Updated CHANGELOG.md and workstation-health.md
2026-05-26 08:59:00 +02:00
ja b0af3dcf12 Workstation optimization: Chrome cleanup, package purge, PCIe audit, service tuning
- Chrome/Chromium cleanup (ADR 0006): removed 10GB chromium profile, broken PWA
  shortcuts, dead BROWSER_CDP_URL from .bashrc, restored Wayland chrome-flags.conf
- Package cleanup (ADR 0007): Tier 1-4 executed, 40 packages removed (KDE Plasma,
  ruby, love, xorg-server, kscreen/kscreenlocker), 45 cascade orphans purged
- Waybar USB module: auto-mount via udisks2, yazi integration, hover details
- Service tuning: disabled bluetooth.service, NetworkManager-wait-online.service
- hypridle fix: upgraded sdbus-cpp 2.3.0->2.3.1-1 (SEGV crash loop resolved)
- PCIe audit: GPU in wrong slot (PCIEX4 vs PCIEX16), 8x bandwidth loss documented
- D-Bus cleanup: removed stale org.kde.kwalletd6.service stub
- Ansible: all changes reflected in vars/main.yml and task files
2026-05-22 16:24:18 +02:00
ja 2487aa5749 feat(chrome): NVIDIA Wayland GPU acceleration for Chrome 148
Replace obsolete WebGPU flags with state-of-the-art NVIDIA VA-API
hardware decode config for Chrome 148 on Wayland/Hyprland.

- Disable seccomp sandbox to fix NVIDIA GBM "Permission denied" error
- Disable VulkanFromANGLE/DefaultANGLEVulkan (incompatible with Wayland)
- Force ANGLE->OpenGL backend to avoid Vulkan/Wayland conflicts
- Enable modern VA-API flags: VaapiOnNvidiaGPUs, AcceleratedVideoDecodeLinux*
- Add gnome-libsecret password store for gnome-keyring integration
- Install libva-utils and libva-nvidia-driver packages
- Update driver version to 580.159.03 in hardware inventory

WebGPU remains hardware accelerated via ANGLE+OpenGL. Chrome verified
working with full video decode acceleration (H.264, VP9, HEVC) via NVDEC.
2026-05-21 16:02:11 +02:00
ja 9d06a71f71 feat: migrate from SDDM to greetd+tuigreet
- Add greetd role with tuigreet greeter (3 packages, 4.9MB)
- Replace SDDM as display-manager.service with greetd
- Add ADR 0003 documenting migration rationale
- Rename hyprland task: "register session in SDDM" -> "register
  Wayland session desktop entry"
- Add display_manager variables to vars/main.yml
- Add greetd role to workstation.yml
- Update setup.md timestamp
2026-05-20 12:51:25 +02:00
jaandJunie cdb0730280 docs: update hardware/setup docs and add install script
Co-authored-by: Junie <junie@jetbrains.com>
2026-05-20 10:49:07 +02:00
jaandJunie 6ff790fd4b fix(ansible): optimize root trim policy
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-02 16:15:32 +02:00
ja bbdcd43e01 docs(tech): add post-firmware benchmark and complete GXA7801Q update docs
- Post-update fio benchmark: random read +12.4%, write +15.9% IOPS
- Latency reduced 10-14% for random workloads
- SMART health unchanged: 0 media errors, 0 error log entries
- Firmware research status updated to complete
- Pre-benchmark checklist marked done
2026-04-02 15:10:54 +02:00
ja 5d770d2def docs(tech): correct firmware target GXA7801Q (non-SED) and update status
- Key discovery: GXA7802Q is SED-only (00B07), our drive needs GXA7801Q (00B00)
- Updated all references from GXA7802Q to GXA7801Q
- Added firmware naming convention table (1Q=non-SED, 2Q=SED)
- Updated procedure with correct GitHub source and slot-based update
- Marked firmware update as applied (reboot pending)
- Added SHA256 checksum for GXA7801Q.bin
2026-04-02 10:57:12 +02:00
ja 1a57375fff docs(tech): pre-firmware benchmark + GXA7801Q update applied
- Comprehensive NVMe benchmark before firmware update (GXA7401Q)
- SMART health: 19% used, 0 media errors, 100% spare
- Sequential read: 1,554 MiB/s, write: 1,305 MiB/s
- Random read: 361k IOPS, write: 291k IOPS
- Key discovery: GXA7802Q is SED-only, GXA7801Q is non-SED (our drive)
- Firmware update applied: fw-download + fw-commit + fw-activate (slot 2)
- Reboot required to activate GXA7801Q firmware
2026-04-02 10:53:54 +02:00
ja 66408ff68f docs(tech): add pre-firmware-update NVMe benchmark (GXA7401Q)
Comprehensive benchmark of Samsung PM9A1 NVMe SSD before firmware
update from GXA7401Q to GXA7802Q. Includes SMART health, hdparm,
and fio results (seq/rand read/write, 4K blocks, iodepth=32).
2026-04-02 10:40:10 +02:00
ja 7a672833aa docs(tech): add PM9A1 firmware changelog GXA7401Q to GXA7802Q
- Document full firmware progression: GXA7401Q → GXA7602Q → GXA7702Q → GXA7802Q
- GXA7802Q fixes unmap/TRIM handling regressions from GXA7702Q
- Add sources: Samsung PDF, Win-Raid, GitHub samsung-nvme-firmware
2026-04-02 10:15:50 +02:00
ja b80dad6a75 feat(tech): add fwupd setup and firmware update research
- Install fwupd 2.1.1, refresh LVFS metadata
- Detect 7 devices: NVMe, SATA SSD, CPU, AMD TPM 2.0, 3 displays
- LVFS: no updates published for Samsung SSDs
- New discovery: AMD fTPM 2.0 (v3.8.0.3) not in original inventory
- NVMe firmware GXA7802Q available via nvme-cli (not LVFS)
- Action plan: 1 medium-risk update (NVMe), rest up-to-date or EOL
2026-04-02 10:02:15 +02:00
ja 9494d1693b docs(tech): add firmware/BIOS update research for all workstation components
- Researched 7 component categories for available firmware updates
- NVMe SSD (PM9A1): update available GXA7401Q -> GXA7802Q
- Motherboard BIOS F53 is current (no update needed)
- SATA SSD 840 EVO, GPU GTX 1050 Ti: EOL, no updates
- NIC/CPU microcode: managed via kernel/firmware packages
- USB peripherals: no LVFS/fwupd support
- Recommend installing fwupd for future firmware management
2026-04-02 09:49:00 +02:00
ja 5a1ae7b0e2 docs(tech): add hardware inventory and document LLM model migration
- Created docs/tech/hardware-inventory.md with full system specs
- Documented LLM model move to /home/mw/models in manual-overrides.md
2026-04-02 09:38:02 +02:00
ja 6980d7369a docs(tech): add hardware inventory, fix DDR5->DDR4 error in health doc
- New docs/tech/hardware-inventory.md with full hardware specs:
  CPU (Ryzen 7 2700X), RAM (64GiB DDR4-2666, 4x16GiB), storage
  (512G NVMe PM9A1 + 500G SATA 840 EVO), GPU (GTX 1050 Ti),
  networking (Realtek 1Gbps + Tailscale), USB peripherals, chipset
- Fix workstation-health.md: DDR5-3200 was incorrect, actual DDR4-2666
- Note: primary disk at 93% usage (34G free)
2026-04-02 09:18:06 +02:00
jaandJunie 8670ecd787 docs(security): expand supply chain defense guide with deep research findings
Co-authored-by: Junie <junie@jetbrains.com>
2026-03-23 23:16:34 +01:00
ja 519142f0d7 docs: update workstation health with crashlog analysis 2026-03-17 23:27:53 +01:00
ja 9a5d81124c docs: update workstation health documentation with system check results 2026-03-17 23:25:22 +01:00
ja 54ab23dce9 docs(system): analysis reports and EOD workflows
- Created crash analysis for 2026-03-17 OOM event.
- Documented stability test results and memory tuning effects.
- Added PARA-structured workflows for EOD protocol.
- Updated workstation health report for current 16GB swap status.
2026-03-17 19:02:06 +01:00
ja 2bce647b31 docs: sync system health and cleanup deprecated software (2026-03-13) 2026-03-13 14:24:14 +01:00
ja 3a74abc74a docs(health): update workstation health report for 2026-03-09 2026-03-09 12:41:48 +01:00
ja 91f4c8d283 docs: add manual-overrides.md as required by rules 2026-03-09 11:02:56 +01:00
ja 6dbe59e117 docs: align with satware AG best practices
- Delete deprecated CLAUDE.md
- Create root-level AGENTS.md for AI assistant guidance
- Create SDD constitution in .specify/memory/constitution.md
- Align documentation with PARA structure (docs/product/project-brief.md, docs/tech/stack.md, docs/plans/)
- Add standardized YAML frontmatter to all documentation files
- Update README.md with saTway branding and structure
2026-03-09 11:02:17 +01:00
ja 5a929898a1 docs: add workstation health report and spec baseline 2026-03-06 15:21:00 +01:00
ja 51b5afc8b4 feat(workstation): complete software cleanup and project organization
- Synchronized Ansible roles with removed redundant packages.
- Performed system audit (performance, boot, disk usage).
- Organized home directory by removing 22 clean remote repositories.
- Reclaimed ~21GB of disk space in ~/Projects.
- Retained dirty repositories and those without remote origins for safety.
- Updated documentation (performance tuning, software stack, setup).
- Created NEXT_STEPS.md and documented learnings.
2026-02-27 18:07:54 +01:00
ja 264cd31ce6 feat: initial infrastructure baseline 2026-02-27 16:20:37 +01:00