2021-02-05 17:12:51 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config
|
2020-04-24 23:36:52 +00:00
|
|
|
, libX11, libXcomposite, libXft, libXmu, libXrandr, libXext, libXScrnSaver
|
2022-01-13 20:06:32 +00:00
|
|
|
, pam, apacheHttpd, pamtester, xscreensaver, coreutils, makeWrapper }:
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "xsecurelock";
|
2022-09-22 12:36:57 +00:00
|
|
|
version = "1.8.0";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "google";
|
|
|
|
repo = "xsecurelock";
|
|
|
|
rev = "v${version}";
|
2022-09-22 12:36:57 +00:00
|
|
|
sha256 = "sha256-sK3KrtZzrV2jkQveZnSHDR5I4v7baL/sARje2mDpIMI=";
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
nativeBuildInputs = [
|
2022-01-13 20:06:32 +00:00
|
|
|
autoreconfHook pkg-config makeWrapper
|
2020-04-24 23:36:52 +00:00
|
|
|
];
|
2022-01-13 20:06:32 +00:00
|
|
|
|
2020-04-24 23:36:52 +00:00
|
|
|
buildInputs = [
|
|
|
|
libX11 libXcomposite libXft libXmu libXrandr libXext libXScrnSaver
|
2020-07-18 16:06:22 +00:00
|
|
|
pam apacheHttpd pamtester
|
2020-04-24 23:36:52 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
configureFlags = [
|
|
|
|
"--with-pam-service-name=login"
|
|
|
|
"--with-xscreensaver=${xscreensaver}/libexec/xscreensaver"
|
|
|
|
];
|
|
|
|
|
|
|
|
preConfigure = ''
|
|
|
|
cat > version.c <<'EOF'
|
|
|
|
const char *const git_version = "${version}";
|
|
|
|
EOF
|
|
|
|
'';
|
|
|
|
|
2022-01-13 20:06:32 +00:00
|
|
|
postInstall = ''
|
|
|
|
wrapProgram $out/libexec/xsecurelock/saver_blank --prefix PATH : ${coreutils}/bin
|
|
|
|
'';
|
|
|
|
|
2020-04-24 23:36:52 +00:00
|
|
|
meta = with lib; {
|
|
|
|
description = "X11 screen lock utility with security in mind";
|
|
|
|
homepage = "https://github.com/google/xsecurelock";
|
|
|
|
license = licenses.asl20;
|
|
|
|
maintainers = with maintainers; [ fpletz ];
|
|
|
|
platforms = platforms.unix;
|
|
|
|
};
|
|
|
|
}
|