Today I finally managed to get large part (maybe 90%) of KDE Partition Manager to work from GUI running as unprivileged user. This means better security, better Wayland integration, better theming support, etc. It will still take some time to polish everything and make it ready for release but nevertheless KDE Partition Manager has reached a significant milestone. Unlike most programs that use KAuth, KDE Partition Manager requires root for practically any operation, so it took some time to properly refactor the code and make it ready for KAuth/Polkit.
KDE Partition Manager has also gained another backend that you can see in the video bellow. Previously, libparted backend was used for some of the partitioning operations which for a long time was the only functional backend. Now, KDE Partition Manager can use util-linux tools (mostly sfdisk) to manipulate partitions. In the future sfdisk backend will be the default backend since it supports running without root.
At the moment the code is published in my scratch repository. Eventually this code should reach git master but probably after KPMcore 3.3 is released. Getting Calamares to run root free should now be a bit easier too…
6 comments on “Root Free KDE Partition Manager”
What I’m still missing in KDE is a very simple right click menu to format SD-cards and USB-Sticks – like in Win-Explorer.
Well, I can’t do it from KDE Partition Manager. But I thought some other developers didn’t want to do it from Dolphin. But maybe things changed. You can always open feature request in bugzilla and see how discussion goes there.
Good stuff! Thanks
Still a lot of work left till this is done… But at least first results are here. All the previous refactoring I was doing to make this possible was not as visible.
I’m a bit worried though that my KAuth helper might be unacceptable to OpenSUSE security team (https://www.reddit.com/r/kde/comments/7at1gp/root_free_kde_partition_manager/dpctgty/). But we’ll see, maybe they won’t complain… Running as root is definitely less secure.
Very cool, thanks for working on this! =)