openSUSE Tumbleweed KDE4 / KDE Framework 5 latest / KDE Gears Latest (dolphin 23.08.0).
dolphin don’t connect device via mtp from regular user, but connect if dolphin run as root.
Connecting device
usb 1-7.1: new high-speed USB device number 9 using ehci-pci
usb 1-7.1: New USB device found, idVendor=0421, idProduct=05d1, bcdDevice= 1.00
usb 1-7.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-7.1: Product: 808 PureView
usb 1-7.1: Manufacturer: Nokia
usb 1-7.1: SerialNumber: 351965052407912
cdc_acm 1-7.1:1.1: ttyACM0: USB ACM device
usb 1-7.1: bad CDC descriptors
usb 1-7.1: bad CDC descriptors
mtp-probe: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:0a.1/usb1/1-7/1-7.1"
mtp-probe: bus: 1, device: 9 was an MTP device
mtp-probe: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:0a.1/usb1/1-7/1-7.1"
mtp-probe: bus: 1, device: 9 was an MTP device
Trying connect via dolphin from user with UID 1000
dolphin[19403]: kf.kio.core: "The file or folder udi=/org/kde/solid/udev/sys/devices/pci0000:00/0000:00:0a.1/usb1/1-7/1-7.1 does not exist".
Connecting via dolphin from root
dbus-daemon[19957]: [session uid=0 pid=19940] Activating service name='org.kde.kmtpd5' requested by ':1.9' (uid=0 pid=2961 comm="/usr/libexec/kf5/kioslave5 /usr/lib64/qt5/plugins/")
kiod5[2966]: QStandardPaths: runtime directory '/run/user/1000' is not owned by UID 0, but a directory permissions 0700 owned by UID 1000 GID 100
QStandardPaths: runtime directory '/run/user/1000' is not owned by UID 0, but a directory permissions 0700 owned by UID 1000 GID 100
dbus-daemon[19957]: [session uid=0 pid=19940] Successfully activated service 'org.kde.kmtpd5'
kiod5[2966]: kf.kio.kiod: loadModule "kmtpd"
org.kde.kmtpd5[2966]: Device 0 (VID=0421 and PID=05d1) is UNKNOWN in libmtp v1.1.21.
org.kde.kmtpd5[2966]: Please report this VID/PID and the device model to the libmtp development team
/usr/lib/udev/rules.d/69-libmtp.rules
ACTION!="add", ACTION!="bind", GOTO="libmtp_rules_end"
ENV{MAJOR}!="?*", GOTO="libmtp_rules_end"
SUBSYSTEM=="usb", GOTO="libmtp_usb_rules"
GOTO="libmtp_rules_end"
LABEL="libmtp_usb_rules"
ENV{ID_MTP_DEVICE}=="1", SYMLINK+="libmtp-%k", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0670", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0765", GOTO="libmtp_rules_end"
ATTR{idVendor}=="085c", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0971", GOTO="libmtp_rules_end"
ATTR{idVendor}=="04a9", ATTR{idProduct}=="22*", GOTO="libmtp_rules_end"
ATTR{idVendor}=="04a9", ATTR{idProduct}=="3113", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0cf3", GOTO="libmtp_rules_end"
ATTR{idVendor}=="03eb", GOTO="libmtp_rules_end"
ATTR{idVendor}=="0471", ATTR{idProduct}=="083f", GOTO="libmtp_rules_end"
ATTR{idVendor}=="1db2", ATTR{idProduct}=="060*", GOTO="libmtp_rules_end"
ATTR{idVendor}=="03f0", ENV{ID_USB_INTERFACES}=="*:0701??:*|*:ffcc00:", GOTO="libmtp_rules_end"
ENV{ID_USB_INTERFACES}=="*:0701??:*", GOTO="libmtp_rules_end"
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{ID_GPHOTO}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="/usr/lib/udev/mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
LABEL="libmtp_rules_end"
I don’t understand why dolphin via kio_mtp doesn’t want to mount the device from a normal user, while via simple-mtpfs
it is mounted from that user.
What permissions or rules are missing and where to dig further?