diff options
Diffstat (limited to 'source/n/samba')
-rw-r--r-- | source/n/samba/doinst.sh | 1 | ||||
-rwxr-xr-x | source/n/samba/prune-samba.sh | 33 | ||||
-rw-r--r-- | source/n/samba/pytalloc-util.pc | 11 | ||||
-rwxr-xr-x | source/n/samba/samba.SlackBuild | 152 | ||||
-rw-r--r-- | source/n/samba/smb.conf.default | 70 | ||||
-rw-r--r-- | source/n/samba/smb.conf.default.orig | 70 | ||||
-rw-r--r-- | source/n/samba/smb.conf.diff | 8 | ||||
-rw-r--r-- | source/n/samba/talloc.pc | 6 |
8 files changed, 139 insertions, 212 deletions
diff --git a/source/n/samba/doinst.sh b/source/n/samba/doinst.sh index c7b358ed..eb2b0b58 100644 --- a/source/n/samba/doinst.sh +++ b/source/n/samba/doinst.sh @@ -11,6 +11,7 @@ config() { # Otherwise, we leave the .new copy for the admin to consider... } config etc/rc.d/rc.samba.new +config etc/samba/lmhosts.new # This won't be needed. The point here is to preserve the permissions of the existing # file, if there is one. I don't see major new development happening in rc.samba... ;-) rm -f etc/rc.d/rc.samba.new diff --git a/source/n/samba/prune-samba.sh b/source/n/samba/prune-samba.sh deleted file mode 100755 index a6106df3..00000000 --- a/source/n/samba/prune-samba.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -# Copyright 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA -# All rights reserved. -# -# Redistribution and use of this script, with or without modification, is -# permitted provided that the following conditions are met: -# -# 1. Redistributions of this script must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -# Pare down the Samba sources to just Samba3 for now, and drop redundant docs. -# This script expects the samba sources to be unpacked in the current -# directory. It will then "pare" them. You'll be expected to repack them -# afterwards. - -cd samba-?.?.? || cd samba-?.?.?? || exit 1 - -rm --verbose WHATSNEW4.txt howto-ol-backend-s4.txt howto4.txt prog_guide4.txt -rm -r --verbose docs-xml packaging4 source4 swat2* -rm --verbose docs/*.pdf - diff --git a/source/n/samba/pytalloc-util.pc b/source/n/samba/pytalloc-util.pc new file mode 100644 index 00000000..800a9a81 --- /dev/null +++ b/source/n/samba/pytalloc-util.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${prefix}/lib +includedir=${prefix}/include + +Name: pytalloc-util +Description: Utility functions for using talloc objects with Python +Version: 2.0.8 +Libs: -L${libdir} -lpytalloc-util +Cflags: -Wl,-rpath,/usr/lib -I${includedir} +URL: http://talloc.samba.org/ diff --git a/source/n/samba/samba.SlackBuild b/source/n/samba/samba.SlackBuild index 16db2341..2257abb8 100755 --- a/source/n/samba/samba.SlackBuild +++ b/source/n/samba/samba.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,26 +20,62 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Modified 2012 by Eric Hameleers <alien at slackware.com> for ARM port. + VERSION=${VERSION:-$(echo samba-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} - -# Automatically determine the architecture we're building on: -if [ -z "$ARCH" ]; then - case "$( uname -m )" in - i?86) export ARCH=i486 ;; - arm*) export ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: - *) export ARCH=$( uname -m ) ;; - esac +BUILD=${BUILD:-2} + +if [ -e $CWD/machine.conf ]; then + . $CWD/machine.conf ] +elif [ -e /etc/slackbuild/machine.conf ]; then + . /etc/slackbuild/machine.conf ] +else + # Automatically determine the architecture we're building on: + if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac + fi + # Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: + if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" + elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" + elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" + else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" + fi fi +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-samba rm -rf $PKG mkdir -p $TMP $PKG +if [ -r /usr/lib${LIBDIRSUFFIX}/libtalloc.so.? -a ! -r /var/log/packages/talloc* ]; then + echo "The Samba package needs to be removed before building to ensure that" + echo "talloc (and possibly other bundled libraries) are included in the build." + echo + echo "Removing the Samba package in 15 seconds, and then continuing with the build." + sleep 15 + removepkg samba +fi + cd $TMP rm -rf samba-$VERSION tar xvf $CWD/samba-$VERSION.tar.xz || exit 1 @@ -59,21 +95,6 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -cd source3 -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "s390" ]; then - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" - LIBDIRSUFFIX="64" -else - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" -fi - # Some of these options could be auto-detected, but declaring them # here doesn't hurt and helps document what features we're trying to # build in. @@ -82,8 +103,10 @@ fi LDFLAGS="-Wl,--no-as-needed" \ CFLAGS="$SLKCFLAGS" \ ./configure \ + --enable-fhs \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ + --includedir=/usr/include \ --bindir=/usr/bin \ --sbindir=/usr/sbin \ --mandir=/usr/man \ @@ -91,28 +114,30 @@ CFLAGS="$SLKCFLAGS" \ --with-configdir=/etc/samba \ --with-piddir=/var/run \ --with-privatedir=/etc/samba/private \ - --localstatedir=/var \ + --with-privatelibdir=/usr/lib${LIBDIRSUFFIX} \ + --with-modulesdir=/usr/lib${LIBDIRSUFFIX} \ --with-lockdir=/var/cache/samba \ - --with-swatdir=/usr/share/swat \ --with-logfilebase=/var/log/samba \ + --localstatedir=/var \ --enable-cups \ - --enable-external-libtalloc=no \ - --enable-static=no \ - --enable-shared=yes \ - --with-acl-support=yes \ + --with-acl-support \ --with-automount \ --with-quotas \ --with-syslog \ --with-utmp \ - --with-libsmbclient \ --with-winbind \ --with-ldap \ - --build=$ARCH-slackware-linux - # Using with-fhs overrides our libdir, and besides we are already hard-coding - # directories. So, now we define them all explicitly... - #--with-fhs \ + --with-ads \ + --without-pam \ + --build=$TARGET + # Gives errors: + #--builtin-libraries=replace,ccan \ + #--bundled-libraries=heimdal \ # -j options don't seem to work... +JOBS=6 +MAXJOBS=6 +export JOBS MAXJOBS make || exit 1 mkdir -p \ @@ -124,30 +149,52 @@ mkdir -p \ chmod 700 $PKG/etc/samba/private chmod 1777 $PKG/var/spool/samba -make install-everything DESTDIR=$PKG || exit 1 - -# Install libnss_win* libraries: -mkdir -p $PKG/lib${LIBDIRSUFFIX} -cp -a ../nsswitch/libnss_winbind.so $PKG/lib${LIBDIRSUFFIX}/libnss_winbind.so.2 -cp -a ../nsswitch/libnss_wins.so $PKG/lib${LIBDIRSUFFIX}/libnss_wins.so.2 -( cd $PKG/lib${LIBDIRSUFFIX} - ln -sf libnss_winbind.so.2 libnss_winbind.so - ln -sf libnss_wins.so.2 libnss_wins.so -) +make install DESTDIR=$PKG || exit 1 # Install pkgconfig files: mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig -cp -a pkgconfig/*.pc $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/talloc.pc ]; then cat $CWD/talloc.pc | sed -e "s/\/lib/\/lib${LIBDIRSUFFIX}/" > $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/talloc.pc fi +if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/pytalloc-util.pc ]; then + cat $CWD/pytalloc-util.pc | sed -e "s/\/lib/\/lib${LIBDIRSUFFIX}/" > $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/pytalloc-util.pc +fi + +# Install talloc.h: +if [ ! -r $PKG/usr/include/talloc.h ]; then + cp -a lib/talloc/talloc.h $PKG/usr/include + chown root:root $PKG/usr/include/talloc.h + chmod 644 $PKG/usr/include/talloc.h +fi + +# Make symlink for pytalloc.h in /usr/include: +if [ ! -r $PKG/usr/include/pytalloc.h ]; then + if [ -r $PKG/usr/include/samba-4.0/pytalloc.h ]; then + ( cd $PKG/usr/include ; ln -sf samba-4.0/pytalloc.h . ) + fi +fi + +# Make symlink for libtalloc.so: +if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/libtalloc.so -a -r $PKG/usr/lib${LIBDIRSUFFIX}/libtalloc.so.? ]; then + ( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -sf libtalloc.so.? libtalloc.so ) +fi + +# Make symlink for libpytalloc-util.so: +if [ ! -r $PKG/usr/lib${LIBDIRSUFFIX}/libpytalloc-util.so -a -r $PKG/usr/lib${LIBDIRSUFFIX}/libpytalloc-util.so.? ]; then + ( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -sf libpytalloc-util.so.? libpytalloc-util.so ) +fi + +# Install the smbprint script: +install -m0744 packaging/printing/smbprint $PKG/usr/bin/smbprint # Add a sample config file: cat $CWD/smb.conf.default > $PKG/etc/samba/smb.conf-sample +# Setup a default lmhosts file: +echo "127.0.0.1 localhost" > $PKG/etc/samba/lmhosts.new + if [ ! -r $PKG/usr/bin/smbget ]; then rm -f $PKG/usr/share/man/man1/smbget.1 - rm -f $PKG/usr/share/swat/help/smbget.1.html fi # We'll add rc.samba to the init directory, but chmod 644 so that it doesn't @@ -166,7 +213,6 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" \ rm -r $PKG/usr/share/locale rm -f $PKG/usr/man/man8/pam* -cd .. cp -a \ COPYING* MAINTAINERS Manifest PFIF.txt README* \ Read-Manifest-Now Roadmap WHATSNEW.txt docs examples \ @@ -174,10 +220,8 @@ cp -a \ # These are installed elsewhere: rm -rf $PKG/usr/doc/samba-$VERSION/docs/htmldocs \ $PKG/usr/doc/samba-$VERSION/docs/manpages -mkdir -p $PKG/usr/doc/samba-$VERSION/docs -( cd $PKG/usr/doc/samba-$VERSION/docs - ln -sf /usr/share/swat/help htmldocs -) +# Empty now? +rmdir $PKG/usr/doc/samba-$VERSION/docs 2> /dev/null # I'm sorry, but when all this info is included in HTML, adding 7MB worth of # PDF files just to have extra artwork is more fluff than I'll agree to. rm -f $PKG/usr/doc/samba-$VERSION/docs/*.pdf diff --git a/source/n/samba/smb.conf.default b/source/n/samba/smb.conf.default index 44ba134f..c41cfff6 100644 --- a/source/n/samba/smb.conf.default +++ b/source/n/samba/smb.conf.default @@ -28,10 +28,16 @@ # server string is the equivalent of the NT Description field server string = Samba Server -# Security mode. Defines in which mode Samba will operate. Possible -# values are share, user, server, domain and ads. Most people will want -# user level security. See the Samba-HOWTO-Collection for details. - security = user +# Server role. Defines in which mode Samba will operate. Possible +# values are "standalone server", "member server", "classic primary +# domain controller", "classic backup domain controller", "active +# directory domain controller". +# +# Most people will want "standalone sever" or "member server". +# Running as "active directory domain controller" will require first +# running "samba-tool domain provision" to wipe databases and create a +# new domain. + server role = standalone server # This option is important for security. It allows you to restrict # connections to machines which are on your local network. The @@ -40,23 +46,6 @@ # the smb.conf man page ; hosts allow = 192.168.1. 192.168.2. 127. -# If you want to automatically load your printer list rather -# than setting them up individually then you'll need this - load printers = yes - -# you may wish to override the location of the printcap file -; printcap name = /etc/printcap - -# on SystemV system setting printcap name to lpstat should allow -# you to automatically obtain a printer list from the SystemV spool -# system -; printcap name = lpstat - -# It should not be necessary to specify the print system type unless -# it is non-standard. Currently supported print systems include: -# bsd, cups, sysv, plp, lprng, aix, hpux, qnx -; printing = cups - # Uncomment this if you want a guest account, you must add this to /etc/passwd # otherwise the user "nobody" is used ; guest account = pcguest @@ -68,15 +57,7 @@ # Put a capping on the size of the log files (in Kb). max log size = 50 -# Use password server option only with security = server -# The argument list may include: -# password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] -# or to auto-locate the domain controller/s -# password server = * -; password server = <NT-Server-Name> - -# Use the realm option only with security = ads -# Specifies the Active Directory realm the host is part of +# Specifies the Kerberos or Active Directory realm the host is part of ; realm = MY_REALM # Backend to store user information in. New installations should @@ -96,35 +77,6 @@ # here. See the man page for details. ; interfaces = 192.168.12.2/24 192.168.13.2/24 -# Browser Control Options: -# set local master to no if you don't want Samba to become a master -# browser on your network. Otherwise the normal election rules apply -; local master = no - -# OS Level determines the precedence of this server in master browser -# elections. The default value should be reasonable -; os level = 33 - -# Domain Master specifies Samba to be the Domain Master Browser. This -# allows Samba to collate browse lists between subnets. Don't use this -# if you already have a Windows NT domain controller doing this job -; domain master = yes - -# Preferred Master causes Samba to force a local browser election on startup -# and gives it a slightly higher chance of winning the election -; preferred master = yes - -# Enable this if you want Samba to be a domain logon server for -# Windows95 workstations. -; domain logons = yes - -# if you enable domain logons then you may want a per-machine or -# per user logon script -# run a specific logon batch file per workstation (machine) -; logon script = %m.bat -# run a specific logon batch file per username -; logon script = %U.bat - # Where to store roving profiles (only for Win95 and WinNT) # %L substitutes for this servers netbios name, %U is username # You must uncomment the [Profiles] share below diff --git a/source/n/samba/smb.conf.default.orig b/source/n/samba/smb.conf.default.orig index b4e3d63e..bb9c2e25 100644 --- a/source/n/samba/smb.conf.default.orig +++ b/source/n/samba/smb.conf.default.orig @@ -28,10 +28,16 @@ # server string is the equivalent of the NT Description field server string = Samba Server -# Security mode. Defines in which mode Samba will operate. Possible -# values are share, user, server, domain and ads. Most people will want -# user level security. See the Samba-HOWTO-Collection for details. - security = user +# Server role. Defines in which mode Samba will operate. Possible +# values are "standalone server", "member server", "classic primary +# domain controller", "classic backup domain controller", "active +# directory domain controller". +# +# Most people will want "standalone sever" or "member server". +# Running as "active directory domain controller" will require first +# running "samba-tool domain provision" to wipe databases and create a +# new domain. + server role = standalone server # This option is important for security. It allows you to restrict # connections to machines which are on your local network. The @@ -40,23 +46,6 @@ # the smb.conf man page ; hosts allow = 192.168.1. 192.168.2. 127. -# If you want to automatically load your printer list rather -# than setting them up individually then you'll need this - load printers = yes - -# you may wish to override the location of the printcap file -; printcap name = /etc/printcap - -# on SystemV system setting printcap name to lpstat should allow -# you to automatically obtain a printer list from the SystemV spool -# system -; printcap name = lpstat - -# It should not be necessary to specify the print system type unless -# it is non-standard. Currently supported print systems include: -# bsd, cups, sysv, plp, lprng, aix, hpux, qnx -; printing = cups - # Uncomment this if you want a guest account, you must add this to /etc/passwd # otherwise the user "nobody" is used ; guest account = pcguest @@ -68,15 +57,7 @@ # Put a capping on the size of the log files (in Kb). max log size = 50 -# Use password server option only with security = server -# The argument list may include: -# password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] -# or to auto-locate the domain controller/s -# password server = * -; password server = <NT-Server-Name> - -# Use the realm option only with security = ads -# Specifies the Active Directory realm the host is part of +# Specifies the Kerberos or Active Directory realm the host is part of ; realm = MY_REALM # Backend to store user information in. New installations should @@ -96,35 +77,6 @@ # here. See the man page for details. ; interfaces = 192.168.12.2/24 192.168.13.2/24 -# Browser Control Options: -# set local master to no if you don't want Samba to become a master -# browser on your network. Otherwise the normal election rules apply -; local master = no - -# OS Level determines the precedence of this server in master browser -# elections. The default value should be reasonable -; os level = 33 - -# Domain Master specifies Samba to be the Domain Master Browser. This -# allows Samba to collate browse lists between subnets. Don't use this -# if you already have a Windows NT domain controller doing this job -; domain master = yes - -# Preferred Master causes Samba to force a local browser election on startup -# and gives it a slightly higher chance of winning the election -; preferred master = yes - -# Enable this if you want Samba to be a domain logon server for -# Windows95 workstations. -; domain logons = yes - -# if you enable domain logons then you may want a per-machine or -# per user logon script -# run a specific logon batch file per workstation (machine) -; logon script = %m.bat -# run a specific logon batch file per username -; logon script = %U.bat - # Where to store roving profiles (only for Win95 and WinNT) # %L substitutes for this servers netbios name, %U is username # You must uncomment the [Profiles] share below diff --git a/source/n/samba/smb.conf.diff b/source/n/samba/smb.conf.diff index 3573a8f0..b08d2b12 100644 --- a/source/n/samba/smb.conf.diff +++ b/source/n/samba/smb.conf.diff @@ -1,5 +1,5 @@ ---- smb.conf.default.orig 2009-09-30 07:17:40.000000000 -0500 -+++ smb.conf.default 2009-10-03 15:59:26.000000000 -0500 +--- smb.conf.default.orig 2013-06-13 04:21:02.000000000 -0500 ++++ smb.conf.default 2013-10-15 20:02:31.684043875 -0500 @@ -22,7 +22,7 @@ #======================= Global Settings ===================================== [global] @@ -9,7 +9,7 @@ workgroup = MYGROUP # server string is the equivalent of the NT Description field -@@ -63,7 +63,7 @@ +@@ -52,7 +52,7 @@ # this tells Samba to use a separate log file for each machine # that connects @@ -18,7 +18,7 @@ # Put a capping on the size of the log files (in Kb). max log size = 50 -@@ -184,7 +184,7 @@ +@@ -136,7 +136,7 @@ # specifically define each individual printer [printers] comment = All Printers diff --git a/source/n/samba/talloc.pc b/source/n/samba/talloc.pc index 7a23835c..125977d1 100644 --- a/source/n/samba/talloc.pc +++ b/source/n/samba/talloc.pc @@ -1,11 +1,11 @@ prefix=/usr exec_prefix=${prefix} -libdir=${exec_prefix}/lib +libdir=${prefix}/lib includedir=${prefix}/include Name: talloc Description: A hierarchical pool based memory system with destructors -Version: 2.0.1 -Libs: -L${libdir} -ltalloc +Version: 2.0.8 +Libs: -Wl,-rpath,/usr/lib -L${libdir} -ltalloc Cflags: -I${includedir} URL: http://talloc.samba.org/ |