3 Commits
Author SHA1 Message Date
Shen Mintaoandrtk94 e2c5835767 fix(udev): restrict mode switching to intended devices and events
Take the aic.rules portion of #129: restrict 1111:1111 switching to
88M80 USB devices, target the event's bus/device address, and eject only
whole disks on add. Add selection fixtures and document the product
restriction. Keep installer paths and existing firmware handling unchanged.

Co-authored-by: rtk94 <richardtknepp@gmail.com>
2026-11-02 14:31:52 +08:00
Shen Mintaoandrtk94 bee40068b9 fix(installer): test-build before replacing the active installation
Adapt the preflight protection from #128 without its firmware backup or
other installer policy changes. Build a clean private copy against the
running kernel before firmware replacement or DKMS removal. Treat log
initialization failure as an error and add mocked main-flow regressions.

Co-authored-by: rtk94 <richardtknepp@gmail.com>
2026-11-02 14:31:50 +08:00
Shen Mintao e1e9227cf4 fix: handle installer errors and avoid Arch partial upgrades
Install Arch dependencies using the existing package database and explain how to recover from stale package metadata. Avoid errexit on the first firmware count, handle Secure Boot prompt EOF as cancellation, propagate error traps into functions, and reject empty firmware sources before modifying installed firmware.

Validation: eight isolated installer regression tests pass; the original installer fails the affected cases. Bash syntax and ShellCheck error-level checks pass. Fixes #100. Addresses the confirmed findings in #108; other audit suggestions remain separate.
2026-10-19 11:31:26 +08:00