This week in KDE: Finally root file operations in Dolphin

Happy new year, everyone!

This week the last piece of a major project almost five years in the making was merged: PolKit support in KIO! This allows Dolphin and other KDE apps that use the KIO library to to create, move, copy, trash, and delete files in non-user-owned locations! It took a long time but we finally got it. Thanks very much to Jan Blackquill for pushing this over the finish line and Chinmoy Ranjan Pradhan for starting it and getting it very far those years ago. Support will arrive in Frameworks 5.91 in a little over a month. Until then, please test it in KDE Neon Unstable or OpenSUSE Krypton or your favorite distro’s “unstable” KDE packages, and file bugs on frameworks-kio if things don’t work right!

Other New Features

Konsole now lets you open the current directory or any other folder you right-click on in any app, not just the file manager (Jan Blackquill, Konsole 22.04):

KRunner now has an inline help feature, which you can show by clicking on a new question mark icon on its toolbar or typing “?” And while in Help mode, clicking a particular plugin will show you all the different search syntaxes for it! (Alexander Lohnau, Plasma 5.24)

In the Plasma Wayland session, KWin now supports greater than 8-bit color (Xaver Hugl, Plasma 5.24)

Users of the “Picture of the Day” wallpaper plugin can now pull images from http://simonstalenhag.se, which is full of cool and creepy sci-fi images (Alexey Andreyev, Plasma 5.24)

Bugfixes & Performance Improvements

Gwenview no longer sometimes crashes when opening JPEG files and the system’s libexiv2 library is older than version 0.27.5 (Lukáš Karas, Gwenview 21.12.1)

Extracting or compressing something in Dolphin using the relevant context menu items no longer ever causes a new Dolphin window or tab to be opened (Alexander Lohnau, Ark 21.12.1)

Ark no longer keeps the welcome screen visible for too long after you’ve used the app to do something (Albert Astals Cid, Ark 21.12.1)

When Partition Manager is used to reformat a partition, it is no longer owned by root by default (Tomaz Canabrava and Andrius Štikonas, Partition Manager 22.04)

In the Plasma Wayland session, advanced keyboard options once again work properly (Fabian Vogt, Plasma 5.23.5)

The System Tray now makes itself translucent or opaque based on the translucency/opacity setting of its parent panel, as expected (Konrad Materka, Plasma 5.23.5)

In the Plasma Wayland session, System Settings no longer crashes if you let the Display & Monitor’s revert timer get all the way down to 0 seconds (Méven Car, Plasma 5.24)

In the Plasma Wayland session, restoring a minimized or maximized window now does what it does on X11: switches to the virtual desktop that the window was on before restoring it, instead of restoring it to the current virtual desktop (Alex Rosca, Plasma 5.24)

Window decoration themes with rounded corners no longer suffer transparency and rotation-related related visual glitches when using a fractional scale factor like 125% or 150% (Julius Zint, Plasma 5.24)

Apps that update their window titles frequently no longer cause Plasma to consume excessive CPU resources or hang (Fushan Wen, Plasma 5.24)

User Interface Improvements

In Dolphin, multi-line file/folder labels are now capped at 3 lines long by default, and when you hover over them you can see a tooltip that displays the full text (Leo Treloar, Dolphin 22.04):

In the Task Manager’s context menu, the “Start New Instance” context item has been renamed to “Open New Window” for clarity and no longer appears for apps marked as having a single main window or that already provide a “New Window” action of their own, and the “More Actions” item has been moved to the bottom and renamed to just “More” (Nicolas Fella and me: Nate Graham, Plasma 5.24):

Discover now has an option to automatically reboot after an update is complete, which appears on the footer once the update process has begun (Aleix Pol Gonzalez, Plasma 5.24)

Scroll behavior in QtQuick software has been improved in several ways, including making the touchpad speed the same as it is in QtWidgets scrollviews, especially in the Plasma Wayland session when using screen scaling (Noah Davis, Frameworks 5.90)

…And everything else

Keep in mind that this blog only covers the tip of the iceberg! Tons of KDE apps whose development I don’t have time to follow aren’t represented here, and I also don’t mention backend refactoring, improved test coverage, and other changes that are generally not user-facing. If you’re hungry for more, check out https://planet.kde.org/, where you can find blog posts by other KDE contributors detailing the work they’re doing.

How You Can Help

Have a look at https://community.kde.org/Get_Involved to discover ways to be part of a project that really matters. Each contributor makes a huge difference in KDE; you are not a number or a cog in a machine! You don’t have to already be a programmer, either. I wasn’t when I got started. Try it, you’ll like it! We don’t bite!

Finally, consider making a tax-deductible donation to the KDE e.V. foundation.

