QubesOS / qubes-issues

The Qubes OS Project issue tracker
https://www.qubes-os.org/doc/issue-tracking/
534 stars 46 forks source link

SCSI pass-through #7347

Open DemiMarie opened 2 years ago

DemiMarie commented 2 years ago

How to file a helpful issue

The problem you're addressing (if any)

CD and DVD drives cannot be burned or played outside of dom0 or sys-usb.

The solution you'd like

Use SCSI pass-through, which is fully supported by upstream Xen (including security support).

The value to a user, and who that user might be

Users will be able to burn and play CDs and DVDs without having to run the (potentially untrusted) burning and playback software in dom0 or sys-usb.

marmarek commented 2 years ago

played

For playing, attaching a block device to a VM is enough.

As for burning, indeed full SCSI is necessary.

DemiMarie commented 2 years ago

played

For playing, attaching a block device to a VM is enough.

As for burning, indeed full SCSI is necessary.

Is it needed for audio CDs, too? The website seems to suggest so.

pefu commented 2 years ago

example use: The popular Gnome application sound-juicer is able to convert audio CDs into .ogg, .mp3 or other audio file formats. However sound-juicer does not work with a block device. Since sound-juicer queries a public database on the internet to obtain song title, componist and interpreter information it would be very bad, if the user has to install this program in sys-usb and allow internet access from sys-usb.

dhuseby commented 2 years ago

+1 on this.

I have a Pioneer BD USB drive and it used to work prior to 4.1. I would attach the USB device to the AppVM and was able to talk to the device to convert my old CD's. With 4.1, I get SCSI errors.

Narvey commented 2 months ago

You know what is really silly about this? That I used to have a working setup (I think in 4.0) to play DVDs, and a later release took away functionality!

DemiMarie commented 2 months ago

No functionality was intentionally removed, but there is also no testing for this so something breaking is not surprising. @Narvey would you be willing to work on a patch?

rustybird commented 2 months ago

I don't think anything has changed as far as playback of DVD-Video discs is concerned. Forwarding as a block device basically works for that. Except (this is not a new thing though!), if the disc is scrambled with CSS (most are, but some niche releases don't bother), then it's also necessary to run the drive authentication handshake, convincing the drive to even just allow read access to the scrambled sectors. That authentication handshake is something that can not be done over the forwarded block device, it has do be done independently in the source VM e.g. with this tiny tool that depends on the libdvdcss library: https://github.com/ajdlinux/dvdopen