Sosumi usb passthrough

Olá.

Alguém sabe como fazer o macOS do Sosumi, reconhecer o dispositivo USB conectado na máquina? Um iPhone mais precisamente.

vc vai precisar editar um arquivo dentro da pasta snap na sua home, o nome do arquivo que vc tem que editar provavelmente é basic.sh
adicionar os parâmetros descritos nesse post no stack exchange dentro do arquivo

Não encontrei esse arquivo mas tentei fazer as configurações no launch do sosumi. O resultado é que pela VM eu encontrei uma porta mapeada. Porém os dispositivos que eu coloca nessa porta, não fazem efeito algum.

image

isso ai é simulado pelo qemu, não são hubs usb reais

e como vc fez essas configurações? isso envolve editar o arquivo “launch” que tá em ~/snap/sosumi/common/launch ?

Uses an editable launch script in ~/snap/sosumi/common/launch

Isso. acrescentei a seguinte linha ao launch:

-device usb-host,hostbus=1,hostport=2 \

O arquivo completo está assim:

#!/bin/bash

OSK="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"

"$SNAP"/usr/bin/qemu-system-x86_64 \
    -enable-kvm \
    -m 4G \
    -machine q35,accel=kvm \
    -smp 4,cores=2 \
    -cpu Penryn,vendor=GenuineIntel,kvm=on,+sse3,+sse4.2,+aes,+xsave,+avx,+xsaveopt,+xsavec,+xgetbv1,+avx2,+bmi2,+smep,+bmi1,+fma,+movbe,+invtsc \
    -device isa-applesmc,osk="$OSK" \
    -smbios type=2 \
    -object rng-random,id=rng0,filename=/dev/urandom -device virtio-rng-pci,rng=rng0 \
    -serial mon:stdio \
    -drive if=pflash,format=raw,readonly,file="$SNAP"/firmware/OVMF_CODE.fd \
    -drive if=pflash,format=raw,file="$SNAP_USER_COMMON"/firmware/OVMF_VARS-1024x768.fd \
    -device virtio-vga,virgl=on \
    -display sdl,gl=on \
    -L "$SNAP"/usr/share/seabios/ \
    -L "$SNAP"/usr/lib/ipxe/qemu/ \
    -audiodev pa,id=pa,server="/run/user/$(id -u)/pulse/native" \
    -device ich9-intel-hda -device hda-output,audiodev=pa \
    -usb -device usb-kbd -device usb-mouse \
    -netdev user,id=net0 \
    -device vmxnet3,netdev=net0,id=net0 \
    -drive id=ESP,if=virtio,format=qcow2,file="$SNAP_USER_COMMON"/ESP.qcow2 \
    -drive id=SystemDisk,if=virtio,file="$SNAP_USER_COMMON"/macos.qcow2 \
    -device usb-host,hostbus=1,hostport=2 \

E se eu der um lsusb -t ele mostra essas informações que coloquei de porta e bus.

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
    |__ Port 2: Dev 17, If 0, Class=Vendor Specific Class, Driver=usbfs, 480M
    |__ Port 3: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 2, If 2, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 4: Dev 3, If 0, Class=Vendor Specific Class, Driver=rtsx_usb, 480M
    |__ Port 6: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 6: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 8: Dev 5, If 1, Class=Wireless, Driver=btusb, 12M
    |__ Port 8: Dev 5, If 0, Class=Wireless, Driver=btusb, 12M

Talvez possa estar enganado e não consegui entender bem e configurei errado. Mas quando dou esse mesmo comando dentro da VM, ele mostra uma nova porta, mas que por algum motivo não reconhece o dispositivo.

que tal essa forma de fazer usb passthrough:
https://wiki.archlinux.org/index.php/QEMU#Pass-through_host_USB_device
?

Tentei de tudo que é forma que é falado lá e de outras formas também. Simplesmente não aconteceu nada =/

Estou começando a achar que é algo exclusivo do sosumi que não permite fazer esse USB passthrough, pois vi muita gente com o mesmo problema e nenhuma solução. Mas é difícil afirmar pois meu conhecimento com virtualização é muito razo.

o sosumi é containerizado com o snap, eu tive uns problemas parecidos com isso e postei aqui no fórum

a solução foi usar isso:

ao invés de usar o sosumi