2019-07-29 12:08:13 +00:00
|
|
|
{ mkDerivation, lib, extra-cmake-modules, pam, socat, libgcrypt, qtbase, kwallet, }:
|
2016-08-10 14:01:47 +00:00
|
|
|
|
2017-05-15 16:44:58 +00:00
|
|
|
mkDerivation {
|
2016-08-10 14:01:47 +00:00
|
|
|
name = "kwallet-pam";
|
2017-02-26 12:49:15 +00:00
|
|
|
nativeBuildInputs = [ extra-cmake-modules ];
|
2019-07-29 12:08:13 +00:00
|
|
|
buildInputs = [ pam socat libgcrypt qtbase kwallet ];
|
2017-05-26 20:47:39 +00:00
|
|
|
postPatch = ''
|
|
|
|
sed -i pam_kwallet_init -e "s|socat|${lib.getBin socat}/bin/socat|"
|
|
|
|
'';
|
2020-04-08 05:12:03 +00:00
|
|
|
|
|
|
|
# We get a crash when QT_PLUGIN_PATH is more than 1000 characters.
|
|
|
|
# pam_kwallet_init passes its environment to kwalletd5, but
|
|
|
|
# wrapQtApps gives our environment a huge QT_PLUGIN_PATH value. We
|
|
|
|
# are able to unset it here since kwalletd5 will have its own
|
|
|
|
# QT_PLUGIN_PATH.
|
2019-09-30 21:44:02 +00:00
|
|
|
postFixup = ''
|
2020-04-08 05:12:03 +00:00
|
|
|
wrapProgram $out/libexec/pam_kwallet_init --unset QT_PLUGIN_PATH
|
2019-09-30 21:44:02 +00:00
|
|
|
'';
|
2020-04-08 05:12:03 +00:00
|
|
|
|
2019-09-30 21:44:02 +00:00
|
|
|
dontWrapQtApps = true;
|
2016-08-10 14:01:47 +00:00
|
|
|
}
|