Created attachment 148882 [details] Icon shown SUMMARY Dolphin displays umount icon on every drive under Devices. Is there a way to hide it for internal (nonremovable) drives? STEPS TO REPRODUCE 1. Have some partition mounted for ex. via fstab 2. Open dolphin 3. Icon shows. OBSERVED RESULT Icon shows EXPECTED RESULT Icon hidden for permanent drives SOFTWARE/OS VERSIONS Arch Linux KDE Plasma Version: 5.24.5 KDE Frameworks Version: 5.93.0 Qt Version: 5.15.3 ADDITIONAL INFORMATION
Can you describe why's that an issue? Describe your usecase, how and why removing the icon would improve the situation. I'm not a KDE developer, but generally that kind of information helps developers figure out the optimal path for fixing an issue, or even figuring out if an issue is actually an issue or not. If the behavior I see on my computer is the same as on yours, I don't think that showing the icon for internal drives would necessarily be a bad thing. Usually the drives that show the icon (at least on my PC) are mounted on-demand. For instance, I have an NTFS partition for sharing files with Windows and I set those partitions to be auto-mounted on login from System Settings. That partition can be unmounted using that icon even if it's in an internal hard drive. Personally, I haven't found a reason to unmount internal drive partitions, but I'm sure there must be some kind of edge usecase out there for wanting to do that from Dolphin.
Simple tick box would be enough
(In reply to Norbert from comment #2) > Simple tick box would be enough Why though? In my opinion, cluttering the interface with an option for every single tiny thing is not ideal for a myriad of reasons. What's the reason for not wanting the button to be there for internal partitions? Is it aesthetics? Misclicks? Is it technically inaccurate? Does it lead to worse usability or other kinds of problems?
I've seen it mentioned quite a few times on reddit since 20 days ago and I don't like it myself as well. I agree with this post: https://old.reddit.com/r/kde/comments/ucbsfg/dolphin_new_icon_or_other_unrelated_change/ "I did a full update yesterday (Arch) and now I get these little icons besides my internal only SSD drives. https://imgur.com/lji7KFy These drives cannot be removed from my laptop unless I disassemble it. I will literally never unmount/eject them. Is there any way to remove these icons? Do I need to make an fstab change? Is it a Dolphin bug? Thanks bros" I too will literally NEVER unmount/eject drives that are inside my laptop. I would have to take my laptop entirely apart to get them. There should be a per-drive preference (checkbox in drive properties?) if we want this option to be available to all.
Thanks for triaging, Guilherme. I was going to ask that very question. :) It sounds like the problem is "it's visual clutter that could potentially lead to unintentional unmounts". I think we can consider hiding the unmount button for internal disks, either optionally or always.
Apologies up front if I am posting incorrectly here - first time, but wanted to comment on this issue. Was this an itentional change or a bug? I vote as well that it is an undesirable change. Yesterday the 3 internal HDD drives (SDB1, SDC1, SDD1) that are mounted via FSTAB at boot did not show an unmount Icon in Dolphin. Did all the availalbe Manjaro KDE updates this morning. Now the 3 internal HDD drives storing media that are never intended to be removed or unmounted in the Tower do. It is both functionally and asthetically undersirable and unnecessary for the Icons to be there. This my be (probably is) my misunderstanding - but wasn't one of the benefits of entering drives into FSTAB to get them set to a static mount point/location? Seems counterintuitive/confusing to now show an unmount Icon for internal drives mounted via FSTAB. Thanks!
Created attachment 148940 [details] Internal HDD FSTAB mounted Drives now show unmount icons
I don't know if we can know if the current user would be allowed to unmount it, i.e. don't shows the eject button if clicking it would prompt for root credentials.
*** Bug 453894 has been marked as a duplicate of this bug. ***
So I guess the question/rub for me - is why did this have to change..?? Put the code that handled this back the way it was. Seemed to work perfectly before. So why was it "fixed". If I want to unmount a physical drive attached to a SATA cable screwed into the case of the computer and mounted via FSTAB - I should need to do more that just click an always visible Unmount icon cluttering up the view in Dolphin. Whether in fact clicking that Icon intentionally or accidentally will or will not cauise additional dialogue to prevent the Unmount. If I plug a Thumb Drive or some other USB Storage device, with no over-riding FSTAB entry to make it a "permanent" drive - then an Unmount Icon makes absolute sense. Just like it worked a few days ago. Thanks!
(In reply to Thomas from comment #10) > So I guess the question/rub for me - is why did this have to change..?? Put > the code that handled this back the way it was. > Seemed to work perfectly before. So why was it "fixed". > > If I want to unmount a physical drive attached to a SATA cable screwed into > the case of the computer and mounted via FSTAB - I should need to do more > that just click an always visible Unmount icon cluttering up the view in > Dolphin. Whether in fact clicking that Icon intentionally or accidentally > will or will not cauise additional dialogue to prevent the Unmount. > > If I plug a Thumb Drive or some other USB Storage device, with no > over-riding FSTAB entry to make it a "permanent" drive - then an Unmount > Icon makes absolute sense. > > Just like it worked a few days ago. > > Thanks! I second every word of that comment! As can be seen in my bug duplicate above, this little changed caused several - even critical - disturbances. A solid drive, that is integrated in the system (like network drives in a company) should not be unmountable with a single click. Imho :)
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kio/-/merge_requests/849
Git commit 69b07770899098afd879f7dc1ed5f519f1dfba7d by Kai Uwe Broulik. Committed on 24/05/2022 at 13:44. Pushed by ngraham into branch 'master'. [KFilePlacesView] Show inline eject button only for removable drives Otherwise it clutters a list of internal drives that are never meant to be unmounted, and potentially not even allowed to be, with eject icons. Also, we currently only show fixed network shares (e.g. through fstab), which are usually not meant to be unmounted by the user. Storage without a drive (e.g. a mounted ISO image) keeps its eject inline button, too. Triggering an unmount from the contextmenu remains possible (except for Root and Home, as before). M +16 -0 src/filewidgets/kfileplacesitem.cpp M +2 -0 src/filewidgets/kfileplacesitem_p.h M +11 -0 src/filewidgets/kfileplacesmodel.cpp M +9 -0 src/filewidgets/kfileplacesmodel.h M +1 -1 src/filewidgets/kfileplacesview.cpp https://invent.kde.org/frameworks/kio/commit/69b07770899098afd879f7dc1ed5f519f1dfba7d
Thank You..!! To everyone - for listening to the end users, responding, and getting a fix out so quickly. Yet another reason KDE/Plasma rocks!
Absolutely impressive! Thanks to all involved
I cannot tell if this bug fix has been sent out yet or not? I did a major upgrade in Arch today to 5.25.0 and framework 5.95.0 and I am still seeing the unmount icons in Dolphin for my internal laptop drives that will never be removed. Your help is appreciated! I am still new to the whole KDE invent page so I can't tell when this fix was supposed to go out. kio 5.95.0-1 kio-extras 22.04.2-1 kio-fuse 5.0.1-1 dolphin 22.04.2-1 frameworkintegration 5.95.0-1 plasma-framework 5.95.0-2
KIO 5.95 should have this fix. So it seems something else is missing. What partition / drive / device is still showing an Eject button for you? Can you check solid-hardware5 list for your drive(s) and provide the output of solid-hardware5 details for each of them, and perhaps your list of mounts.
(In reply to Kai Uwe Broulik from comment #17) > KIO 5.95 should have this fix. So it seems something else is missing. What > partition / drive / device is still showing an Eject button for you? > > Can you check solid-hardware5 list for your drive(s) and provide the output > of solid-hardware5 details for each of them, and perhaps your list of mounts. I have 3 internal drives in my laptop. 1 SATA and 2 NVMe. I am still very new to Linux so I don't know if this is what you needed but I ran 'solid-hardware5 list' and can see my drives there: udi = '/org/freedesktop/UDisks2/block_devices/nvme0n1' udi = '/org/freedesktop/UDisks2/block_devices/nvme0n1p2' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d1' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d2' udi = '/org/freedesktop/UDisks2/block_devices/sda1' udi = '/org/freedesktop/UDisks2/block_devices/nvme1n1' udi = '/org/freedesktop/UDisks2/block_devices/sda' udi = '/org/freedesktop/UDisks2/block_devices/nvme0n1p1' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d0' udi = '/org/freedesktop/UDisks2/drives/WDC__WDS100T2B0A_*****_******' udi = '/org/freedesktop/UDisks2/drives/KINGSTON_SNVS1000GB_********' udi = '/org/freedesktop/UDisks2/drives/WDBGMP0010BNC_WRSN_******' (I masked the serials for privacy) I wonder if maybe they are listed with unmount icons because they are the unencrypted LUKS partitions? They used to not have the eject button but a little over a month ago that changed. Did your fix include drives that would be unencrypted? Like maybe the encrypted version would not show eject but when you unencrypt it does. Here is my mounts: mount | grep 'btrfs' /dev/mapper/cryptlvm on / type btrfs (rw,relatime,ssd,space_cache=v2,subvolid=5,subvol=/) /dev/mapper/luks-zy2h24g1-74n1-6362-hy56-a2ursf2ba7hc on /mnt/Documents type btrfs (rw,nosuid,nodev,relatime,ssd,space_cache=v2,subvolid=5,subvol=/,x-gvfs-show) /dev/mapper/luks-hbv25egs-67b4-7ahe-c378-52742a0y2153 on /mnt/Roms type btrfs (rw,nosuid,nodev,relatime,ssd,space_cache=v2,subvolid=5,subvol=/,x-gvfs-show)
(In reply to Kai Uwe Broulik from comment #17) > KIO 5.95 should have this fix. So it seems something else is missing. What > partition / drive / device is still showing an Eject button for you? > > Can you check solid-hardware5 list for your drive(s) and provide the output > of solid-hardware5 details for each of them, and perhaps your list of mounts. In addition to the details I added in Comment 18 I checked the details for those 3 drives and they all say removable false and hotpluggable false so I would assume that means the unmount shouldn't be showing. StorageDrive.bus = 'Sata' (0x4) (enum) StorageDrive.driveType = 'HardDisk' (0x0) (enum) StorageDrive.removable = false (bool) StorageDrive.hotpluggable = false (bool) StorageDrive.inUse = true (bool) Block.device = '/dev/nvme1n1' (string) StorageDrive.bus = 'Platform' (0x5) (enum) StorageDrive.driveType = 'HardDisk' (0x0) (enum) StorageDrive.removable = false (bool) StorageDrive.hotpluggable = false (bool) StorageDrive.inUse = true (bool) Block.device = '/dev/nvme0n1' (string) StorageDrive.bus = 'Platform' (0x5) (enum) StorageDrive.driveType = 'HardDisk' (0x0) (enum) StorageDrive.removable = false (bool) StorageDrive.hotpluggable = false (bool) StorageDrive.inUse = true (bool)
I was just wondering if this might be the cause of my loss of Umount icon for all my network mounts? I do need them. https://forum.manjaro.org/t/where-did-the-mount-unmount-icons-on-dolphin-go/115426
Created attachment 151529 [details] Screenshot Having just upgraded to 22.08, I came to this bug from Nate Graham’s blog, where he links to here and states that ‘The “Eject” button next to mounted disks in Dolphin’s Places panel no longer appears for internal disks and those manually added to your /etc/fstab file’. Sadly, I must disagree to his statement. I have several partitions on my internal NVMe drive, all of which have an auto-mount entry in fstab, and two of them have a remove button. Interestingly, they are both mounted under /mnt (data and gentoo). But that in itself is not the cause, because there is a third, /mnt/windows, and it has no remove button.
Can you check in solid-hardware5 list for those drives and then post the output of solid-hardware5 details for each one of these. The mount icon is shown if: * it is mounted * and it isnt / or where your $HOME is * and it is not a network share (nfs/cifs mount in fstab) * and there is a drive associated with it that is hotpluggable or removable (by definitions of hotpluggable and removable which I would need to look up)
(In reply to Kai Uwe Broulik from comment #22) > Can you check in solid-hardware5 list for those drives and then post the > output of solid-hardware5 details for each one of these. I used to have most of my internal SATA-drives set to hotpluggable in the BIOS, mostly because I have a dual hotswap bay installed. It is currently not in use, though. Nowadays, all the partitions shown on my screenshot reside on an NVMe drive, which by definition is not hot-pluggable, AFAIK. Before I post the whole wall of text from solid-hardware5, here is a summary, I hope the formatting is retained: > Device Name Mount point Remove button shown > ------------------------------------------------------------ > nvme 1 boot /boot entry not shown in Dolphin > nvme 3 windows /mnt/windows no > nvme 4 (LVM base partition) no > dm-1 arch / no > dm-2 home /home no > dm-3 gentoo /mnt/gentoo yes > dm-4 data /mnt/data yes Looking at your list of criteria again, I think I may see the problem: my affected partitions all reside on LVM and not on NVMe directly (like the unaffected windows partition). So maybe solid knows that the NVMe drive is not hot-pluggable, but does not know this about LVM. Or maybe it even assumes that LVM *is* hot-pluggable (except for / and $HOME). The boot partition (not shown in Dolphin, possibly due to StorageVolume.ignored?): solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/nvme0n1p1' udi = '/org/freedesktop/UDisks2/block_devices/nvme0n1p1' parent = '/org/freedesktop/UDisks2/drives/Samsung_SSD_970_EVO_Plus_2TB_xxxxxxxxxxxxxxx' (string) vendor = '' (string) product = 'Samsung SSD 970 EVO Plus 2TB' (string) description = 'EFI system partition' (string) icon = 'drive-harddisk' (string) Block.major = 259 (0x103) (int) Block.minor = 1 (0x1) (int) Block.device = '/dev/nvme0n1p1' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/boot' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = true (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'vfat' (string) StorageVolume.label = 'EFI system partition' (string) StorageVolume.uuid = 'e875-7c1b' (string) StorageVolume.size = 104857600 (0x6400000) (qulonglong) The windows partition at /mnt/windows (shown without remove button): solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/nvme0n1p3' udi = '/org/freedesktop/UDisks2/block_devices/nvme0n1p3' parent = '/org/freedesktop/UDisks2/drives/Samsung_SSD_970_EVO_Plus_2TB_xxxxxxxxxxxxxxx' (string) vendor = '' (string) product = 'Samsung SSD 970 EVO Plus 2TB' (string) description = 'Windows' (string) icon = 'drive-harddisk' (string) Block.major = 259 (0x103) (int) Block.minor = 3 (0x3) (int) Block.device = '/dev/nvme0n1p3' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/mnt/windows' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = false (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'ntfs' (string) StorageVolume.label = 'Windows' (string) StorageVolume.uuid = '3c0ec7340ec6e64c' (string) StorageVolume.size = 209715200000 (0x30d4000000) (qulonglong) My system’s root partition (LVM-lv "arch"): solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/dm_2d1' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d1' parent = '/' (string) vendor = '' (string) product = '' (string) description = 'arch' (string) icon = 'drive-harddisk-root' (string) Block.major = 254 (0xfe) (int) Block.minor = 1 (0x1) (int) Block.device = '/dev/dm-1' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = false (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'ext4' (string) StorageVolume.label = 'arch' (string) StorageVolume.uuid = '59056c42-c6f3-4975-a56f-d86e64c003bb' (string) StorageVolume.size = 47244640256 (0xb00000000) (qulonglong) The home partition (LVM-lv "home"): solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/dm_2d2' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d2' parent = '/' (string) vendor = '' (string) product = '' (string) description = 'home' (string) icon = 'drive-harddisk' (string) Block.major = 254 (0xfe) (int) Block.minor = 2 (0x2) (int) Block.device = '/dev/dm-2' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/home' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = false (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'ext4' (string) StorageVolume.label = 'home' (string) StorageVolume.uuid = 'd87ec338-5003-43a6-834f-87ee7fc56aee' (string) StorageVolume.size = 214748364800 (0x3200000000) (qulonglong) The "gentoo" partition at /mnt/gentoo (shown with remove button): solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/dm_2d3' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d3' parent = '/' (string) vendor = '' (string) product = '' (string) description = 'gentoo' (string) icon = 'drive-harddisk' (string) Block.major = 254 (0xfe) (int) Block.minor = 3 (0x3) (int) Block.device = '/dev/dm-3' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/mnt/gentoo' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = false (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'ext4' (string) StorageVolume.label = 'gentoo' (string) StorageVolume.uuid = '0afcd923-3813-4ce7-82f9-0883a38371cc' (string) StorageVolume.size = 53687091200 (0xc80000000) (qulonglong) The "data" partition at /mnt/data (shown with remove button): solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/dm_2d4' udi = '/org/freedesktop/UDisks2/block_devices/dm_2d4' parent = '/' (string) vendor = '' (string) product = '' (string) description = 'data' (string) icon = 'drive-harddisk' (string) Block.major = 254 (0xfe) (int) Block.minor = 4 (0x4) (int) Block.device = '/dev/dm-4' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/mnt/data' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = false (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'ext4' (string) StorageVolume.label = 'data' (string) StorageVolume.uuid = 'fa68cdf3-ac99-4f41-be41-65661d39021e' (string) StorageVolume.size = 1474742452224 (0x1575d800000) (qulonglong)
> KIO 5.95 should have this fix. Nope, still doing silly things as of KIO 5.97.0 Presumably mdraid volumes are "hot pluggable" as well these days? If anyone can think of any reason at all I would want to unmount /dev/md127 (mounted by-label in fstab) from dolphin, I'm all ears... Suddenly it has an unmount button here. I mean, I'm never going to even unmount it, let alone "eject" it (as suggested by the icon). The latter would mean stopping the array (which can't be done from KDE / GUI anyway) and physically pulling the disks... As far as I can deduce, at least empirically, the real logic (if you can call it that) here is that *anything* mounted to /mnt or /media that is not a network mount winds up with this silly button. How's about only showing it for stuff the *user* can reasonably unmount? If it's in fstab and doesn't have the "user" mount option (yes, that means tracking by-label and by-uuid etc. as well) then it's a system mount, leave it alone. $ solid-hardware5 details '/org/freedesktop/UDisks2/block_devices/md127' udi = '/org/freedesktop/UDisks2/block_devices/md127' parent = '/' (string) vendor = '' (string) product = '' (string) description = 'rust' (string) icon = 'drive-harddisk' (string) Block.major = 9 (0x9) (int) Block.minor = 127 (0x7f) (int) Block.device = '/dev/md127' (string) StorageAccess.accessible = true (bool) StorageAccess.filePath = '/mnt/rust' (string) StorageAccess.ignored = true (bool) StorageAccess.encrypted = false (bool) StorageVolume.ignored = false (bool) StorageVolume.usage = 'FileSystem' (0x2) (enum) StorageVolume.fsType = 'ext4' (string) StorageVolume.label = 'rust' (string) StorageVolume.uuid = 'da6b28d7-799f-4667-a2cf-0021b47df500' (string) StorageVolume.size = 4000650690560 (0x3a3795d0000) (qulonglong) $ grep rust /etc/fstab LABEL=rust /mnt/rust ext4 noatime 0 4
Additionally on my system the icon is not shown but I can click it, and it asks for password. KDE Plasma Version: 5.25.2 KDE Frameworks Version: 5.95.0 Qt Version: 5.15.5
(In reply to Norbert from comment #25) > Additionally on my system the icon is not shown but I can click it, and it > asks for password. > > KDE Plasma Version: 5.25.2 > KDE Frameworks Version: 5.95.0 > Qt Version: 5.15.5 Yes, and the tooltip is also still there if you hover in the area where the button/icon used to be. (well is on my KDE Dolphin). So the umount button is actually still there, it's just hidden??
(In reply to yizel7 from comment #19) > (In reply to Kai Uwe Broulik from comment #17) > > KIO 5.95 should have this fix. So it seems something else is missing. What > > partition / drive / device is still showing an Eject button for you? > > > > Can you check solid-hardware5 list for your drive(s) and provide the output > > of solid-hardware5 details for each of them, and perhaps your list of mounts. > > In addition to the details I added in Comment 18 I checked the details for > those 3 drives and they all say removable false and hotpluggable false so I > would assume that means the unmount shouldn't be showing. > > StorageDrive.bus = 'Sata' (0x4) (enum) > StorageDrive.driveType = 'HardDisk' (0x0) (enum) > StorageDrive.removable = false (bool) > StorageDrive.hotpluggable = false (bool) > StorageDrive.inUse = true (bool) > > Block.device = '/dev/nvme1n1' (string) > StorageDrive.bus = 'Platform' (0x5) (enum) > StorageDrive.driveType = 'HardDisk' (0x0) (enum) > StorageDrive.removable = false (bool) > StorageDrive.hotpluggable = false (bool) > StorageDrive.inUse = true (bool) > > Block.device = '/dev/nvme0n1' (string) > StorageDrive.bus = 'Platform' (0x5) (enum) > StorageDrive.driveType = 'HardDisk' (0x0) (enum) > StorageDrive.removable = false (bool) > StorageDrive.hotpluggable = false (bool) > StorageDrive.inUse = true (bool) I still have this issue and icons for all 3 of my internal drives that are inside my laptop that can not be physically removed without screws and are marked false for removable and hotpluggable. Operating System: Arch Linux KDE Plasma Version: 5.26.5 KDE Frameworks Version: 5.101.0 Qt Version: 5.15.7 Kernel Version: 6.0.17-hardened1-1-hardened (64-bit) kio 5.101.0-1 kio-extras 22.12.0-1 kio-fuse 5.0.1-1