summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@mailbox.org>2019-07-24 16:07:40 -0500
committerGitHub <noreply@github.com>2019-07-24 16:07:40 -0500
commit294e75e832594cda1a25df817f7717adb9ed49b6 (patch)
tree293eeedd3014ae0ac88a8b3642a478db0311edae /pkgs/tools
parent5806e71834c636b57f7e5f7b84f52d162f158cf3 (diff)
parent9235a8eaeff094c8e014b669c2e447b6e161e815 (diff)
downloadnixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.tar
nixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.tar.gz
nixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.tar.bz2
nixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.tar.lz
nixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.tar.xz
nixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.tar.zst
nixpkgs-294e75e832594cda1a25df817f7717adb9ed49b6.zip
Merge pull request #65339 from ttuegel/wrap-pinentry_qt5
pinentry: Use qt5.wrapQtApps as needed
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/security/pinentry/default.nix22
1 files changed, 18 insertions, 4 deletions
diff --git a/pkgs/tools/security/pinentry/default.nix b/pkgs/tools/security/pinentry/default.nix
index ba7ef7a3cfd..ac6a50960ad 100644
--- a/pkgs/tools/security/pinentry/default.nix
+++ b/pkgs/tools/security/pinentry/default.nix
@@ -1,9 +1,21 @@
 { fetchurl, fetchpatch, stdenv, lib, pkgconfig
-, libgpgerror, libassuan, libcap ? null, libsecret ? null, ncurses ? null, gtk2 ? null, gcr ? null, qt ? null
+, libgpgerror, libassuan
+, libcap ? null, libsecret ? null, ncurses ? null, gtk2 ? null, gcr ? null
+, qt4 ? null, qt5 ? null
 , enableEmacs ? false
 }:
 
-stdenv.mkDerivation rec {
+assert qt5 != null -> qt4 == null;
+assert qt4 != null -> qt5 == null;
+
+let
+  mkDerivation =
+    if qt5 != null
+      then qt5.mkDerivation
+      else stdenv.mkDerivation;
+in
+
+mkDerivation rec {
   name = "pinentry-1.1.0";
 
   src = fetchurl {
@@ -12,7 +24,9 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libgpgerror libassuan libcap libsecret gtk2 gcr ncurses qt ];
+  buildInputs =
+    [ libgpgerror libassuan libcap libsecret gtk2 gcr ncurses qt4 ]
+    ++ stdenv.lib.optional (qt5 != null) qt5.qtbase;
 
   prePatch = ''
     substituteInPlace pinentry/pinentry-curses.c --replace ncursesw ncurses
@@ -34,7 +48,7 @@ stdenv.mkDerivation rec {
     (stdenv.lib.enableFeature enableEmacs         "pinentry-emacs")
     (stdenv.lib.enableFeature (gtk2 != null)      "pinentry-gtk2")
     (stdenv.lib.enableFeature (gcr != null)       "pinentry-gnome3")
-    (stdenv.lib.enableFeature (qt != null)        "pinentry-qt")
+    (stdenv.lib.enableFeature (qt4 != null || qt5 != null) "pinentry-qt")
 
     "--with-libassuan-prefix=${libassuan.dev}"
     "--with-libgpg-error-prefix=${libgpgerror.dev}"