app-emulation/virtualbox: Improved USB device detection.
authorLars Wendler <polynomial-c@gentoo.org>
Fri, 16 Feb 2018 14:39:42 +0000 (15:39 +0100)
committerLars Wendler <polynomial-c@gentoo.org>
Fri, 16 Feb 2018 14:56:06 +0000 (15:56 +0100)
Closes: https://bugs.gentoo.org/639352
Package-Manager: Portage-2.3.24, Repoman-2.3.6

app-emulation/virtualbox/files/virtualbox-detect-usb-fix.patch [new file with mode: 0644]
app-emulation/virtualbox/virtualbox-5.1.32.ebuild
app-emulation/virtualbox/virtualbox-5.2.6.ebuild

diff --git a/app-emulation/virtualbox/files/virtualbox-detect-usb-fix.patch b/app-emulation/virtualbox/files/virtualbox-detect-usb-fix.patch
new file mode 100644 (file)
index 0000000..bbb2894
--- /dev/null
@@ -0,0 +1,24 @@
+Patch by Maciej S. Szmigiero to make the script work even if no USB device was
+plugged in before virtualbox got started.
+
+https://bugs.gentoo.org/639352
+
+--- a/src/VBox/Installer/linux/VBoxCreateUSBNode.sh
++++ b/src/VBox/Installer/linux/VBoxCreateUSBNode.sh
+@@ -32,13 +32,13 @@
+ devpath="`printf "/dev/vboxusb/%.3d/%.3d" $bus $device`"
+ case "$do_remove" in
+   0)
++  case "$group" in "") group="vboxusers";; esac
++  mkdir /dev/vboxusb -m 0750 2>/dev/null
++  chown root:$group /dev/vboxusb 2>/dev/null
+   if test -n "$class" -a "$class" -eq "$usb_class_hub"
+   then
+       exit 0
+   fi
+-  case "$group" in "") group="vboxusers";; esac
+-  mkdir /dev/vboxusb -m 0750 2>/dev/null
+-  chown root:$group /dev/vboxusb 2>/dev/null
+   mkdir "$devdir" -m 0750 2>/dev/null
+   chown root:$group "$devdir" 2>/dev/null
+   mknod "$devpath" c $1 $2 -m 0660 2>/dev/null
index 8c962fe7c1ff7de3708f4bba7dae384ac1e5cbc7..698f0b56ddabdad0715a47c809871aaba68413b8 100644 (file)
@@ -193,6 +193,7 @@ src_prepare() {
        fi
 
        eapply "${WORKDIR}/patches"
+       eapply "${FILESDIR}/${PN}-detect-usb-fix.patch"
 
        eapply_user
 }
index 1464aa7bcd9d128104ea9cee48d21568d60a53b0..46c3c3cba7a01d43f0e3c6e90b8c070798640007 100644 (file)
@@ -193,6 +193,7 @@ src_prepare() {
        fi
 
        eapply "${WORKDIR}/patches"
+       eapply "${FILESDIR}/${PN}-detect-usb-fix.patch"
 
        eapply_user
 }