Feat/linux usb preview#285
Conversation
Generalize the reply loop over AsyncRead so TCP, macOS nusb, and the Linux usblp char device (driven through an AsyncFd adapter) share one framing.
Gate it by live enumeration like the print dialog and fall back to network at fetch time when the selected USB device is gone.
There was a problem hiding this comment.
Code Review
This pull request extends USB printer querying and preview support to Linux (previously macOS-only) by implementing non-blocking I/O over the usblp character device using AsyncFd and generalizing the shared transport read-reply logic. It also updates the frontend to handle Linux-specific USB permissions and improves fallback behavior when USB devices are disconnected. However, the newly added lp_io module in src-tauri/src/usb.rs contains compilation errors in both poll_read and poll_write because inner.get_mut() is called on std::fs::File, which does not have this method; suggestions have been provided to resolve this by calling read and write directly on a mutable rebinding of inner.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
No description provided.