aboutsummaryrefslogtreecommitdiff
path: root/scripts/package-inventory
Commit message (Collapse)AuthorAgeFilesLines
* chore: open-source release-prep (udev flag, SPDX headers, boolean style)Craig Jennings21 hours1-0/+1
| | | | | | | | Three release cleanups, all behavior-preserving for my machines: - Gated the Logitech BRIO udev rule behind INSTALL_DEVICE_UDEV_RULES (default yes, opt-out), so the device-specific rule is off for anyone without that hardware. Added the config read, validation, and a conf.example entry. - Added a GPL-3.0-or-later SPDX-License-Identifier header after the shebang of all 24 shell scripts in the repo. - Standardized boolean conditionals on the explicit [ "$var" = "true" ] form, replacing the bare `if $var` idiom. The STEPS function-dispatch is left alone, since it runs a function name rather than testing a boolean.
* test(scripts): lock package-inventory behavior with characterization testsCraig Jennings11 days1-5/+10
| | | | | | | | package-inventory compares archsetup's declared packages against the live system but had no tests, so a future archsetup edit (a new for-loop shape, a renamed install helper) could silently break the extraction. I added two env seams so the script is testable without the real system. PKGINV_ARCHSETUP points the extractor at a fixture installer, PKGINV_PACMAN swaps in a fake pacman serving controlled query output. Both default to the real targets, so normal use is unchanged, and the seams match the env-override pattern audit-packages.sh already uses. The 7 tests pin the extraction (direct calls, for-loop lists, variable-arg skip) and both diff directions against the fixture, with no network or real pacman db. I also added a make package-diff target so the tool is reachable alongside the test targets.
* feat(archsetup): add package-inventory script and reconcile packagesCraig Jennings2026-02-071-0/+222
Add package-inventory script that compares archsetup-declared packages against the live system. Fix awk for-loop parser and dependency filtering. Add 10 missing packages to archsetup (hyprpaper, wev, socat, sshpass, flatpak, solaar, ttf-dejavu, atomicparsley, freetube, tidal-dl-ng). Fix pipx_install function name bug. Change Hyprland follow_mouse to 0 to fix swap focus issue.