diff mbox series

[bug#71794] Add openpam.

Message ID 90b568dd6bb743f2d2820dcae6f5a1ef7385c434.1719491082.git.felix.lechner@lease-up.com
State New
Headers show
Series [bug#71794] Add openpam. | expand

Commit Message

Felix Lechner June 27, 2024, 12:26 p.m. UTC
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


base-commit: 71c678a16aae416298a0e3fa322b425315bb7b00
diff mbox series

Patch

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
+