5.6 KiB
5.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
- New Ansible role
ansible/roles/system-upgrade/that runs as the first role inworkstation.yml. Performs a fullpacman -Syu, dual-installslinux612(LTS, fallback) andlinux70(stable, new default) kernels with matching headers, and verifies both initramfs images and GRUB menu entries post-install. Invoke stand-alone withansible-playbook ansible/workstation.yml --tags system-upgrade; idempotent on re-runs (2026-05-18). docs/adr/0002-kernel-and-nvidia-strategy.md— ADR documenting the LTS+stable kernel choice and the575xx → 595.71NVIDIA migration for Hyprland/Wayland preparation (2026-05-18).- Pre-flight safety gate in the new role: aborts if free space on
/drops belowmin_free_root_gb(5 GiB by default) (2026-05-18). - Comprehensive NVMe benchmark for Samsung PM9A1 before firmware update: SMART health, hdparm, fio seq/rand benchmarks (2026-04-02). See
docs/tech/nvme-benchmark-pre-gxa7802q.md. - CLI suite update script
scripts/update-cli-suite.shfor Manjaro/Arch tool maintenance (2026-04-02).
Changed
- Executed
system-upgradeplaybook on the live workstation (2026-05-18).pacman -Syuupgraded 1103 packages; kernel set nowlinux612 6.12.85-1(LTS, was 6.12.77-1) +linux70 7.0.3-1(NEW); NVIDIA migrated to mainline595.71.05for bothlinux612-nvidiaandlinux70-nvidia; legacy*-nvidia-575xxpackages removed. Both/boot/initramfs-6.12-x86_64.img(54 MB) and/boot/initramfs-7.0-x86_64.img(122 MB) generated; GRUB regenerated with menuentries for both kernels. Reboot required: selectlinux70from the GRUB "Advanced options for Manjaro Linux" submenu to activate the new kernel and NVIDIA 595.71.05 modules. Logs:logs/system-upgrade-20260518-101253-live.log. - NVIDIA driver migrated from the pinned
*-nvidia-575xx(575.64.05) branch to the mainline*-nvidia(595.71.05) branch via the newsystem-upgraderole.linux612-nvidia-575xx,nvidia-575xx-utils,lib32-nvidia-575xx-utils,nvidia-575xx-settingsare removed;linux612-nvidia,linux70-nvidia,nvidia-utils,lib32-nvidia-utils,opencl-nvidia,nvidia-settingsare installed in one atomic pacman transaction (2026-05-18). ansible/workstation.yml:system-upgraderegistered as the first role, guarded bywhen: os_type == 'archlinux', with tagsystem-upgrade(2026-05-18).ansible/vars/main.yml: addedkernel_packages,nvidia_kernel_modules,nvidia_userspace_packages,nvidia_packages_to_remove,min_free_root_gbso future kernel/driver pins are a one-line change (2026-05-18).docs/tech/setup.md: new bootstrap step "Run system upgrade & kernel install" before the main playbook, with--tags system-upgradeexamples and a reboot-into-linux70callout (2026-05-18).- Samsung PM9A1 NVMe firmware update applied: GXA7401Q → GXA7801Q (non-SED variant, reboot pending to activate). All nvme-cli steps succeeded (2026-04-02).
- Corrected firmware research: GXA7802Q is SED-only (
00B07); non-SED drives (00B00) require GXA7801Q. Updateddocs/tech/firmware-update-research.mdwith naming convention and correct source. - Updated
.gitignore: addedlogs/anddocs/tech/capabilities/exclusions (2026-04-02).
Added (continued)
- Created formal stability tests report documenting the 2026-03-17 memory management improvements (2026-03-17).
- System stability improvements: enabled
systemd-oomdandzswapvia Ansible (2026-03-17). - Memory resource limits for Firebird and Mailpit Docker containers (2026-03-17).
- Implemented and verified advanced memory optimizations: zswap 30% pool, THP madvise, and proactive kernel reclaim tuning (2026-03-17).
- Integrated 16GB swap file management into Ansible roles for consistency and persistence (2026-03-17).
- Comprehensive health report for
mw-pfeddersheim-workstation(2026-03-09).
Changed (continued)
- Increased system swap file size from 4GB to 16GB to prevent OOM-related system hangs (2026-03-17).
- Updated system status in
README.mdanddocs/tech/workstation-health.md(2026-03-17). - Cleaned up deprecated software information from
docs/tech/stack.md(2026-03-13). - Synchronized software versions across documentation files (2026-03-13).
Fixed
- Resolved kitty cursor keys not working by disabling the
TERM=xterm-256coloroverride in.bashrc, allowing Kitty to correctly setTERM=xterm-kitty. Added Ansible management forkitty.confto ensure proper terminal behavior and shell integration (2026-05-19). system-upgraderole: GRUB menu assertion now matches Manjaro's realmenuentry 'Manjaro Linux (Kernel: X.Y.Z-MANJARO x64)'format (counted per-kernel-family) instead of the wrongmenuentry .*linux(612|70)regex that always returned 0 hits on Manjaro and broke the live run with a false-negative failure (2026-05-18).system-upgraderole: migration taskchanged_whennow matches pacman's progress lines^\(N/M\)\s+(installing|upgrading|removing)\sinstead of plain substring matching, so the role's own echo lines no longer trigger spuriouschanged=trueon idempotent re-runs. Verified: second live re-run reportsok=16 changed=0 failed=0 skipped=5(2026-05-18).- Resolved system unresponsiveness issue by addressing critical memory/swap pressure with increased headroom and proactive OOM killing (2026-03-17).
- Identified failed
archlinux-keyring-wkd-sync.servicein system health check.