78 lines
1.7 KiB
Nix
78 lines
1.7 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchFromGitHub,
|
|
autoreconfHook,
|
|
libgcrypt,
|
|
zlib,
|
|
bzip2,
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "munge";
|
|
version = "0.5.16";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "dun";
|
|
repo = "munge";
|
|
rev = "munge-${finalAttrs.version}";
|
|
sha256 = "sha256-fv42RMUAP8Os33/iHXr70i5Pt2JWZK71DN5vFI3q7Ak=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
autoreconfHook
|
|
libgcrypt # provides libgcrypt.m4
|
|
];
|
|
|
|
buildInputs = [
|
|
libgcrypt
|
|
zlib
|
|
bzip2
|
|
];
|
|
|
|
strictDeps = true;
|
|
|
|
configureFlags = [
|
|
# Load data from proper global paths
|
|
"--localstatedir=/var"
|
|
"--sysconfdir=/etc"
|
|
"--runstatedir=/run"
|
|
"--with-sysconfigdir=/etc/default"
|
|
|
|
# Install data to proper directories
|
|
"--with-pkgconfigdir=${placeholder "out"}/lib/pkgconfig"
|
|
"--with-systemdunitdir=${placeholder "out"}/lib/systemd/system"
|
|
|
|
# Cross-compilation hacks
|
|
"--with-libgcrypt-prefix=${lib.getDev libgcrypt}"
|
|
# workaround for cross compilation: https://github.com/dun/munge/issues/103
|
|
"ac_cv_file__dev_spx=no"
|
|
"x_ac_cv_check_fifo_recvfd=no"
|
|
];
|
|
|
|
installFlags = [
|
|
"localstatedir=${placeholder "out"}/var"
|
|
"runstatedir=${placeholder "out"}/run"
|
|
"sysconfdir=${placeholder "out"}/etc"
|
|
"sysconfigdir=${placeholder "out"}/etc/default"
|
|
];
|
|
|
|
postInstall = ''
|
|
# rmdir will notify us if anything new is installed to the directories.
|
|
rmdir "$out"/{var{/{lib,log}{/munge,},},etc/munge}
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = ''
|
|
An authentication service for creating and validating credentials
|
|
'';
|
|
license = [
|
|
# MUNGE
|
|
licenses.gpl3Plus
|
|
# libmunge
|
|
licenses.lgpl3Plus
|
|
];
|
|
platforms = platforms.unix;
|
|
maintainers = [ maintainers.rickynils ];
|
|
};
|
|
})
|