diff options
| author | Michael Hanson <hansonorders@verizon.net> | 2010-11-11 02:08:31 (GMT) | 
|---|---|---|
| committer | Michael Hanson <hansonorders@verizon.net> | 2010-11-11 02:08:31 (GMT) | 
| commit | afa2a40b8e491d011d510521f56409aebd467685 (patch) | |
| tree | 5d4462375875200514e7a7e0914a92c88814b14a | |
| parent | 17396fe7af33831392aff48650a151d25d628d30 (diff) | |
| download | linhes_pkgbuild-afa2a40b8e491d011d510521f56409aebd467685.zip linhes_pkgbuild-afa2a40b8e491d011d510521f56409aebd467685.tar.gz linhes_pkgbuild-afa2a40b8e491d011d510521f56409aebd467685.tar.bz2 | |
samba: update to 3.5.6
| -rw-r--r-- | abs/extra/samba/PKGBUILD | 144 | ||||
| -rw-r--r-- | abs/extra/samba/__changelog | 2 | ||||
| -rw-r--r-- | abs/extra/samba/fix-ipv6-mount.patch | 11 | ||||
| -rwxr-xr-x | abs/extra/samba/samba | 54 | ||||
| -rw-r--r-- | abs/extra/samba/samba.conf.d | 7 | ||||
| -rw-r--r-- | abs/extra/samba/samba.logrotate | 9 | ||||
| -rw-r--r-- | abs/extra/samba/samba.pam | 3 | ||||
| -rw-r--r-- | abs/extra/samba/swat.xinetd | 10 | 
8 files changed, 240 insertions, 0 deletions
| diff --git a/abs/extra/samba/PKGBUILD b/abs/extra/samba/PKGBUILD new file mode 100644 index 0000000..dba70bf --- /dev/null +++ b/abs/extra/samba/PKGBUILD @@ -0,0 +1,144 @@ +# $Id: PKGBUILD 94658 2010-10-09 09:44:15Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org +# Contributor: judd <jvinet@zeroflux.org> +pkgbase=samba +pkgname=('smbclient' 'samba') +pkgver=3.5.6 +# We use the 'A' to fake out pacman's version comparators.  Samba chooses +# to append 'a','b',etc to their subsequent releases, which pamcan +# misconstrues as alpha, beta, etc.  Bad samba! +_realver=3.5.6 +pkgrel=1 +arch=(i686 x86_64) +url="http://www.samba.org" +license=('GPL3') +makedepends=('db>=4.7' 'popt' 'libcups' 'acl' 'libldap' 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'gnutls>=2.4.1' 'talloc' 'tdb') +options=(!makeflags) +source=(http://us1.samba.org/samba/ftp/stable/${pkgbase}-${_realver}.tar.gz +        samba samba.logrotate  +        swat.xinetd  +        samba.pam  +        samba.conf.d +        fix-ipv6-mount.patch) +### UNINSTALL dmapi package before building!!! + +build() { +  cd ${srcdir}/${pkgbase}-${_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=/lib/security \ +              --with-ads \ +              --with-acl-support \ +              --with-cifsmount \ +              --with-libsmbclient \ +              --with-syslog \ +              --enable-external-libtalloc \ +              --disable-dnssd \ +              --disable-avahi \ +              --with-cifsumount \ +              --with-shared-modules=idmap_ad,idmap_adex,idmap_rid,idmap_hash \ +              --enable-external-libtdb +  make || return 1 +} + +package_smbclient () { +pkgdesc="Tools to access a server's filespace and printers via SMB" +depends=('readline>=6.0.00' 'popt' 'libldap>=2.4.18-1' 'libcap>=2.16' 'heimdal>=1.2-1' 'db>=4.7' 'e2fsprogs' 'tdb' 'talloc') +  cd ${srcdir}/${pkgbase}-${_realver}/source3 +  mkdir -p ${pkgdir}/usr/bin ${pkgdir}/sbin ${pkgdir}/usr/lib +  install -m755 bin/{smbclient,rpcclient,smbspool,smbtree,smbcacls,smbcquotas,smbget,net,nmblookup} ${pkgdir}/usr/bin/ +  install -m755 bin/{mount.cifs,umount.cifs} ${pkgdir}/sbin/ +  for i in libnetapi* libwbclient* libsmbclient*;do +      cp  -a bin/${i}*.so* ${pkgdir}/usr/lib/ +  done +  install -m755 script/smbtar ${pkgdir}/usr/bin/ +  mkdir -p ${pkgdir}/usr/lib/cups/backend +  ln -sf /usr/bin/smbspool ${pkgdir}/usr/lib/cups/backend/smb +  mkdir -p ${pkgdir}/usr/include +  install -m644 include/libsmbclient.h ${pkgdir}/usr/include/ +  install -m644 lib/netapi/netapi.h ${pkgdir}/usr/include/ +  mkdir -p ${pkgdir}/usr/share/man/man{1,7,8} +  for man in smbspool \ +      umount.cifs mount.cifs net; do +      install -m644 ../docs/manpages/${man}.8 ${pkgdir}/usr/share/man/man8/ +  done +  for man in rpcclient smbcacls smbclient smbcquotas smbget \ +      smbtree smbtar nmblookup; do +      install -m644 ../docs/manpages/${man}.1 ${pkgdir}/usr/share/man/man1/ +  done +  install -m644 ../docs/manpages/libsmbclient.7 ${pkgdir}/usr/share/man/man7/ +} + +package_samba () { +pkgdesc="Tools to access a server's filespace and printers via SMB" +backup=(etc/logrotate.d/samba  +        etc/pam.d/samba  +        etc/samba/smb.conf +        etc/xinetd.d/swat +        etc/conf.d/samba) +depends=('db>=4.7' 'popt' 'libcups' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap>=2.16' 'heimdal>=1.2-1' 'pam' 'gnutls>=2.4.1' 'e2fsprogs' 'tdb' 'talloc') +  cd ${srcdir}/samba-${_realver}/source3 +  mkdir -p ${pkgdir}/var/log/samba +  mkdir -p ${pkgdir}/etc/samba/private +  chmod 700 ${pkgdir}/etc/samba/private +  make DESTDIR=${pkgdir} install || return 1 +  chmod 644 ${pkgdir}/usr/include/*.h +  rm -rf ${pkgdir}/usr/var +  (cd script; cp installbin.sh i; cat i | sed 's/\/sbin\///' > installbin.sh) +  install -D -m755 ../../samba ${pkgdir}/etc/rc.d/samba +  install -D -m644 ../../samba.conf.d ${pkgdir}/etc/conf.d/samba +  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}/lib/libnss_wins.so +  ln -s libnss_wins.so ${pkgdir}/lib/libnss_wins.so.2 +  install -D -m755 ${srcdir}/samba-${_realver}/nsswitch/libnss_winbind.so ${pkgdir}/lib/libnss_winbind.so +  # remove conflict files of smbclient +  for man in libsmbclient smbspool \ +      umount.cifs mount.cifs net; do +      rm -f ${pkgdir}/usr/share/man/man8/${man}.8 +  done +  for i in libnetapi* libwbclient* libsmbclient*;do +      rm -f ${pkgdir}/usr/lib/$i +  done +  for bin in net \ +      nmblookup rpcclient smbcacls smbclient \ +      smbcquotas smbget smbspool smbtar smbtree; do +      rm -f ${pkgdir}/usr/bin/$bin +  done +  rm -f ${pkgdir}/usr/include/netapi.h +  for man in rpcclient smbcacls smbclient smbcquotas \ +      smbtree smbtar nmblookup smbget; do +      rm -f ${pkgdir}/usr/share/man/man1/${man}.1 +  done +  for man in tdbbackup tdbdump tdbtool; do +      rm -f ${pkgdir}/usr/share/man/man8/${man}.8 +  done +  rm -f ${pkgdir}/usr/share/man/man7/libsmbclient.7 +  rm -f ${pkgdir}/usr/include/libsmbclient.h +  # copy ldap example +  install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema +} +md5sums=('bf6c09ea497a166df8bd672db1d8da8f' +         '891b9be03e7adf65c9a00319c76d33e5' +         '5697da77590ec092cc8a883bae06093c' +         'a4bbfa39fee95bba2e7ad6b535fae7e6' +         '96f82c38f3f540b53f3e5144900acf17' +         'f2f2e348acd1ccb566e95fa8a561b828' +         'c6a38a8c8fa24979e6217aed533358ea') diff --git a/abs/extra/samba/__changelog b/abs/extra/samba/__changelog new file mode 100644 index 0000000..24743b6 --- /dev/null +++ b/abs/extra/samba/__changelog @@ -0,0 +1,2 @@ +remove fam support +update to 3.5.6 diff --git a/abs/extra/samba/fix-ipv6-mount.patch b/abs/extra/samba/fix-ipv6-mount.patch new file mode 100644 index 0000000..89bef65 --- /dev/null +++ b/abs/extra/samba/fix-ipv6-mount.patch @@ -0,0 +1,11 @@ +--- client/mount.cifs.c.orig	2010-03-03 13:42:02.143936727 +1000 ++++ client/mount.cifs.c	2010-03-04 01:53:22.752879004 +1000 +@@ -1563,7 +1563,7 @@ + 		} + 	} + +-	if (addr->ai_addr->sa_family == AF_INET6 && addr6->sin6_scope_id) { ++	if (addr && addr->ai_addr->sa_family == AF_INET6 && addr6->sin6_scope_id) { + 		strlcat(options, "%", options_size); + 		current_len = strnlen(options, options_size); + 		optionstail = options + current_len;  diff --git a/abs/extra/samba/samba b/abs/extra/samba/samba new file mode 100755 index 0000000..1b222d6 --- /dev/null +++ b/abs/extra/samba/samba @@ -0,0 +1,54 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +[ -f /etc/conf.d/samba ] && . /etc/conf.d/samba + +[ -z "$SAMBA_DAEMONS" ] && SAMBA_DAEMONS=(smbd nmbd) + +case "$1" in +	start) +		rc=0 +		stat_busy "Starting Samba Server" +		if [ ! -x /var/run/samba ] ; then +			install -m755 -g 81 -o 81 -d /var/run/samba +		fi +		for d in ${SAMBA_DAEMONS[@]}; do +			PID=`pidof -o %PPID /usr/sbin/$d` +			[ -z "$PID" ] && /usr/sbin/$d -D +			rc=$(($rc+$?)) +		done +		if [ $rc -gt 0 ]; then +			stat_fail +		else +			add_daemon samba +			stat_done +		fi +	;; +	stop) +		rc=0 +		stat_busy "Stopping Samba Server" +		for d in ${SAMBA_DAEMONS[@]}; do +			PID=`pidof -o %PPID /usr/sbin/$d` +			[ -z "$PID" ] || kill $PID &> /dev/null +			rc=$(($rc+$?)) +		done +		if [ $rc -gt 0 ]; then +			stat_fail +		else +			rm /var/run/samba/smbd.pid &>/dev/null +			rm /var/run/samba/nmbd.pid &>/dev/null +			rm /var/run/samba/winbindd.pid &>/dev/null +			rm_daemon samba +			stat_done +		fi +	;; +	restart) +		$0 stop +		sleep 1 +		$0 start +	;; +	*) +		echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra/samba/samba.conf.d b/abs/extra/samba/samba.conf.d new file mode 100644 index 0000000..8721f95 --- /dev/null +++ b/abs/extra/samba/samba.conf.d @@ -0,0 +1,7 @@ +# +# Configuration for the samba init script +# + +# space separated list of daemons to launch +SAMBA_DAEMONS=(smbd nmbd) +#SAMBA_DAEMONS=(smbd nmbd winbindd) diff --git a/abs/extra/samba/samba.logrotate b/abs/extra/samba/samba.logrotate new file mode 100644 index 0000000..581f4c3 --- /dev/null +++ b/abs/extra/samba/samba.logrotate @@ -0,0 +1,9 @@ +/var/log/samba/log.smbd /var/log/samba/log.nmbd /var/log/samba/*.log { +   notifempty +   missingok +   sharedscripts +   copytruncate +   postrotate +      /bin/kill -HUP `cat /var/run/samba/*.pid 2>/dev/null` 2>/dev/null || true +   endscript +} diff --git a/abs/extra/samba/samba.pam b/abs/extra/samba/samba.pam new file mode 100644 index 0000000..53724d1 --- /dev/null +++ b/abs/extra/samba/samba.pam @@ -0,0 +1,3 @@ +auth		required	pam_unix.so +account		required	pam_unix.so +session		required	pam_unix.so diff --git a/abs/extra/samba/swat.xinetd b/abs/extra/samba/swat.xinetd new file mode 100644 index 0000000..2e62a82 --- /dev/null +++ b/abs/extra/samba/swat.xinetd @@ -0,0 +1,10 @@ +service swat +{ +        socket_type             = stream +        wait                    = no +        user                    = root +        server                  = /usr/sbin/swat +        log_on_success  += HOST DURATION +        log_on_failure  += HOST +        disable                 = yes +} | 
