core/samba/PKGBUILD

111 lines
4.2 KiB
Bash

#
# Platform Packages for Chakra, part of chakra-project.org
#
# maintainer: Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
pkgname=samba
pkgver=3.6.9
#In case version contains a or b
_realver=3.6.9
pkgrel=1
arch=('x86_64')
url="http://www.samba.org"
license=('GPL3')
depends=('readline' 'popt' 'libldap' 'libcap' 'krb5' 'db' 'e2fsprogs' 'tdb' 'talloc'
'cifs-utils' 'libcups' 'acl' 'pam' 'gamin' 'gnutls')
provides=('smbclient')
conflicts=('smbclient')
replaces=('smbclient')
options=(!makeflags)
backup=(etc/logrotate.d/samba
etc/pam.d/samba
etc/xinetd.d/swat)
install='samba.install'
source=("http://us1.samba.org/samba/ftp/stable/${pkgname}-${_realver}.tar.gz"
'samba.logrotate'
'swat.xinetd'
'samba.pam'
'smbd.service'
'nmbd.service'
'winbindd.service'
'samba.conf')
md5sums=('0c48bbeb9549fcda37f108aa3c2a817f'
'5697da77590ec092cc8a883bae06093c'
'a4bbfa39fee95bba2e7ad6b535fae7e6'
'96f82c38f3f540b53f3e5144900acf17'
'4b9c54d6fed4d0a225a84963516fc46f'
'67ce9229c4e343a91d70edba6de29437'
'617079917cdc84b450d109557b1fe2e1'
'8e7ed39b54968e427f9506e9107bfb45')
build() {
cd ${srcdir}/${pkgname}-${_realver}/source3
./configure --prefix=/usr \
--libdir=/usr/lib/ \
--localstatedir=/var \
--with-configdir=/etc/samba \
--with-lockdir=/var/cache/samba \
--with-piddir=/var/run/samba \
--with-fhs \
--with-pam \
--with-pam_smbpass \
--with-pammodulesdir=/usr/lib/security \
--with-dnsupdate \
--with-automount \
--with-quotas \
--with-ads \
--with-acl-support \
--with-libsmbclient \
--with-syslog \
--enable-external-libtalloc \
--disable-dnssd \
--disable-avahi \
--with-shared-modules=idmap_ad,idmap_adex,idmap_rid,idmap_hash,idmap_tdb2 \
--enable-external-libtdb
make
}
package() {
cd ${srcdir}/${pkgname}-${_realver}/source3
mkdir -p ${pkgdir}/etc/samba/private
chmod 700 ${pkgdir}/etc/samba/private
make DESTDIR="$pkgdir" install
mkdir -p ${pkgdir}/usr/lib/cups/backend
ln -sf /usr/bin/smbspool ${pkgdir}/usr/lib/cups/backend/smb
chmod 644 ${pkgdir}/usr/include/*.h
mkdir -p ${pkgdir}/etc/samba
cat ../examples/smb.conf.default | \
sed 's|log file = .*$|log file = /var/log/samba/log.%m|g' >${pkgdir}/etc/samba/smb.conf.default
install -D -m644 ../../samba.logrotate ${pkgdir}/etc/logrotate.d/samba
install -D -m644 ../../swat.xinetd ${pkgdir}/etc/xinetd.d/swat
install -D -m644 ../../samba.pam ${pkgdir}/etc/pam.d/samba
# spool directory
install -d -m1777 ${pkgdir}/var/spool/samba
sed -i 's|/usr/spool/samba|/var/spool/samba|g' ${pkgdir}/etc/samba/smb.conf.default
# fix logrotate
sed -i -e 's|log.%m|%m.log|g' ${pkgdir}/etc/samba/smb.conf.default
# nsswitch libraries
install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_wins.so ${pkgdir}/usr/lib/libnss_wins.so
ln -s libnss_wins.so ${pkgdir}/usr/lib/libnss_wins.so.2
install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_winbind.so ${pkgdir}/usr/lib/libnss_winbind.so
ln -s libnss_winbind.so ${pkgdir}/usr/lib/libnss_winbind.so.2
# winbind krb5 locator
mkdir -p ${pkgdir}/usr/lib/krb5/plugins/libkrb5
install -d -m 0755 ${pkgdir}/usr/lib/krb5/plugins/libkrb5
install -m 755 bin/winbind_krb5_locator.so ${pkgdir}/usr/lib/krb5/plugins/libkrb5/winbind_krb5_locator.so
# systemd files
for i in smbd nmbd winbindd; do
install -D -m644 ${srcdir}/$i.service ${pkgdir}/usr/lib/systemd/system/$i.service
done
# create non-persistent dirs via tmpfiles instead of shipping packaged-in
install -D -m644 ${srcdir}/samba.conf ${pkgdir}/usr/lib/tmpfiles.d/samba.conf
rm -rf ${pkgdir}/var/run
# remove tdb provided files
for man in tdbbackup tdbdump tdbtool; do
rm -f ${pkgdir}/usr/share/man/man8/${man}.8
done
# copy ldap example
install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema
}