In the old udisks backend you could set a hard disk device (e.g. eSATA) as removable using udev to set "UDISKS_SYSTEM_INTERNAL". This was reflected in the device property "DeviceIsSystemInternal" which influenced whether a disk showed in the device notifier etc. In Udisks2 this property has been replaced by UDISKS_SYSTEM and the device property "HintSystem" [1] but it looks like the udisks2 backend doesn't detect this. [1] http://udisks.freedesktop.org/docs/latest/udisks.8.html Reproducible: Always Steps to Reproduce: 1. Connect drive marked by udev as HintSystem=0 2. Mounting no longer requires system-internal permissions Actual Results: Device notifier fails to show drive as removable Expected Results: Device notifier shows drive as removable
I have the same problem with my esata drive, it seems, at least here is missing something: http://quickgit.kde.org/?p=kdelibs.git&a=blob&h=e38215403f4d923862c184abd9e9684691c25762&hb=5720d02a52b7db4322b6aa823292d345967b6125&f=solid%2Fsolid%2Fbackends%2Fudisks2%2Fudisksstoragedrive.cpp in the corresponding udisks1 file the "DeviceIsSystemInternal" property is tested
I have fix for this: in kdelibs in file "solid/solid/backends/udisks2/udisksstoragedrive.cpp" change line 51 to return _bus == Solid::StorageDrive::Usb || _bus == Solid::StorageDrive::Ieee1394 || (m_udevDevice.deviceProperty("UDISKS_SYSTEM").isValid() && !m_udevDevice.deviceProperty("UDISKS_SYSTEM").toBool()); Please apply my fix for the next kde-4.11 maintenance release.
Great, thanks for the patch, I will test it and commit
Have you tested this fix on your machine?
yes, I tested, and it works
Git commit 6241ec6f40881ec3a8f3ef4541d6d6953024a174 by Lukáš Tinkl. Committed on 27/11/2013 at 19:37. Pushed by lukas into branch 'KDE/4.11'. detect removable devices more reliably with udisks2 backend M +2 -1 solid/solid/backends/udisks2/udisksstoragedrive.cpp http://commits.kde.org/kdelibs/6241ec6f40881ec3a8f3ef4541d6d6953024a174