diff options
Diffstat (limited to 'source/xap/xscreensaver/xscreensaver.SlackBuild')
-rwxr-xr-x | source/xap/xscreensaver/xscreensaver.SlackBuild | 35 |
1 files changed, 26 insertions, 9 deletions
diff --git a/source/xap/xscreensaver/xscreensaver.SlackBuild b/source/xap/xscreensaver/xscreensaver.SlackBuild index 5ecaa8e6..cb9c10cd 100755 --- a/source/xap/xscreensaver/xscreensaver.SlackBuild +++ b/source/xap/xscreensaver/xscreensaver.SlackBuild @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2008, 2009, 2010, 2012, 2013, 2014, 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2012, 2013, 2014, 2016, 2018, 2019, 2020 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -71,9 +71,16 @@ rm -rf xscreensaver-$VERSION tar xvf $CWD/xscreensaver-$VERSION.tar.?z || exit 1 cd xscreensaver-$VERSION -# Allow xscreensaver to work setgid shadow. I'd rather avoid requiring -# setuid root on this if at all possible... -zcat $CWD/xscreensaver.setuid.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 +if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then + USE_PAM="--with-pam" + unset USE_SHADOW +else + # Allow xscreensaver to work setgid shadow. I'd rather avoid requiring + # setuid root on this if at all possible... + zcat $CWD/xscreensaver.setuid.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 + unset USE_PAM + USE_SHADOW="--with-shadow" +fi # Add support for the electricsheep distributed screensaver: zcat $CWD/xscreensaver.electricsheep.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 @@ -100,7 +107,9 @@ CXXFLAGS="$SLKCFLAGS" \ --mandir=/usr/man \ --with-x-app-defaults=/etc/X11/app-defaults \ --with-text-file=/usr/doc/netdate/COPYRIGHT \ - --with-shadow \ + $USE_SHADOW \ + $USE_PAM \ + --without-kerberos \ --with-jpeg \ --with-gl \ --build=$ARCH-slackware-linux || exit 1 @@ -109,9 +118,18 @@ CXXFLAGS="$SLKCFLAGS" \ make $NUMJOBS || make || exit 1 make install_prefix=$PKG install-strip || exit 1 -# Needed for password unlock: -chown root:shadow $PKG/usr/bin/xscreensaver -chmod 2751 $PKG/usr/bin/xscreensaver +if [ -z $USE_PAM ]; then + # Needed for password unlock: + chown root:shadow $PKG/usr/bin/xscreensaver + chmod 2751 $PKG/usr/bin/xscreensaver +else + # No special perms needed with PAM: + chmod 755 $PKG/usr/bin/xscreensaver + mkdir -p $PKG/etc/pam.d + cat $CWD/xscreensaver.pam > $PKG/etc/pam.d/xscreensaver.new + mkdir -p $PKG/install + zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh +fi # This is needed for the menus: mkdir -p $PKG/usr/share/pixmaps @@ -147,4 +165,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG /sbin/makepkg -l y -c n $TMP/xscreensaver-$VERSION-$ARCH-$BUILD.txz - |