Ich wollte die Blu-ray von einem meiner Filme als MKV-Datei sichern, um sie bequem im Heimnetz abspielen zu können. Das Tool der Wahl war schnell gefunden, MakeMKV. Dies lässt auch ganz einfach per flatpak auf dem Steam Deck mit SteamOS installieren. Klingt ja eigentlich ganzeinfach, Programm installieren, Disc einlegen, Rippen. Der Reality-Check sah leider anders aus.
Das Problem
MakeMKV startete ordentlich, gab aber immer den folgenden Fehler aus:
The program can't find any usable optical drives.
Die Schritte, die ich zuerst vermutete, halfen alle nicht:
- Flatpak-Sandbox geöffnet mit flatpak override --user --device=all com.makemkv.MakeMKV - kein Erfolg. Nützlich, aber nicht die eigentliche Ursache.
- Quellcode-Build auf dem Deck versucht, dies scheiterte an der SteamOS-Umgebung (cannot run C compiled programs). Auf einem Steam Deck ist das Flatpak ohnehin der richtige Weg!
Schnell wurde aber klar, dass das System selbst das Laufwerk gar nicht sauber bereitstellte.
Die Fehlersuche, Schritt für Schritt
Mit einem externen Samsung SE-506 Blu-ray-Writer prüfte ich zuerst, ob das Gerät am USB-Bus ankommt lsusb. Das Laufwerk wurde aufgelistet. Ein ls /dev/sr0 zeigte allerdings, kein Blockgerät. Das Laufwerk war am Bus, aber der Kernel band kein CD-ROM-Laufwerk ein.
Die 1. Ursache, auf SteamOS fehlte das Modul sg. MakeMKV sucht Laufwerke primär über die SCSI-Generic-Geräte /dev/sg*, nicht nur über /dev/sr0:
sudo modprobe sg
ls /dev/sg*
Damit tauchten die Geräte auf. Damit das nach dem Reboot bleibt:
sudo sh -c 'echo sg > /etc/modules-load.d/sg.conf'
Und 2. auf SteamOS gehört /dev/sr0 der Gruppe optical und der Nutzer deck ist standardmäßig nicht Mitglied:
ls -l /dev/sr0
# brw-rw----+ 1 root optical ...
groups
# deck scanner steamos-log-submitter lp wheel
Ohne die Mitgliedschaft bekommt MakeMKV schlicht kein Permission denied! Gemeldet wird nur "no usable drives". Der Fix (Hinweis: die Gruppe heißt auf SteamOS optical, nicht wie üblich cdrom):
sudo usermod -aG optical deck
Danach komplett ab- und wieder anmelden! Die Gruppen greifen erst nach einem neuen Login!
Jetzt noch mal die Flatpak-Freigabe durchführen und MakeMKV starten:
flatpak override --user --device=all com.makemkv.MakeMKV
flatpak kill com.makemkv.MakeMKV
flatpak run com.makemkv.MakeMKV
Hinweis: Das Umgehen von Kopierschutzmaßnahmen ist rechtlich je nach Land und Kontext unterschiedlich geregelt. Was du mit deinen Discs machst, sollte innerhalb der Grenzen bleiben, die für dich gelten.

