summary refs log tree commit diff
path: root/pkgs/tools/misc/partition-manager
diff options
context:
space:
mode:
authorMaximilian Bosch <maximilian@mbosch.me>2018-05-22 12:10:51 +0200
committerxeji <36407913+xeji@users.noreply.github.com>2018-05-22 12:10:51 +0200
commita8a6d26f8f047a37170c3ce59b39f30be4da6aee (patch)
treefdf7d8a747de22a20bfeb1f8298ccc1b5f026470 /pkgs/tools/misc/partition-manager
parentbb28b3e80fe6e394a809bf7393c4d551c30247b2 (diff)
downloadnixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.tar
nixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.tar.gz
nixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.tar.bz2
nixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.tar.lz
nixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.tar.xz
nixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.tar.zst
nixpkgs-a8a6d26f8f047a37170c3ce59b39f30be4da6aee.zip
partition-manager: 3.0.1 -> 3.3.1 (#40895)
The `3.0.1` build was broken (see the Hydra build from
https://hydra.nixos.org/build/74368257 for further reference).

Because of the missing `utillinux` build input the package fails fairly
early:

```
-- Checking for module 'blkid'
--   No package 'blkid' found
CMake Error at /nix/store/9hmhxgj4jk6jmxihgavj6gm0p759misc-cmake-3.10.2/share/cmake-3.10/Modules/FindPkgConfig.cmake:415 (message):
  A required package was not found
```

Additionally `partition-manager` was broken on non-KDE desktops (none+i3
in my case) as the plugins from `libsForQt5.kpmcore` couldn't be found
in `QT_PLUGIN_PATH` unless it's installed in
`environment.systemPackages` or with `nix-env -iA libsForQt5.kpmcore`.
This has been fixed by adding a wrapper in the `postInstall` hook which
prefixes the `QT_PLUGIN_PATH` with the plugin path from `kpmcore` used
for the build.
Diffstat (limited to 'pkgs/tools/misc/partition-manager')
-rw-r--r--pkgs/tools/misc/partition-manager/default.nix26
1 files changed, 18 insertions, 8 deletions
diff --git a/pkgs/tools/misc/partition-manager/default.nix b/pkgs/tools/misc/partition-manager/default.nix
index a1c1eccdd88..4599309b238 100644
--- a/pkgs/tools/misc/partition-manager/default.nix
+++ b/pkgs/tools/misc/partition-manager/default.nix
@@ -1,26 +1,36 @@
 { mkDerivation, fetchurl, lib
 , extra-cmake-modules, kdoctools, wrapGAppsHook
 , kconfig, kcrash, kinit, kpmcore
-, eject, libatasmart }:
+, eject, libatasmart , utillinux, makeWrapper, qtbase
+}:
 
 let
   pname = "partitionmanager";
 in mkDerivation rec {
   name = "${pname}-${version}";
-  version = "3.0.1";
+  version = "3.3.1";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
-    sha256 = "08sb9xa7dvvgha3k2xm1srl339przxpxd2y5bh1lnx6k1x7dk410";
+    sha256 = "0jhggb4xksb0k0mj752n6pz0xmccnbzlp984xydqbz3hkigra1si";
   };
 
+  enableParallelBuilding = true;
+
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook makeWrapper ];
+
+  # refer to kpmcore for the use of eject
+  buildInputs = [ eject libatasmart utillinux ];
+  propagatedBuildInputs = [ kconfig kcrash kinit kpmcore ];
+
+  postInstall = ''
+    wrapProgram "$out/bin/partitionmanager" --prefix QT_PLUGIN_PATH : "${kpmcore}/lib/qt-5.${lib.versions.minor qtbase.version}/plugins"
+  '';
+
   meta = with lib; {
     description = "KDE Partition Manager";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ peterhoeg ];
+    homepage = https://www.kde.org/applications/system/kdepartitionmanager/;
+    maintainers = with maintainers; [ peterhoeg ma27 ];
   };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
-  # refer to kpmcore for the use of eject
-  buildInputs = [ eject libatasmart ];
-  propagatedBuildInputs = [ kconfig kcrash kinit kpmcore ];
 }