39 thoughts on “This week in KDE: Finally root file operations in Dolphin

  1. Please rectify dolphin copy paste bug. Every time I copy paste to external devices like USB . files show up as copied, but when I opened them its empty ( escpecially video files corrupted ) . Lost my family videos of 25 GB due to this bug. This issue been there over several years and its not interface bug, its functional bug so please.

    Liked by 1 person

    1. You need to safely eject the usb drive before removing. Alternatively do `sync` command to finish file writing. This is linux behavior not dolphin.

      Like

      1. Sir I have saftely ejected drive many time, this the not first time I am not copying the files. I have done same with other filemanagers in same distribution set up such as manjaro, popos(kpop), KDE neon , kubuntu over the years everytime I noticed this copy issue now and then. If you dosent belive I will recreate issue and upload video. Thanks for reply

        Like

        1. When transferring files to a slow media like usb, files get buffered in ram. After files get done buffered to ram, the transfer dialog closes as buffering finishes but it’s still transferring the buffered data to the usb in background. User unplugs the usb thinking the transfer is finished and data gets corrupted. I’m afraid this is not a bug but a very bad aproach linux has taken. You can eliminate that by opening a terminal and type “sync” and wait to make sure all buffered data is written to the media. or more persistent solution would be in this search https://letmegooglethat.com/?q=turn+off+usb+buffer+linux

          Like

    2. I recently read somewhere that this is something that actually has been present a very long time, files claiming to have been copied when they in fact have not. Suddenly I realized that this messed up my whole music collection after a new KDE Neon install and copying 17k albums from an external usb harddrive, which in itself took forever.. Quite a bummer to realize not everything was copied and with no damn idea about what was not copied, and I don’t even trust the original files on the external drive anymore either. Have to copy them again to it from my windows computer. Resulted in a massive hysterical rage attack and wipe of KDE Neon and I will not use a linux computer for any of my music listening ever again. Now had I not had any backups.. hrrrrrr.. Hulk mad. Other than that, KDE is the right track. Happy new year.

      Liked by 1 person

      1. I have to admit, this behaviour of files saying they have copied complete to external media when in fact they are not complete is retarded. I have to check by trying the eject action to see if it’s complete. This has bitten me before and is a terrible user experience.

        Like

        1. Yeah, someone who never copies anything to/from a computer won’t care but I would be so vulgar as to state that this is not a severe bug, this is a critical flaw. Imagine doing backups and when the time comes that you need those backups..they are corrupted. You RELY on your backups. You sleep well knowing your stuff is backed up. This is how I do my backing up, I copy to an external drive and from there I copy the files to 3 other computers. Maybe I am a dinosaur, but that’s how us prehistoric creatures do things. I honestly think KDE should come with a warning sign “Do not copy files, they may or may not be OK” or something.. and I found out this by reading comments in forums..or was it even here in some post.. but still, this information was new to me and it made me very nervous, and created one HUGE hurdle to overcome for my personal use case. This really is front page news and no one is writing about it.

          Like

          1. Recently noted file copy speed is ballistic and it will complete within few second and dialogue will pop up like file copy complete(multiple files means more problem) and ultimatly when we remove USB it was not properly copied.

            Like

          2. I don’t know if that’s a Dolphin bug tbh. I am well aware of it and experienced it myself in the past.

            What happens is the initial copy goes to a buffer in RAM, and from there it copies (flushes) to the target storage, which might have a slower write speed. Unfortunately that buffer is what the OS seems to reference as the destination for transfer progress updates, so if it copies to that fast and the entire contents fits within that buffer, it could claim the transfer complete but in the background silently still transferring.

            Dolphin has since had improvements AFAIK to notify the user that an external device is busy if you try to unmount/eject it. It should tell you that it’s busy and possibly what applications are keeping it open. If you remove the device forcefully without safe removal, then you risk a failed transfer with corrupt data (especially painful with cut/paste instead of copy/paste).

            Where it’s frustrating is that the data can appear to be copied successfully, eg you can open a video file and scrub through it fine, but it’s potentially being viewed from the RAM buffer version IIRC… not the actual target storage device, which upon mounting again you find the file didn’t get properly transferred.

            Now for the fix. The kernel has some tunables related to that file buffer in memory that I mentioned earlier. IIRC the default is about 10% of your RAM, so the more RAM you have, the more likely you can run into this issue, especially if the external storage is slow (eg cheap USB 2.0 stick). There’s quite a few guides out there for changing those default settings (like this one: https://archived.forum.manjaro.org/t/decrease-dirty-bytes-for-more-reliable-usb-transfer/62513 ), if you choose bytes and use something like 10 megabytes worth, the buffer will only fill up to 10MB, then flush that to disk, then repeat.

            This will be slower to transfer, but far more reliable, the progress bar would be slower and more accurate, then all you need to wait for is that final 10MB to write to the target storage after transfer is complete and you should be good. The downside is this buffer is global, not per device, so internal fast storage would also be restricted to this, even if it can transfer much faster. The settings can be changed on-demand, so you could temporarily change during the transfer.

            Like

    3. This has happened to me too. All files apparently copied successfully to an external usb drive and unplugged using the correct remove option on the drive only to find some random files have 0 bytes when using the drive again

      Liked by 1 person

    4. tl;dr this is not really a bug, more like a missing feature.

      The correct thing to do would be unmounting the flash drive (via the right click menu or the “Disks and devices” (?) applet) before removing it from the USB port.
      Linux uses asynchronous writing by default. This means it doesn’t write changes to devices right away, both to prevent them from quick wear (in case of flash memory) and to speed up file operations. The drawback is, you *need* to unmount them before removing to be sure everything is correct.
      Linux also allows you to use synchronous writing, which writes the files in order and allows you to remove the device without unmounting pretty safely. It’s however much slower and destroys flash memory faster.
      The problem is that KDE (I guess KIO in particular, probably not Dolphin) doesn’t allow you to choose which option to use, so you are left with the default async no matter if you want it or not.
      Windows chooses to use sync by default for removable storage and well, it’s probably for the better, since most users probably don’t unmount devices before removing them. I’d probably go with this for KDE, with an option in system settings to change to async.

      Also, I hope you learned to keep backups!

      Like

    5. It happens to me in several linux distros all the time. In my experience it’s a NTFS problem, it usually helps to install ntfs support again. But I know it exists and I always double check when writing to NTFS filesystems. Or just format them to ext4 or btrfs (with compression and multiple disks! I have two 4tb portable disks that turn into a 8tb when I plug them both together )

      Like

  2. any plan to implement screencasting session restore in portal-kde (I think that’s what they cal the ability to save your preferences when the popup ask for permission)? As it is now, on wayland things like steam remote play are unusable because they require me to authorize it every time

    Like

  3. Thanks so much for keeping us up to date. And a special thanks to to the contributes for fixing the advanced keyboard bug. This was the blocker for me keeping myself on X11.
    2022 is going to be the year of KDE on the desktop 😉

    Liked by 1 person

  4. Nate you could create a feature request, I don’t know how to do that 🙂
    The request would be to add an option in Gwenview contest menu to set an image as a wallpaper, by right-clicking on an image.

    Like

  5. “In the Task Manager’s context menu, the “Start New Instance” context item has been renamed to “Open New Window” for clarity”
    “Discover now has an option to automatically reboot after an update is complete, which appears on the footer once the update process has begun (Aleix Pol Gonzalez, Plasma 5.24)”
    Both are very good change/addition. Oh and Happy new year!

    Liked by 1 person

  6. Thanks as always for the awesome updates. The pace of progress has been hard to keep up with and it’s awesome to see! Also, thank you to any other devs who happen to read this

    Liked by 1 person

  7. Happy new year!
    PolKit support in KIO is nice and we’ve been waiting for it since quite some time, but from looking at the discussion on the MR it seems that some developers have qualified doubts about code quality. As this feature concerns security, perhaps it would have been better to wait a bit longer and only merge when all devs have really agreed.

    Like

    1. > Support will arrive in Frameworks 5.90 in a few weeks.

      I think David Faure et al. have decided to revert the KIO PolKit commits for the 5.90 branch and postpone it to a future release, which makes sense from my POV. Maybe the blog post should be updated accordingly.

      Like

  8. “3rd-party window decoration themes with rounded corners no longer suffer transparency and rotation-related related visual glitches when using a fractional scale factor like 125% or 150% (Julius Zint, Plasma 5.24)”

    This is an excellent fix. It isn’t really for “3rd party” though as it affected Breeze too and didn’t need a rounded corner for there to be a glitch either. Horrible glitches on Wayland at the top and bottom edges of windows are now gone!

    Like

  9. OpenSUSE has “open as root” in dolphin for a long time. Always though it was default from KDE.

    My biggest issue however is not being able to upload remote/network files from Firefox.

    The issue is reported but Mozilla isn’t doing anything about it and it really affects my work.

    I understand it’s not a KDE problem but you have to search to understand what’s happening. But most users just blame Plasma…

    All in all, it’s been a great year and root-dolphin is great

    Like

      1. I was finally able to check if kio-fuse was installed and can confirm that it is.
        The problem is still here, however.

        Firefox lets me browser remote/samba shares and select the files but does not perform the upload.
        Falkon does not even allow me to browse the windows shares

        Maybe the bug from mozilla may help:
        https://bugzilla.mozilla.org/show_bug.cgi?id=526293

        This is THE major complain of “my” linux station workers (having to constantly copy-paste files from remote shares to home folder just to upload them)

        Please help fixing this, if you can 🙂

        Like

  10. Does anyone know how to adjust the tabs/menu font size in Firefox on Wayland? This is the last thing stopping me from switching on my 4K display setup.

    I have scaling at 100% and font dpi forced to 192dpi, icon sizes adjusted manually, to avoid blurry wayland scaling. But when starting Firefox with Wayland enabled, tab text is tiny. The dev.css trick doesn’t work.

    Also @Nate, have you thought about switching your body font to GentiumBookPlus? Your website looks amazing using my custom .css substitution for Georgia.

    Like

    1. In general workarounds for bugs will cause other bugs. You’d be much better off running Firefox in native Wayland mode by setting MOZ_ENABLE_WAYLAND=1 in your environment. I have this set in my ~/.bash_profile file. It works great.

      Like

  11. How can I request to create a new component in the bug tracker (for Okular)? I am working on reporting bugs on fb2 book format and there is no such component.

    Like

Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s