Skip to content
Snippets Groups Projects
Verified Commit 35281f48 authored by Caleb Connolly's avatar Caleb Connolly :recycle: Committed by Clayton Craft
Browse files

systemd/linux-pam-systemd: new aport


integrates with systemd.

Signed-off-by: default avatarCaleb Connolly <caleb@postmarketos.org>
parent c5297b36
No related branches found
No related tags found
No related merge requests found
# Forked from Alpine enable systemd
# MODIFIED base-sessionl.pamd for systemd!
pkgname=linux-pam
# MUST be kept in sync to avoid accidentally pulling in the alpine version
# we hard depend on this exact version in postmarketos-base-systemd. When updating
# the package here it must also be updated in postmarketos-base-systemd.
pkgver=1.5.3
pkgrel=8
pkgdesc="Linux PAM (Pluggable Authentication Modules for Linux)"
url="https://www.kernel.org/pub/linux/libs/pam"
arch="all"
license="BSD-3-Clause"
depends_dev="gettext-dev"
makedepends="
$depends_dev
autoconf
automake
bison
flex-dev
libtool
linux-headers
systemd-dev
"
options="pmb:strict suid !check"
provider_priority=100
subpackages="$pkgname-dev $pkgname-doc $pkgname-service"
source="
https://github.com/linux-pam/linux-pam/releases/download/v$pkgver/Linux-PAM-$pkgver.tar.xz
no-examples.patch
base-auth.pamd
base-account.pamd
base-password.pamd
base-session.pamd
base-session-noninteractive.pamd
other.pamd
login.pamd
su.pamd
"
builddir="$srcdir"/Linux-PAM-$pkgver
# secfixes:
# 1.5.1-r0:
# - CVE-2020-27780
build() {
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--libdir=/usr/lib \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-systemdunitdir=/usr/lib/systemd/system \
--localstatedir=/var \
--disable-nls \
--disable-db
make
}
package() {
make DESTDIR="$pkgdir" install
# install our pam.d files
install -Dm644 "$srcdir"/base-auth.pamd "$pkgdir"/etc/pam.d/base-auth
install -Dm644 "$srcdir"/base-password.pamd "$pkgdir"/etc/pam.d/base-password
install -Dm644 "$srcdir"/base-account.pamd "$pkgdir"/etc/pam.d/base-account
install -Dm644 "$srcdir"/base-session.pamd "$pkgdir"/etc/pam.d/base-session
install -Dm644 "$srcdir"/base-session-noninteractive.pamd \
"$pkgdir"/etc/pam.d/base-session-noninteractive
install -Dm644 "$srcdir"/other.pamd "$pkgdir"/etc/pam.d/other
install -Dm644 "$srcdir"/login.pamd "$pkgdir"/etc/pam.d/login
install -Dm644 "$srcdir"/su.pamd "$pkgdir"/etc/pam.d/su
# make "unix_chkpwd" shadow group and enable g+s
chgrp shadow "$pkgdir"/sbin/unix_chkpwd \
&& chmod g+s "$pkgdir"/sbin/unix_chkpwd
}
sha512sums="
af88e8c1b6a9b737ffaffff7dd9ed8eec996d1fbb5804fb76f590bed66d8a1c2c6024a534d7a7b6d18496b300f3d6571a08874cf406cd2e8cea1d5eff49c136a Linux-PAM-1.5.3.tar.xz
9407f38d0dc0f24eb3e1c74ecc3ac78ddbe9f9882a4738fa82bfb387be30f5bff5599b11cb2d70705a299587697d967ddf57923b9bd0270d05f71cc5140f8d62 no-examples.patch
988e4ba32fe6b7adeb4898c784eb40d6f88f3fca78ead82b61686f0e1597f306abb3ee338aa2e4cf2db0191b8c1a7e319332e7f6d6aed3ab381f71c0a3355de9 base-auth.pamd
5d3e960ead44dcb2b3f732825482eefab9a9ffa4d4d5fc1d30cbf2fe8c5c896f1114a0ad3a6c606fa9fbf5c43400388f4ee8d7fca8110721eabfc9691004756b base-account.pamd
b3a900d6067ba04faa8016d9408da75917e8c0502020a4048bba1de2ca54c705c4d5f8307e759080fd5a9d5f3522f52a708803f1f01627eac56d9d7c6d363d13 base-password.pamd
2cf01d7cf2ec63d7cfe10bd90ed3cae8c5354e086495b0738e6e18df4c0ac14336228128a943731d186cc7492b15e7aee039f2c46dcd50c1fde434bb0c9af7fd base-session.pamd
2f18114b8a6a78ed798646962526876f3536b4759c00dce339e21f0695ea71d0917c048dc852c3d1c79bd17cd19dc513a3c6463abaffcff3f792b906cec98ede base-session-noninteractive.pamd
299bb3791652174a4d836d60f146200bb692ad80c20c18e6e872543ac8885156ff1a7ca00acaf55b89672fa98f00b8df53879c9ab1913a9cc91f620163dd50be other.pamd
ae3a807bc121eb59b54f5e53ff8efdde972610cf7463b6a38bccbc89b49954aa2e0a8693919b01f8bc7a956ba58c97de34a28963bc14f526b70b3073d64427b5 login.pamd
a71ac72a21a5d18612365b2b0a4a0da1f9d1101a30d3f5d97f479f6378c3a0fbc219617000448c8b5a0ab2597f2e4944202b13a69624dbe849bf9ea39d00ca22 su.pamd
"
# basic PAM configuration for Alpine.
account required pam_unix.so
account required pam_nologin.so
# basic PAM configuration for Alpine.
auth required pam_unix.so nullok
auth required pam_nologin.so
auth required pam_env.so
-auth optional pam_gnome_keyring.so
-auth optional pam_kwallet5.so
# basic PAM configuration for Alpine.
password required pam_unix.so nullok sha512 shadow
# desktop keyrings
-password optional pam_gnome_keyring.so use_authtok
-password optional pam_kwallet5.so
# basic PAM configuration for Alpine.
session required pam_env.so
session required pam_limits.so
session required pam_unix.so
# basic PAM configuration for Alpine.
session include base-session-noninteractive
# potential providers that set up session stuff / a XDG_RUNTIME_DIR
-session optional pam_rundir.so
-session optional pam_elogind.so
-session optional pam_systemd.so
-session optional pam_ck_connector.so
-session optional pam_turnstile.so
# desktop keyrings
-session optional pam_gnome_keyring.so auto_start
-session optional pam_kwallet5.so auto_start
# "login" that is required by pam-enabled util-linux-login/shadow-login
auth include base-auth
account include base-account
password include base-password
session include base-session
these don't build and aren't installed
--
diff --git a/Makefile.in b/Makefile.in
index f7e2c44..f98b2a2 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -176,7 +176,7 @@ ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = libpam tests libpamc libpam_misc modules po conf \
- examples xtests doc
+ xtests doc
am__DIST_COMMON = $(srcdir)/Make.xml.rules.in $(srcdir)/Makefile.in \
$(srcdir)/config.h.in $(top_srcdir)/build-aux/compile \
$(top_srcdir)/build-aux/config.guess \
@@ -426,7 +426,7 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = 1.9 gnu dist-xz no-dist-gzip check-news
-SUBDIRS = libpam tests libpamc libpam_misc modules po conf examples \
+SUBDIRS = libpam tests libpamc libpam_misc modules po conf \
xtests $(am__append_1)
CLEANFILES = *~
EXTRA_DIST = pgp.keys.asc CHANGELOG ChangeLog-CVS Copyright
#%PAM-1.0
# default config for any service don't specified
auth include base-auth
account include base-account
password include base-password
session include base-session-noninteractive
# basic PAM configuration for Alpine.
auth sufficient pam_rootok.so
auth include base-auth
account include base-account
password include base-password
session include base-session-noninteractive
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment