LEAP 16: fix for broken MTP (Android USB) support

Found that LEAP 16.0 has completely broken MTP device support due invalid udev rules.

Bug and fix reported here: https://bugzilla.opensuse.org/show_bug.cgi?id=1261532

Quick Workaround:

sudo bash
cd /usr/lib/udev/rules.d
find udev | cpio -pvdmn /usr/lib
udevadm control -R
# or rather reboot

Hopefully it will helps affected LEAP 16 users.

1 Like

Strange. So far I have connected three different Android devices to my desktop with Leap 16 and had no problems at all.

Could you please provide output of these 2 commands?

rpm -q libmtp-udev
rpm -ql libmtp-udev

Here is example of broken package in LEAP 16.0 (nested /udev path):

$ rpm -q libmtp-udev

 libmtp-udev-1.1.22-160000.2.2.x86_64

$ rpm -ql libmtp-udev

/usr/lib/udev
/usr/lib/udev/rules.d
/usr/lib/udev/rules.d/udev
/usr/lib/udev/rules.d/udev/hwdb.d
/usr/lib/udev/rules.d/udev/hwdb.d/69-libmtp.hwdb
/usr/lib/udev/rules.d/udev/mtp-probe
/usr/lib/udev/rules.d/udev/rules.d
/usr/lib/udev/rules.d/udev/rules.d/69-libmtp.rules

And here is output of fixed package from LEAP 16.1 Alpha (no nested /udev):

$ rpm -q libmtp-udev

libmtp-udev-1.1.23-160099.1.2.x86_64

$ rpm -ql libmtp-udev

/usr/lib/udev
/usr/lib/udev/hwdb.d
/usr/lib/udev/hwdb.d/69-libmtp.hwdb
/usr/lib/udev/mtp-probe
/usr/lib/udev/rules.d
/usr/lib/udev/rules.d/69-libmtp.rules

I’m curious what output will be in your case.

The only difference is the response to rpm -q libmtp-udev:
libmtp-udev-1.1.23-lp160.128.2.x86_64
The response to rpm -ql libmtp-udev is identical.