Change:
Describe the bug If you open KDE Partition Manager using its file, it tells you that you aren't running it as root, and you won't be able to make any changes with it (rendering the program useless). The only workaround is running (which is probably unintuitive to people with less linux experience) or changing the file (a bad idea when you want Nix to manage your system) To Reproduce Steps to reproduce the behavior: by adding it to your the file (e.g. in KDE, click on the start menu in the bottom left, type in partition manager, and click on the program) Expected behavior Use when clicking the file for a seamless experience Screenshots ! Additional context The message mentions so I tried adding it to by hand, but that did not work. Metadata Maintainer information:
Looks like the package is out of date. This dialogue does not appear to be part of the latest version:
This might work
Thank you for your contributions. This has been automatically marked as stale because it has had no activity for 180 days. If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity. Here are suggestions that might help resolve this more quickly: for maintainers and people that previously touched the related code and @ mention them in a comment. on the . on the on .

Discussion:
./programs/nm-applet.nix ./programs/npm.nix ./programs/oblogout.nix <ins> ./programs/partition-manager.nix </ins> ./programs/plotinus.nix ./programs/proxychains.nix ./programs/qt5ct.nix

<ins> { config, lib, pkgs, ... }: with lib; { meta.maintainers = [ maintainers.oxalica ]; ###### interface options = { programs.partition-manager.enable = mkEnableOption "KDE Partition Manager"; }; ###### implementation config = mkIf config.programs.partition-manager.enable { services.dbus.packages = [ pkgs.libsForQt5.kpmcore ]; # `kpmcore` need to be installed to pull in polkit actions. environment.systemPackages = [ pkgs.libsForQt5.kpmcore pkgs.partition-manager ]; }; } </ins>

<del> { stdenv, lib, fetchurl, extra-cmake-modules , qtbase, kio , libatasmart, parted , util-linux }: </del> <ins> { stdenv, lib, fetchurl, fetchpatch, extra-cmake-modules , qca-qt5, kauth, kio, polkit-qt, qtbase , util-linux }: </ins> stdenv.mkDerivation rec { pname = "kpmcore"; <del> version = "3.3.0"; </del> <ins> # NOTE: When changing this version, also change the version of `partition-manager`. version = "4.2.0"; </ins> src = fetchurl { url = "mirror://kde/stable/${pname}/${version}/src/${pname}-${version}.tar.xz"; <del> sha256 = "0s6v0jfrhjg31ri5p6h9n4w29jvasf5dj954j3vfpzl91lygmmmq"; </del> <ins> hash = "sha256-MvW0CqvFZtzcJlya6DIpzorPbKJai6fxt7nKsKpJn54="; </ins> }; <del> buildInputs = [ qtbase libatasmart parted # we only need the library </del> <ins> patches = [ # Fix build with `kcoreaddons` >= 5.77.0 (fetchpatch { url = "https://github.com/KDE/kpmcore/commit/07e5a3ac2858e6d38cc698e0f740e7a693e9f302.patch"; sha256 = "sha256-LYzea888euo2HXM+acWaylSw28iwzOdZBvPBt/gjP1s="; }) # Fix crash when `fstab` omits mount options. (fetchpatch { url = "https://github.com/KDE/kpmcore/commit/eea84fb60525803a789e55bb168afb968464c130.patch"; sha256 = "sha256-NJ3PvyRC6SKNSOlhJPrDDjepuw7IlAoufPgvml3fap0="; }) ]; buildInputs = [ qca-qt5 kauth </ins> kio <ins> polkit-qt </ins> <del> util-linux # needs blkid (note that this is not provided by util-linux-compat) </del> <ins> util-linux # Needs blkid in configure script (note that this is not provided by util-linux-compat) </ins> ]; nativeBuildInputs = [ extra-cmake-modules ];

dontWrapQtApps = true; meta = with lib; { <del> maintainers = with lib.maintainers; [ peterhoeg ]; </del> <ins> description = "KDE Partition Manager core library"; homepage = "https://invent.kde.org/system/kpmcore"; license = with licenses; [ cc-by-40 cc0 gpl3Plus mit ]; maintainers = with maintainers; [ peterhoeg oxalica ]; </ins> # The build requires at least Qt 5.14: <del> broken = lib.versionOlder qtbase.version "5.14"; </del> <ins> broken = versionOlder qtbase.version "5.14"; </ins> }; }

<del> { mkDerivation, fetchurl, lib </del> <ins> { mkDerivation, fetchurl, lib, makeWrapper </ins> , extra-cmake-modules, kdoctools, wrapGAppsHook, wrapQtAppsHook , kconfig, kcrash, kinit, kpmcore <del> , eject, libatasmart , util-linux, qtbase </del> <ins> , cryptsetup, lvm2, mdadm, smartmontools, systemdMinimal, util-linux , btrfs-progs, dosfstools, e2fsprogs, exfat, f2fs-tools, fatresize, hfsprogs , jfsutils, nilfs-utils, ntfs3g, reiser4progs, reiserfsprogs, udftools, xfsprogs, zfs </ins> }: let <del> pname = "partitionmanager"; </del> <ins> # External programs are resolved by `partition-manager` and then # invoked by `kpmcore_externalcommand` from `kpmcore` as root. # So these packages should be in PATH of `partition-manager`. # https://github.com/KDE/kpmcore/blob/06f15334ecfbe871730a90dbe2b694ba060ee998/src/util/externalcommand_whitelist.h runtimeDeps = lib.makeBinPath [ cryptsetup lvm2 mdadm smartmontools systemdMinimal util-linux btrfs-progs dosfstools e2fsprogs exfat f2fs-tools fatresize hfsprogs jfsutils nilfs-utils ntfs3g reiser4progs reiserfsprogs udftools xfsprogs zfs # FIXME: Missing command: tune.exfat hfsck hformat fsck.nilfs2 {fsck,mkfs,debugfs,tunefs}.ocfs2 ]; </ins> in mkDerivation rec { <del> name = "${pname}-${version}"; version = "3.3.1"; </del> <ins> pname = "partitionmanager"; # NOTE: When changing this version, also change the version of `kpmcore`. version = "4.2.0"; </ins> src = fetchurl { <del> url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz"; sha256 = "0jhggb4xksb0k0mj752n6pz0xmccnbzlp984xydqbz3hkigra1si"; </del> <ins> url = "mirror://kde/stable/${pname}/${version}/src/${pname}-${version}.tar.xz"; hash = "sha256-6Qlt1c47Eek6TkWWBzTyBZYJ1jfhtwsC9X5q5h6IhPg="; </ins> }; <del> nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook wrapQtAppsHook ]; </del> <ins> nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook wrapQtAppsHook makeWrapper ]; </ins> <del> # refer to kpmcore for the use of eject buildInputs = [ eject libatasmart util-linux ]; </del> propagatedBuildInputs = [ kconfig kcrash kinit kpmcore ]; <ins> postFixup = '' wrapProgram $out/bin/partitionmanager  --prefix PATH : "${runtimeDeps}" ''; </ins> meta = with lib; { description = "KDE Partition Manager"; <del> license = licenses.gpl2; </del> <ins> license = with licenses; [ cc-by-40 cc0 gpl3Plus lgpl3Plus mit ]; </ins> homepage = "https://www.kde.org/applications/system/kdepartitionmanager/"; <del> maintainers = with maintainers; [ peterhoeg ]; </del> <ins> maintainers = with maintainers; [ peterhoeg oxalica ]; </ins> }; }