Skip to content

fix(devices): stop locking built-in card readers on Windows - #242

Merged
SuperKali merged 3 commits into
mainfrom
fix/241-windows-card-reader
Nov 13, 2026
Merged

SuperKali merged 3 commits into
mainfrom
fix/241-windows-card-reader

Conversation

@SuperKali

Copy link
Copy Markdown
Member

Description

On Windows a laptop's built-in PCIe SD reader showed up locked as a system disk. Since #159 I only looked at the bus type to keep internal NVMe and SATA disks hidden, and this reader is on a bus that is neither USB nor SD.

I now also trust the removable-media flag Windows reports, but only on buses where a card reader can appear. NVMe, UFS and SAS ignore it, and the disk that hosts Windows is always a system disk. The session log gets one line per disk, so the next report can be read from the paste. NVMe drives in Thunderbolt enclosures stay locked for now.

Fixes #241

How Has This Been Tested?

  • npm run lint and npx tsc --noEmit -p tsconfig.app.json pass
  • cargo fmt --check, cargo clippy --all-targets --all-features -- -D warnings (also for the Windows target) and cargo test pass
  • Tried in the app on Windows: not yet, I have no machine with this reader. The reporter will try this PR's build

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • My changes generate no new warnings

Windows classified disks by bus type alone, so a PCIe SD card reader
with removable media counted as an internal disk. The removable flag
now counts on card-reader buses; NVMe, UFS and SAS stay internal.
Fixes #241
A reader on a bus other than USB fell back to the USB icon. A model
name containing "card reader" now gets the SD icon.
@github-actions

github-actions Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

🧪 Test Builds

Version: 0.0.0-pr.242 | PR: #242 | Commit: 05f0bce | Status: ready for testing

Platform Download
Linux x64 📦 .deb / .AppImage
Windows x64 📦 .exe
macOS ARM64 📦 .dmg
How to run these test builds

macOS (Apple Silicon):
The app is ad-hoc signed; you may see a quarantine warning. Go to System Settings > Privacy & Security, scroll to the Security section at the bottom, find Armbian Imager, and click "Open Anyway". Or use:

xattr -dr com.apple.quarantine /Applications/Armbian\ Imager.app

Windows:
Windows Defender SmartScreen may warn. Click "More info" then "Run anyway", and grant Administrator when prompted.

Linux:
Make AppImage executable and run, or install the .deb:

chmod +x ./*.AppImage && ./*.AppImage
# or
sudo apt install ./*.deb

Updates are disabled in these test builds. Artifacts expire in 14 days.
Built from this PR's code: read the changes before running it.

Full workflow run

@SuperKali SuperKali mentioned this pull request Nov 13, 2026
2 tasks done
cargo audit now denies rustix 1.1.3 as unsound (RUSTSEC-2026-0486,
xattr reads with a zero-length buffer). 1.1.6 has the fix.
@github-actions github-actions Bot added the status: ready for review Ready to be reviewed label Nov 13, 2026
@SuperKali
SuperKali merged commit 1f44e90 into main Nov 13, 2026
8 checks passed
@SuperKali
SuperKali deleted the fix/241-windows-card-reader branch November 13, 2026 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status: ready for review Ready to be reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: SD Card detected as System drive

1 participant