Commit Graph
24 Commits
Author SHA1 Message Date
ja 5173fdd5e0 Enable NumLock on boot via tuigreet and Hyprland
- Install numlockx
- Add --numlock flag to tuigreet greeter
- Add exec-once = numlockx on to Hyprland config
2026-05-28 08:32:40 +02:00
ja dbf366f8a5 Update Hyprland keybindings and monitor refresh rates
- SUPER+Q: killactive (was kitty)
- SUPER+T: exec kitty (new terminal binding)
- SUPER+C: removed (was killactive)
- All monitors set to 60Hz (DP-1 and HDMI-A-1 down from 144Hz)
2026-05-28 08:25:57 +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 7d8760592e chore: align IaC with today's package installs + PDF comparison docs
DevOps sync (2026-05-21):
- Remove onlyoffice-desktopeditors from absent list (actively used)
- Add gnome-keyring, rbw to common role (secrets migration)
- Add perl-image-exiftool, icoutils, innoextract-git to dev-tools
  (Windows installer inspection)
- Create fonts role: Inter, Cascadia Code, Fira, Source Sans, TeX Gyre
- Create pdf role: zathura, zathura-pdf-mupdf, python-weasyprint
- Register new roles in workstation.yml

PDF comparison:
- Add pdf-comparison docs with Quarto/Typst/Pandoc outputs
- Add batch-pdf.sh script
- Update yazi-cheatsheet.md
- Ignore .quarto/ cache
2026-05-21 13:38:50 +02:00
ja ee592cc21b feat: add start-hyprland watchdog override for uwsm session
Hyprland 0.53+ requires launching via start-hyprland (watchdog) for
proper crash diagnostics and signal handling. Without it a warning
banner appears on login.

Override package-managed hyprland.desktop with local copy pointing to
start-hyprland. XDG_DATA_DIRS priority ensures the override wins
without modifying system files.

- ansible/roles/hyprland/tasks/main.yml: manage override in ~/.local/share/wayland-sessions/
- docs/adr/0004-start-hyprland-override.md: full decision record
- docs/hyprland-uwsm.md: document override behavior
2026-05-21 11:15:14 +02:00
ja 2bf5f5c005 ansible: sync templates with live system state
- hyprland: add pulseaudio + custom/gpu modules to waybar
- hyprland: template hyprlauncher.conf
- hyprland: add keybinding updates (yazi, chrome, screenshots, reload)
- hyprland: add uwsm package, replace wofi with hyprlauncher
- hyprland: add waybar GPU monitoring script
- greetd: update tuigreet command to uwsm start
- vars: add uwsm, hyprlauncher; remove wofi; add screenshot tools
2026-05-21 09:10:24 +02:00
ja 1fcb467c04 feat: uwsm integration and hyprland worktime saver keybinds
- Replace SDDM with greetd+tuigreet (VT1) using uwsm-managed Hyprland
- Remove legacy exec-once from hyprland.conf
- Create 6 systemd user services: hyprpaper, waybar, dunst, hypridle,
  hyprlauncher, cliphist (all WantedBy=graphical-session.target)
- Add worktime saver keybinds: fullscreen, float, cycle windows,
  scratchpad, reload config, browser, keybind menu
- Home row navigation: HJKL for focus, move, resize (SUPER+ALT)
- Replace wofi with hyprlauncher (first-party, uwsm app prefix)
- Add hyprlauncher config with finders: desktop, math, unicode, font
- New ansible role templates: systemd/user services
- Documentation: hyprland-uwsm.md, cheatsheet.txt

KDE Wallet -> Bitwarden migration deferred (extract script prepared)
2026-05-20 16:02:53 +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
ja 1274b3e2cb feat: add hyprpaper wallpaper management with Next manga wallpaper 2026-05-20 12:31:21 +02:00
ja 89acae9751 feat(ansible/hyprland): enable left-handed mouse (pixart-usb-optical-mouse) 2026-05-20 12:09:02 +02:00
ja 7a95ef0019 fix(ansible/hyprland): standardize keybindings (Super+Q open, Super+C close)
Change default Hyprland keybindings to match convention:
- Super+Q now opens kitty (was Return)
- Super+C now kills active window (was Q)
2026-05-20 12:02:34 +02:00
ja a67c629356 fix(ansible/hyprland): update template for Hyprland 0.55+ syntax
- Remove pseudotile (removed in 0.55)
- Change togglesplit to layoutmsg, togglesplit
2026-05-20 11:34:53 +02:00
jaandJunie bab92f0292 feat: add hyprland environment templates
Co-authored-by: Junie <junie@jetbrains.com>
2026-05-20 10:49:07 +02:00
jaandJunie 54d8729e63 feat: implement hyprland role and package configuration
Co-authored-by: Junie <junie@jetbrains.com>
2026-05-20 10:49:07 +02:00
jaandJunie e6f3506ef1 feat: add system-upgrade role for kernel/nvidia migration
Co-authored-by: Junie <junie@jetbrains.com>
2026-05-20 10:49:07 +02:00
jaandJunie 45ad579120 feat: configure systemd power management and fix kitty TERM
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 1ae898a9af feat(dev-tools): expand Ansible role with complete CLI tool inventory
Add all tools from infra.standards.md §4 and global Skills requirements:
- CLI utilities: zoxide, fzf, gum, dust, bottom, scrot, shellcheck, shfmt
- Git CLIs: github-cli, tea, glab
- Python: ruff, uv
- DevOps: terraform, docker suite, podman, cmake
- Security: cosign, syft, trivy, certbot, dive
- Docs: typst, pandoc, wp-cli
- CalDAV: khal, vdirsyncer
- 3D/CAD: openscad, freecad, f3d
- Node.js global: @marp-team/marp-cli
- Python pipx: semgrep, huggingface_hub[cli]
2026-03-31 13:00:47 +02:00
ja 72274e0d39 feat(ansible): increase swap to 16GB and apply memory optimizations
- Resized swap file from 4GB to 16GB.
- Configured zswap pool (30%) and THP (madvise) via GRUB.
- Tuned kernel parameters for proactive reclaim and NVMe write-back.
- Integrated systemd-oomd for user slice monitoring.
- Updated documentation and changelog.
2026-03-17 19:02:01 +01:00
ja 13dc8f71aa feat(ansible): enable WebGPU in Chrome via chrome-flags.conf and add docs 2026-03-11 22:58:28 +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 21b6fa07d6 feat: implement maintenance and dev-tools roles and enhance maintenance script 2026-02-27 16:21:49 +01:00
ja 264cd31ce6 feat: initial infrastructure baseline 2026-02-27 16:20:37 +01:00