summaryrefslogtreecommitdiffstats
path: root/source/xap/xscreensaver/xscreensaver.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'source/xap/xscreensaver/xscreensaver.SlackBuild')
-rwxr-xr-xsource/xap/xscreensaver/xscreensaver.SlackBuild35
1 files changed, 26 insertions, 9 deletions
diff --git a/source/xap/xscreensaver/xscreensaver.SlackBuild b/source/xap/xscreensaver/xscreensaver.SlackBuild
index 5ecaa8e64..cb9c10cdb 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
-