diff options
Diffstat (limited to 'source/n/netatalk')
-rw-r--r-- | source/n/netatalk/afppasswd | 0 | ||||
-rw-r--r-- | source/n/netatalk/doinst.sh | 22 | ||||
-rw-r--r-- | source/n/netatalk/netatalk-2.0.4-afpdconf.diff | 10 | ||||
-rw-r--r-- | source/n/netatalk/netatalk-2.0.4-without_xfs.diff | 22 | ||||
-rwxr-xr-x | source/n/netatalk/netatalk.SlackBuild | 134 | ||||
-rw-r--r-- | source/n/netatalk/netatalk.etc2ps.diff | 20 | ||||
-rw-r--r-- | source/n/netatalk/rc.atalk.new | 56 | ||||
-rw-r--r-- | source/n/netatalk/slack-desc | 19 |
8 files changed, 283 insertions, 0 deletions
diff --git a/source/n/netatalk/afppasswd b/source/n/netatalk/afppasswd new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/source/n/netatalk/afppasswd diff --git a/source/n/netatalk/doinst.sh b/source/n/netatalk/doinst.sh new file mode 100644 index 000000000..0f07997d0 --- /dev/null +++ b/source/n/netatalk/doinst.sh @@ -0,0 +1,22 @@ +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Keep same perms on rc.atalk.new: +if [ -e etc/rc.d/rc.atalk ]; then + cp -a etc/rc.d/rc.atalk etc/rc.d/rc.atalk.new.incoming + cat etc/rc.d/rc.atalk.new > etc/rc.d/rc.atalk.new.incoming + mv etc/rc.d/rc.atalk.new.incoming etc/rc.d/rc.atalk.new +fi + +config etc/rc.d/rc.atalk.new +rm -f etc/rc.d/rc.atalk.new + diff --git a/source/n/netatalk/netatalk-2.0.4-afpdconf.diff b/source/n/netatalk/netatalk-2.0.4-afpdconf.diff new file mode 100644 index 000000000..b2cf5df6f --- /dev/null +++ b/source/n/netatalk/netatalk-2.0.4-afpdconf.diff @@ -0,0 +1,10 @@ +diff -Nur netatalk-2.0.4.orig/config/afpd.conf.tmpl netatalk-2.0.4.new/config/afpd.conf.tmpl +--- netatalk-2.0.4.orig/config/afpd.conf.tmpl 2009-04-30 04:30:13.000000000 -0500 ++++ netatalk-2.0.4.new/config/afpd.conf.tmpl 2009-05-30 23:19:39.663201236 -0500 +@@ -212,4 +212,5 @@ + # "special" -notcp -defaultvol <path> -systemvol <path> + # + # default: +-# - -transall -uamlist uams_dhx.so,uams_dhx2.so -nosavepassword ++# Disallow clear-text transmission of passwords and DHX version 1 ++- -transall -uamlist uams_guest.so,uams_dhx2.so -nosavepassword diff --git a/source/n/netatalk/netatalk-2.0.4-without_xfs.diff b/source/n/netatalk/netatalk-2.0.4-without_xfs.diff new file mode 100644 index 000000000..75f97a038 --- /dev/null +++ b/source/n/netatalk/netatalk-2.0.4-without_xfs.diff @@ -0,0 +1,22 @@ +diff -Nur netatalk-2.0.4.orig/configure.in netatalk-2.0.4.new/configure.in +--- netatalk-2.0.4.orig/configure.in 2009-03-29 02:23:20.000000000 -0500 ++++ netatalk-2.0.4.new/configure.in 2009-05-30 23:11:29.556016349 -0500 +@@ -692,6 +692,10 @@ + # AC_MSG_RESULT([enabling quotactl wrapper]) + # ) + ++AC_ARG_WITH([xfs], ++ AS_HELP_STRING([--without-xfs], [Build without XFS filesystem quota support])) ++ ++if test "x$with_xfs" != "xno"; then + # For quotas on Linux XFS filesystems + + # For linux > 2.5.56 +@@ -699,6 +703,7 @@ + [AC_CHECK_HEADERS(linux/xqm.h linux/xfs_fs.h) + AC_CHECK_HEADERS(xfs/libxfs.h xfs/xqm.h xfs/xfs_fs.h)] + ) ++fi + + + dnl ----- as far as I can tell, dbtob always does the wrong thing diff --git a/source/n/netatalk/netatalk.SlackBuild b/source/n/netatalk/netatalk.SlackBuild new file mode 100755 index 000000000..1bffea9f0 --- /dev/null +++ b/source/n/netatalk/netatalk.SlackBuild @@ -0,0 +1,134 @@ +#!/bin/sh + +# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, 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. + + +VERSION=2.0.4 +ARCH=${ARCH:-x86_64} +BUILD=${BUILD:-2} + +NUMJOBS=${NUMJOBS:-" -j7 "} + +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" +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-netatalk +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf netatalk-$VERSION +tar xvf $CWD/netatalk-$VERSION.tar.xz || exit 1 +cd netatalk-$VERSION || exit 1 +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Fixup some paths in etc2ps.sh +zcat $CWD/netatalk.etc2ps.diff.gz | patch -p1 || exit 1 + +# Allow building without xfs quota support +zcat $CWD/netatalk-2.0.4-without_xfs.diff.gz | patch -p1 || exit 1 + +# Disallow transmission of passwords via cleartext and with old version 1 of +# the Diffie-Hellman protocol +zcat $CWD/netatalk-2.0.4-afpdconf.diff.gz | patch -p1 || exit 1 + +autoreconf -vif +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --mandir=/usr/man \ + --sysconfdir=/etc \ + --libexecdir=/usr/sbin \ + --localstatedir=/var \ + --disable-static \ + --with-shadow \ + --without-xfs \ + --build=$ARCH-slackware-linux + +make $NUMJOBS || make || exit 1 +make install DESTDIR=$PKG || exit 1 + +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +gzip -9 $PKG/usr/man/man?/* + +# This is normally installed setuid root, but I'm not 100% sure I trust it yet. +# I see it uses strcpy() in a few places... +chmod 755 $PKG/usr/bin/afppasswd + +# Install the afppasswd config file +mkdir -p $PKG/etc/netatalk +cat $CWD/afppasswd > $PKG/etc/netatalk/afppasswd + +# Install an init script +mkdir -p $PKG/etc/rc.d +cat $CWD/rc.atalk.new > $PKG/etc/rc.d/rc.atalk.new +chmod 644 $PKG/etc/rc.d/rc.atalk.new + +mkdir -p $PKG/install +zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh +cat $CWD/slack-desc > $PKG/install/slack-desc + +( cd $PKG/etc/netatalk + for file in AppleVolumes.default AppleVolumes.system afpd.conf afppasswd atalkd.conf netatalk.conf papd.conf ; do + mv $file ${file}.new + echo "config etc/netatalk/${file}.new" >> $PKG/install/doinst.sh + done +) +echo "rm -f etc/netatalk/afppasswd.new" >> $PKG/install/doinst.sh + +mkdir -p $PKG/usr/doc/netatalk-$VERSION +cp -a \ + CONTRIBUTORS COPYING COPYRIGHT NEWS README TODO VERSION doc/* \ + $PKG/usr/doc/netatalk-$VERSION +# -1, Redundant +rm -rf $PKG/usr/doc/netatalk-$VERSION/doc/Makefile* \ + $PKG/usr/doc/netatalk-$VERSION/doc/htmldocs \ + $PKG/usr/doc/netatalk-$VERSION/doc/*.pdf + +# "make install" creates this directory with chmod 0777 +# I'd rather use 755, but I'll assume since this is a +# new directory that it is needed for something. This +# will help it a bit anyway... +chmod 1777 $PKG/var/spool/netatalk +# If anyone can confirm that 755 would still work let me know. + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/netatalk-$VERSION-$ARCH-$BUILD.txz + diff --git a/source/n/netatalk/netatalk.etc2ps.diff b/source/n/netatalk/netatalk.etc2ps.diff new file mode 100644 index 000000000..f326415a7 --- /dev/null +++ b/source/n/netatalk/netatalk.etc2ps.diff @@ -0,0 +1,20 @@ +--- ./etc/psf/etc2ps.sh.orig 2004-10-26 20:28:38.000000000 -0700 ++++ ./etc/psf/etc2ps.sh 2004-10-28 11:43:19.000000000 -0700 +@@ -9,14 +9,14 @@ + # tag in the case. + # + +-DVIPSPATH=/usr/local/tex/bin +-DVIPS=/usr/local/tex/bin/dvips ++DVIPSPATH=/usr/share/texmf/bin ++DVIPS=/usr/share/texmf/bin/dvips + DVIPSARGS="-f -q" + + TROFF2PS=/usr/local/psroff/troff2/troff2ps + TROFF2PSARGS="-Z -O-.10" + +-PATH=/usr/bin:$DVIPSPATH; export PATH ++PATH=$PATH:$DVIPSPATH; export PATH + + case $1 in + diff --git a/source/n/netatalk/rc.atalk.new b/source/n/netatalk/rc.atalk.new new file mode 100644 index 000000000..ce490345f --- /dev/null +++ b/source/n/netatalk/rc.atalk.new @@ -0,0 +1,56 @@ +# +# AppleTalk daemons. Make sure not to start atalkd in the background: +# its data structures must have time to stablize before running the +# other processes. +# + +netatalk_start() { + echo -n 'starting appletalk daemons: ' + if [ -x /usr/sbin/atalkd ]; then + echo -n ' atalkd' + /usr/sbin/atalkd + fi + if [ -x /usr/bin/nbprgstr ]; then + echo -n ' nbprgstr' + /usr/bin/nbprgstr -p 4 `hostname|sed 's/\..*$//'`:Workstation + /usr/bin/nbprgstr -p 4 `hostname|sed 's/\..*$//'`:netatalk + fi + if [ -x /usr/sbin/papd ]; then + echo -n ' papd' + /usr/sbin/papd + fi + if [ -x /usr/sbin/afpd ]; then + echo -n ' afpd' + /usr/sbin/afpd + fi + if [ -x /usr/sbin/timelord ]; then + echo -n ' timelord' + /usr/sbin/timelord + fi + echo +} + +netatalk_stop() { + killall atalkd nbprgstr papd afpd timelord 2> /dev/null +} + +netatalk_restart() { + netatalk_stop + sleep 1 + netatalk_start +} + +case "$1" in +'start') + netatalk_start + ;; +'stop') + netatalk_stop + ;; +'restart') + netatalk_restart + ;; +*) + netatalk_start +esac + diff --git a/source/n/netatalk/slack-desc b/source/n/netatalk/slack-desc new file mode 100644 index 000000000..8c03df863 --- /dev/null +++ b/source/n/netatalk/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +netatalk: netatalk (Appletalk file and print server) +netatalk: +netatalk: Netatalk is an Appletalk file and print server for Linux. Using +netatalk: Netatalk, Macintosh computers on your local network can mount Linux +netatalk: volumes as if they were standard Appletalk network drives, and can +netatalk: print to the Linux box's printer as if it were a network printer +netatalk: supporting PostScript. +netatalk: +netatalk: Netatalk was originally written by the Research Systems Unix Group at +netatalk: The University of Michigan, and is maintained by the Netatalk Team. +netatalk: |