(address . guix-patches@gnu.org)(name . Felix Lechner)(address . felix.lechner@lease-up.com)
Change-Id: If013192a6802b36f4199fe23aacb5076cb8c7ec9
---
gnu/packages/linux.scm | 39 ++++++++++++++
gnu/packages/patches/openpam-pkgconfig.patch | 55 ++++++++++++++++++++
2 files changed, 94 insertions(+)
create mode 100644 gnu/packages/patches/openpam-pkgconfig.patch
Toggle diff (115 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 9e5482ba8d..347e80e25b 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1954,6 +1954,45 @@ (define-public linux-pam
at login. Local and dynamic reconfiguration are its key features.")
(license license:bsd-3)))
+(define-public openpam
+ (let ((commit "d61017e61587a577237436025f2d25e04393d64f")
+ (revision "0"))
+ (package
+ (name "openpam")
+ (version (git-version "0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.des.dev/OpenPAM/OpenPAM.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "16qqa21j1xmh1nr0v7ypgzml5aj16b053ja5arvdclw99fm5m43w"))
+ (patches (search-patches "openpam-pkgconfig.patch"))))
+ (native-inputs (list
+ autoconf
+ automake
+ libtool
+ perl
+ pkg-config))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list
+ "--with-pam-unix"
+ "--with-su")))
+ (home-page "https://git.des.dev/OpenPAM/OpenPAM")
+ (synopsis "OpenPAM Authentication Framework")
+ (description
+ "OpenPAM is an open source PAM library that focuses on simplicity,
+correctness, and cleanliness. Its aim is to gather the best features
+of Solaris PAM, XSSO and Linux-PAM, plus some innovations of its
+own. In areas where these implementations disagree, OpenPAM tries to
+remain compatible with Solaris, at the expense of XSSO conformance and
+Linux-PAM compatibility.")
+ (license license:bsd-3))))
+
(define-public python-pamela
(package
(name "python-pamela")
diff --git a/gnu/packages/patches/openpam-pkgconfig.patch b/gnu/packages/patches/openpam-pkgconfig.patch
new file mode 100644
index 0000000000..f5055a45a9
--- /dev/null
+++ b/gnu/packages/patches/openpam-pkgconfig.patch
@@ -0,0 +1,55 @@
+From 1abf0a1aee5678474b03f00999c04f43c360f917 Mon Sep 17 00:00:00 2001
+From: Felix Lechner <felix.lechner@lease-up.com>
+Date: Mon, 24 Jun 2024 12:49:04 -0700
+Subject: [PATCH] Provide a Pkgconfig file.
+
+---
+ configure.ac | 1 +
+ lib/libpam/Makefile.am | 3 +++
+ lib/libpam/openpam.pc.in | 11 +++++++++++
+ 3 files changed, 15 insertions(+)
+ create mode 100644 lib/libpam/openpam.pc.in
+
+diff --git a/configure.ac b/configure.ac
+index a51bc70..e3fa430 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -158,6 +158,7 @@ AC_CONFIG_FILES([
+ include/security/Makefile
+ lib/Makefile
+ lib/libpam/Makefile
++ lib/libpam/openpam.pc
+ misc/Makefile
+ modules/Makefile
+ modules/pam_deny/Makefile
+diff --git a/lib/libpam/Makefile.am b/lib/libpam/Makefile.am
+index 6051a8a..0467153 100644
+--- a/lib/libpam/Makefile.am
++++ b/lib/libpam/Makefile.am
+@@ -98,3 +98,6 @@ EXTRA_DIST = \
+ pam_sm_set_mapped_authtok.c \
+ pam_sm_set_mapped_username.c \
+ pam_sm_setcred.c
++
++pkgconfigdir = $(libdir)/pkgconfig
++pkgconfig_DATA = openpam.pc
+diff --git a/lib/libpam/openpam.pc.in b/lib/libpam/openpam.pc.in
+new file mode 100644
+index 0000000..21796ed
+--- /dev/null
++++ b/lib/libpam/openpam.pc.in
+@@ -0,0 +1,11 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++Name: OpenPAM
++Description: The OpenPAM library. It is used by PAM modules and PAM-aware applications.
++URL: http://www.openpam.org/
++Version: @VERSION@
++Cflags: -I${includedir}
++Libs: -L${libdir} -lpam
+--
+2.41.0
+
base-commit: 71c678a16aae416298a0e3fa322b425315bb7b00
--
2.41.0