summaryrefslogtreecommitdiff
path: root/system/gdm
diff options
context:
space:
mode:
Diffstat (limited to 'system/gdm')
-rw-r--r--system/gdm/README14
-rw-r--r--system/gdm/Sessions/xfce.desktop3
-rw-r--r--system/gdm/doinst.sh25
-rw-r--r--system/gdm/gdm.SlackBuild34
-rw-r--r--system/gdm/gdm.info14
-rw-r--r--system/gdm/make_xfce_default_session.diff11
6 files changed, 76 insertions, 25 deletions
diff --git a/system/gdm/README b/system/gdm/README
index 3463e8ea43..77186f432f 100644
--- a/system/gdm/README
+++ b/system/gdm/README
@@ -1,11 +1,13 @@
-The Gnome Display Manager (GDM) is a display manager that
-implements all significant features required for managing
-local and remote displays. For full information about GDM
-features, refer to the documentation.
+The Gnome Display Manager (GDM) is a display manager that implements all
+significant features required for managing local and remote displays.
+For full information about GDM features, refer to the documentation.
The Sessions that gdm uses are installed in /etc/X11/gdm/Sessions.
Several example files are included for blackbox, fluxbox, fvwm2,
kde, twm, windowmaker, and xfce.
-gnome-doc-utils and libgnomecanvas (available at SBo) are
-required to build GDM.
+If you want xscreensaver to recognize gdm and add a "New Login" button
+to the unlock screen, add this line to your ~/.xscreensaver file:
+ newLoginCommand: gdmflexiserver -ls
+
+This requires libgnomecanvas.
diff --git a/system/gdm/Sessions/xfce.desktop b/system/gdm/Sessions/xfce.desktop
index 285affda3a..040b6ba746 100644
--- a/system/gdm/Sessions/xfce.desktop
+++ b/system/gdm/Sessions/xfce.desktop
@@ -3,6 +3,5 @@ Encoding=UTF-8
Name=XFCE
Comment=The Cholesterol Free Desktop Environment
Exec=/etc/X11/xdm/Xsession xfce
-# no icon yet, only the top three are currently used
-Icon=
+Icon=/usr/share/pixmaps/xfce4_xicon1.png
Type=Application
diff --git a/system/gdm/doinst.sh b/system/gdm/doinst.sh
new file mode 100644
index 0000000000..161e204bbf
--- /dev/null
+++ b/system/gdm/doinst.sh
@@ -0,0 +1,25 @@
+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...
+}
+
+config etc/X11/gdm/custom.conf.new
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
diff --git a/system/gdm/gdm.SlackBuild b/system/gdm/gdm.SlackBuild
index d5a46fb09c..aa18408377 100644
--- a/system/gdm/gdm.SlackBuild
+++ b/system/gdm/gdm.SlackBuild
@@ -9,7 +9,7 @@
# Modified by Frank Caraballo <fecaraballo{at}gmail{dot}com>
PRGNAM=gdm
-VERSION=${VERSION:-2.20.9}
+VERSION=${VERSION:-2.20.10}
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -21,10 +21,13 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
fi
set -e
@@ -46,6 +49,7 @@ CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc/X11 \
--localstatedir=/var/lib \
--mandir=/usr/man \
@@ -57,8 +61,19 @@ CXXFLAGS="$SLKCFLAGS" \
--with-dmconfdir=/etc/X11/$PRGNAM \
--build=$ARCH-slackware-linux
-make
-make install-strip DESTDIR=$PKG
+make SUSPEND_COMMAND=/usr/sbin/pm-suspend
+make SUSPEND_COMMAND=/usr/sbin/pm-suspend install-strip DESTDIR=$PKG
+
+# Install some simple session files designed to work with Slackware
+mkdir -p $PKG/etc/X11/$PRGNAM/Sessions
+cp -r $CWD/Sessions/* $PKG/etc/X11/$PRGNAM/Sessions
+chmod 0755 $PKG/etc/X11/$PRGNAM/Sessions/*
+
+# Make xfce the default session
+patch -d $PKG -p1 < $CWD/make_xfce_default_session.diff
+
+# Let's not clobber the a custom config
+mv $PKG/etc/X11/gdm/custom.conf $PKG/etc/X11/gdm/custom.conf.new
( cd $PKG/usr/man
find . -type f -exec gzip -9 {} \;
@@ -66,17 +81,14 @@ make install-strip DESTDIR=$PKG
)
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog COPYING INSTALL MAINTAINERS NEWS README* TODO docs/C/* \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS ChangeLog COPYING INSTALL MAINTAINERS NEWS README* TODO docs/C/* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# Simple session files designed to work with Slackware:
-mkdir -p $PKG/etc/X11/$PRGNAM/Sessions
-cp -r $CWD/Sessions/* $PKG/etc/X11/$PRGNAM/Sessions
-chmod 0755 $PKG/etc/X11/$PRGNAM/Sessions/*
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/gdm/gdm.info b/system/gdm/gdm.info
index ad544388c7..1f47be3afb 100644
--- a/system/gdm/gdm.info
+++ b/system/gdm/gdm.info
@@ -1,8 +1,10 @@
PRGNAM="gdm"
-VERSION="2.20.9"
+VERSION="2.20.10"
HOMEPAGE="http://www.gnome.org/projects/gdm/"
-DOWNLOAD="http://ftp.acc.umu.se/pub/GNOME/sources/gdm/2.20/gdm-2.20.9.tar.bz2"
-MD5SUM="bdc7265f77b2e26e90d48ac512136e54"
-MAINTAINER="nobody"
-EMAIL="nobody@nowhere"
-APPROVED="rworkman"
+DOWNLOAD="http://ftp.acc.umu.se/pub/GNOME/sources/gdm/2.20/gdm-2.20.10.tar.bz2"
+MD5SUM="981c7ee7fbe453061e095ab52a3513f8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+MAINTAINER="Robby Workman"
+EMAIL="rw@rlworkman.net"
+APPROVED="dsomero"
diff --git a/system/gdm/make_xfce_default_session.diff b/system/gdm/make_xfce_default_session.diff
new file mode 100644
index 0000000000..1b2fcc1ef9
--- /dev/null
+++ b/system/gdm/make_xfce_default_session.diff
@@ -0,0 +1,11 @@
+--- a/etc/X11/gdm/custom.conf 2009-07-31 00:32:22.065895378 -0500
++++ b/etc/X11/gdm/custom.conf 2009-07-31 00:32:38.975622851 -0500
+@@ -54,6 +54,8 @@
+
+ [daemon]
+
++DefaultSession=xfce.desktop
++
+ [security]
+
+ [xdmcp]