Came across an interesting issue when testing the rpi-imager snap. The application is pretty simple: select an image, select a target device, hit the button and it’ll flash and verify the image. However, there seems to be a slight difference in the target device selection dialog depending on whether the application was installed from a .deb or the snap.
This dialog nicely avoids displaying the root device (obviously intended to avoid users accidentally flashing their root drive). When installed from the deb, this operates correctly (only shows the SD card available for flashing) on all machines on which I’ve tried it.
When installed from the snap, this also operates correctly on my desktop PC (in which the internal storage is an SSD). However, on my laptop (in which the internal storage is a 64Gb eMMC) the following appears:
The top item in the dialog is the internal storage on the laptop (which doesn’t appear when the application is deb installed). I’m not sure if the application would actually permit me to flash the internal storage on the laptop, but nor am I particularly keen to try it and see
Might this be some effect of the containment of the snap, with the application perhaps not knowing that the internal storage device is actually mounted somewhere?
I’ve had a quick look at the application’s source and the linuxdrivelist.cpp unit looks vaguely relevant in terms of enumerating devices but I didn’t yet find where the actual filtering is done so I can’t point to a definite difference in the two environments.
Any ideas welcome!