From 9b1bc3cc1057a2f0a51fea93d426c738581ffbfb Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 12 Jun 2024 23:29:57 +0200 Subject: [PATCH] munge: Clean up expression & fix license - Format & re-order the expression. - Use finalAttrs pattern. - Fix license according to https://github.com/dun/munge/wiki/License-Info. - Use `lib.getDev` instead of directly using `dev` output. This provides loose coupling in case `dev` output is merged back to `out`. - Add comment to segregate cross-configuration hacks from rest of the configuration flags. They were introduced in faacc88c93086982e2c95708176863f415e03810 and appear to be still necessary to build `pkgsCross.aarch64-multiplatform.munge`. --- pkgs/tools/security/munge/default.nix | 51 +++++++++++++++++++-------- 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/pkgs/tools/security/munge/default.nix b/pkgs/tools/security/munge/default.nix index 01137be20460..6aed73ef0be3 100644 --- a/pkgs/tools/security/munge/default.nix +++ b/pkgs/tools/security/munge/default.nix @@ -1,42 +1,63 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, libgcrypt, zlib, bzip2 }: +{ + lib, + stdenv, + fetchFromGitHub, + autoreconfHook, + libgcrypt, + zlib, + bzip2, +}: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "munge"; version = "0.5.16"; src = fetchFromGitHub { owner = "dun"; repo = "munge"; - rev = "${pname}-${version}"; + rev = "munge-${finalAttrs.version}"; sha256 = "sha256-fv42RMUAP8Os33/iHXr70i5Pt2JWZK71DN5vFI3q7Ak="; }; - strictDeps = true; nativeBuildInputs = [ autoreconfHook libgcrypt # provides libgcrypt.m4 ]; - buildInputs = [ libgcrypt zlib bzip2 ]; + + buildInputs = [ + libgcrypt + zlib + bzip2 + ]; + + strictDeps = true; + + configureFlags = [ + "--localstatedir=/var" + + # 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" + ]; preAutoreconf = '' # Remove the install-data stuff, since it tries to write to /var substituteInPlace src/Makefile.am --replace "etc \\" "\\" ''; - configureFlags = [ - "--localstatedir=/var" - "--with-libgcrypt-prefix=${libgcrypt.dev}" - # workaround for cross compilation: https://github.com/dun/munge/issues/103 - "ac_cv_file__dev_spx=no" - "x_ac_cv_check_fifo_recvfd=no" - ]; - meta = with lib; { description = '' An authentication service for creating and validating credentials ''; - license = licenses.lgpl3; + license = [ + # MUNGE + licenses.gpl3Plus + # libmunge + licenses.lgpl3Plus + ]; platforms = platforms.unix; maintainers = [ maintainers.rickynils ]; }; -} +})