PKGBUILDs/core/pam/PKGBUILD
2009-09-26 09:35:50 -05:00

54 lines
2.1 KiB
Bash

# Maintainer: Krzysztof "hiciu" Warzecha <kwarzecha7@gmail.com>
pkgname=pam
pkgver=1.0.4
pkgrel=1
pkgdesc="PAM (Pluggable Authentication Modules) library"
arch=(arm)
license=('GPL2')
url="http://www.kernel.org/pub/linux/libs/pam/"
groups=('base')
depends=('glibc' 'db>=4.7' 'cracklib')
makedepends=('flex')
backup=(etc/security/{access.conf,group.conf,limits.conf,namespace.conf,namespace.init,pam_env.conf,time.conf} etc/pam.d/other etc/default/passwd etc/environment)
source=(http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-$pkgver.tar.bz2 \
ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2/pam_unix2-2.6.tar.bz2 \
other)
options=('!libtool' '!emptydirs')
md5sums=('189171821b56aaf791cc890d0707ea82'
'e2788389a6c59224110a45fcff30e02b'
'6e6c8719e5989d976a14610f340bd33a')
build() {
cd $srcdir/Linux-PAM-$pkgver
./configure --sysconfdir=/etc DESTDIR=$pkgdir --libdir=/lib
make || return 1
make INSTALL=/bin/install DESTDIR=$pkgdir install
install -D -m644 ../other $pkgdir/etc/pam.d/other
# build pam_unix2 module
# source ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2
cd $srcdir/pam_unix2-2.6
#fix "error: conflicting types for 'pam_syslog'" - this occurs only with our toolchain...
sed -i -e 's|pam_syslog (pam_handle_t|pam_syslog (const pam_handle_t|g' src/public.h src/support.c
./configure
make || return 1
make DESTDIR=$pkgdir install
# add the realtime permissions for audio users
sed -i 's|# End of file||' $pkgdir/etc/security/limits.conf
cat >>$pkgdir/etc/security/limits.conf <<_EOT
* - rtprio 0
* - nice 0
@audio - rtprio 65
@audio - nice -10
@audio - memlock 40000
_EOT
# fix some missing symlinks from old pam for compatibility
cd $pkgdir/lib/security
ln -s pam_unix.so pam_unix_acct.so
ln -s pam_unix.so pam_unix_auth.so
ln -s pam_unix.so pam_unix_passwd.so
ln -s pam_unix.so pam_unix_session.so
# set unix_chkpwd uid
chmod +s $pkgdir/sbin/unix_chkpwd
}