[arch-commits] Commit in slim/repos (8 files)
Alexander Fehr
alexanderf at archlinux.org
Sat Dec 6 15:21:46 UTC 2008
Date: Saturday, December 6, 2008 @ 10:21:46
Author: alexanderf
Revision: 20757
Merged revisions 356,9953,20755 via svnmerge from
svn+ssh://archlinux.org/srv/svn-packages/slim/trunk
........
r356 | aaron | 2008-04-19 00:56:27 +0200 (Sa, 19 Apr 2008) | 1 line
Added svn:keywords to all PKGBUILDs
........
r9953 | eric | 2008-08-21 04:42:33 +0200 (Do, 21 Aug 2008) | 1 line
added md5sums
........
r20755 | alexanderf | 2008-12-06 16:04:35 +0100 (Sa, 06 Dez 2008) | 1 line
upgpkg: slim 1.3.1-1
........
Added:
slim/repos/extra-x86_64/ChangeLog
(from rev 20755, slim/trunk/ChangeLog)
slim/repos/extra-x86_64/slim-restart.patch
(from rev 20755, slim/trunk/slim-restart.patch)
slim/repos/extra-x86_64/slim.pam
(from rev 20755, slim/trunk/slim.pam)
Modified:
slim/repos/extra-x86_64/ (properties)
slim/repos/extra-x86_64/PKGBUILD
slim/repos/extra-x86_64/slim
slim/repos/extra-x86_64/slim.install
slim/repos/extra-x86_64/slim.logrotate
--------------------+
ChangeLog | 13 ++++
PKGBUILD | 62 +++++++++++-----------
slim | 12 +---
slim-restart.patch | 141 +++++++++++++++++++++++++++++++++++++++++++++++++++
slim.install | 32 +----------
slim.logrotate | 2
slim.pam | 8 ++
7 files changed, 202 insertions(+), 68 deletions(-)
Property changes on: slim/repos/extra-x86_64
___________________________________________________________________
Modified: svnmerge-integrated
- /slim/trunk:1
+ /slim/trunk:1-20756
Copied: slim/repos/extra-x86_64/ChangeLog (from rev 20755, slim/trunk/ChangeLog)
===================================================================
--- extra-x86_64/ChangeLog (rev 0)
+++ extra-x86_64/ChangeLog 2008-12-06 15:21:46 UTC (rev 20757)
@@ -0,0 +1,13 @@
+2008-11-22 Alexander Fehr <pizzapunk gmail com>
+
+ * slim-1.3.1-1:
+ New upstream release.
+ New maintainer.
+ Changed license to GPL2.
+ Changed dependency on gcc to gcc-libs.
+ Added patch to fix FS#8454.
+ Added PAM support.
+ Fixed man page location.
+ Cleaned up PKGBUILD.
+ Cleaned up install file.
+ Added ChangeLog.
Modified: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD 2008-12-06 15:14:09 UTC (rev 20756)
+++ extra-x86_64/PKGBUILD 2008-12-06 15:21:46 UTC (rev 20757)
@@ -1,42 +1,44 @@
# $Id$
-# Maintainer : Aaron Griffin <aaron at archlinux.org>
+# Maintainer: Alexander Fehr <pizzapunk gmail com>
# Contributor: Hugo Ideler <hugoideler at dse.nl>
pkgname=slim
-pkgver=1.3.0
-pkgrel=2
-pkgdesc="Simple Login Manager for X11"
-arch=(i686 x86_64)
-url="http://slim.berlios.de"
-backup=(etc/slim.conf)
-depends=(gcc-libs libxmu libxft libjpeg libpng bash)
+pkgver=1.3.1
+pkgrel=1
+pkgdesc="Desktop-independent graphical login manager for X11"
+arch=('i686' 'x86_64')
+url="http://slim.berlios.de/"
+license=('GPL2')
+depends=('gcc-libs' 'libxmu' 'libpng' 'libjpeg' 'libxft')
+backup=('etc/slim.conf')
install=slim.install
-license=('GPL')
-source=(http://download.berlios.de/$pkgname/$pkgname-$pkgver.tar.gz
- slim slim.logrotate)
-md5sums=('1c1a87f3cbd3c334c874585e42701961' '07431fcbd753d3abbcfedaa76401e212'\
- '257cf53a3f762ff609e2afd265dac953')
+source=(http://download.berlios.de/slim/slim-$pkgver.tar.gz
+ slim
+ slim.logrotate
+ slim.pam
+ slim-restart.patch)
+md5sums=('727d0acb24c0fbf0751134c37a9c895f'
+ 'd8ea9c4dee2811524b67f4f666311a1f'
+ '43da096480bf72c3ccec8ad8400f34f0'
+ 'b20fe3c8487a039050986d60e45233a9'
+ '648d871fe7d2a97b7d7b928019e2feee')
build() {
- cd $startdir/src/$pkgname-$pkgver
+ cd "$srcdir/slim-$pkgver"
- sed -i "s|/usr/X11R6/include|/usr/include/xorg|g" Makefile
- cp /usr/include/shadow.h . #wtf is going on with this? it works fine if copied locally
- sed -i "s|/usr/X11R6/|/usr/|g" Makefile
- make || return 1
+ # Restart Xserver if killed
+ # http://developer.berlios.de/patch/?func=detailpatch&patch_id=2378&group_id=2663
+ patch -Np1 -i "$srcdir/slim-restart.patch" || return 1
- sed -i "s|/usr/X11R6/include|/usr/include/xorg|g" slim.conf
- sed -i "s|/usr/X11R6/|/usr/|g" slim.conf
- make DESTDIR=$startdir/pkg install
+ make USE_PAM=1 || return 1
+ make DESTDIR="$pkgdir" MANDIR=/usr/share/man install || return 1
- install -D -m755 -o root -g root $startdir/src/slim $startdir/pkg/etc/rc.d/slim
- install -D -m644 -o root -g root $startdir/src/slim.logrotate $startdir/pkg/etc/logrotate.d/slim
+ install -D -m755 "$srcdir/slim" "$pkgdir/etc/rc.d/slim" || return 1
+ install -D -m644 "$srcdir/slim.logrotate" "$pkgdir/etc/logrotate.d/slim" || return 1
+ install -D -m644 "$srcdir/slim.pam" "$pkgdir/etc/pam.d/slim" || return 1
- # let's make this a tad safer... "sane defaults" and all
- sed -i "s@#xserver_arguments.*@xserver_arguments -nolisten tcp vt07@"\
- $startdir/pkg/etc/slim.conf
-
- # lockfile is defaulted in /var/run, which is not cleared at boot
- # (causes problems) - thanks bogomipz
- sed -i 's@/var/run/slim.lock@/var/lock/slim.lock@' $startdir/pkg/etc/slim.conf
+ # Provide sane defaults
+ sed -i 's|#xserver_arguments.*|xserver_arguments -nolisten tcp vt07|' \
+ "$pkgdir/etc/slim.conf" || return 1
+ sed -i 's|/var/run/slim.lock|/var/lock/slim.lock|' "$pkgdir/etc/slim.conf" || return 1
}
Modified: extra-x86_64/slim
===================================================================
--- extra-x86_64/slim 2008-12-06 15:14:09 UTC (rev 20756)
+++ extra-x86_64/slim 2008-12-06 15:21:46 UTC (rev 20757)
@@ -3,13 +3,11 @@
. /etc/rc.conf
. /etc/rc.d/functions
-lockfile=$(grep lockfile /etc/slim.conf |tr -s " " | cut -d" " -f2)
-pid=$(pidof -o %PPID /usr/bin/slim)
-
+PID=`pidof -o %PPID /usr/bin/slim`
case "$1" in
start)
stat_busy "Starting Simple Login Manager"
- [ -z "$pid" ] && /usr/bin/slim -d >/dev/null 2>&1
+ [ -z "$PID" ] && /usr/bin/slim -d &> /dev/null
if [ $? -gt 0 ]; then
stat_fail
else
@@ -19,8 +17,7 @@
;;
stop)
stat_busy "Stopping Simple Login Manager"
- rm -f $lockfile
- [ ! -z "$pid" ] && kill $pid >/dev/null 2>&1
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
if [ $? -gt 0 ]; then
stat_fail
else
@@ -34,7 +31,6 @@
$0 start
;;
*)
- echo "usage: $0 {start|stop|restart}"
+ echo "usage: $0 {start|stop|restart}"
esac
-
exit 0
Copied: slim/repos/extra-x86_64/slim-restart.patch (from rev 20755, slim/trunk/slim-restart.patch)
===================================================================
--- extra-x86_64/slim-restart.patch (rev 0)
+++ extra-x86_64/slim-restart.patch 2008-12-06 15:21:46 UTC (rev 20757)
@@ -0,0 +1,141 @@
+diff -ur slim-1.3.1.orig/app.cpp slim-1.3.1/app.cpp
+--- slim-1.3.1.orig/app.cpp 2008-09-26 02:54:15.000000000 +0200
++++ slim-1.3.1/app.cpp 2008-11-21 20:38:48.000000000 +0100
+@@ -102,6 +102,11 @@
+
+ extern App* LoginApp;
+
++int xioerror(Display *disp) {
++ LoginApp->RestartServer();
++ return 0;
++}
++
+ void CatchSignal(int sig) {
+ cerr << APPNAME << ": unexpected signal " << sig << endl;
+ LoginApp->StopServer();
+@@ -109,19 +114,6 @@
+ exit(ERR_EXIT);
+ }
+
+-
+-void AlarmSignal(int sig) {
+- int pid = LoginApp->GetServerPID();
+- if(waitpid(pid, NULL, WNOHANG) == pid) {
+- LoginApp->StopServer();
+- LoginApp->RemoveLock();
+- exit(OK_EXIT);
+- }
+- signal(sig, AlarmSignal);
+- alarm(2);
+-}
+-
+-
+ void User1Signal(int sig) {
+ signal(sig, User1Signal);
+ }
+@@ -267,7 +259,6 @@
+ signal(SIGHUP, CatchSignal);
+ signal(SIGPIPE, CatchSignal);
+ signal(SIGUSR1, User1Signal);
+- signal(SIGALRM, AlarmSignal);
+
+ #ifndef XNEST_DEBUG
+ OpenLog();
+@@ -287,7 +278,6 @@
+
+ CreateServerAuth();
+ StartServer();
+- alarm(2);
+ #endif
+
+ }
+@@ -603,6 +593,8 @@
+ int status;
+ while (wpid != pid) {
+ wpid = wait(&status);
++ if (wpid == ServerPID)
++ xioerror(Dpy); // Server died, simulate IO error
+ }
+ if (WIFEXITED(status) && WEXITSTATUS(status)) {
+ LoginPanel->Message("Failed to execute login command");
+@@ -648,9 +640,6 @@
+
+
+ void App::Reboot() {
+- // Stop alarm clock
+- alarm(0);
+-
+ #ifdef USE_PAM
+ try{
+ pam.end();
+@@ -673,9 +662,6 @@
+
+
+ void App::Halt() {
+- // Stop alarm clock
+- alarm(0);
+-
+ #ifdef USE_PAM
+ try{
+ pam.end();
+@@ -761,6 +747,7 @@
+
+ StopServer();
+ RemoveLock();
++ while (waitpid(-1, NULL, WNOHANG) > 0); // Collects all dead childrens
+ Run();
+ }
+
+@@ -831,6 +818,7 @@
+
+ for(cycles = 0; cycles < ncycles; cycles++) {
+ if((Dpy = XOpenDisplay(DisplayName))) {
++ XSetIOErrorHandler(xioerror);
+ return 1;
+ } else {
+ if(!ServerTimeout(1, (char *) "X server to begin accepting connections"))
+@@ -913,9 +901,6 @@
+ ServerPID = -1;
+ break;
+ }
+- alarm(15);
+- pause();
+- alarm(0);
+
+ // Wait for server to start up
+ if(WaitForServer() == 0) {
+@@ -948,15 +933,12 @@
+
+
+ void App::StopServer() {
+- // Stop alars clock and ignore signals
+- alarm(0);
+ signal(SIGQUIT, SIG_IGN);
+ signal(SIGINT, SIG_IGN);
+ signal(SIGHUP, SIG_IGN);
+ signal(SIGPIPE, SIG_IGN);
+ signal(SIGTERM, SIG_DFL);
+ signal(SIGKILL, SIG_DFL);
+- signal(SIGALRM, SIG_DFL);
+
+ // Catch X error
+ XSetIOErrorHandler(IgnoreXIO);
+diff -ur slim-1.3.1.orig/app.h slim-1.3.1/app.h
+--- slim-1.3.1.orig/app.h 2008-09-26 02:54:15.000000000 +0200
++++ slim-1.3.1/app.h 2008-11-21 20:38:48.000000000 +0100
+@@ -34,6 +34,7 @@
+ ~App();
+ void Run();
+ int GetServerPID();
++ void RestartServer();
+ void StopServer();
+
+ // Lock functions
+@@ -48,7 +49,6 @@
+ void Console();
+ void Exit();
+ void KillAllClients(Bool top);
+- void RestartServer();
+ void ReadConfig();
+ void OpenLog();
+ void CloseLog();
Modified: extra-x86_64/slim.install
===================================================================
--- extra-x86_64/slim.install 2008-12-06 15:14:09 UTC (rev 20756)
+++ extra-x86_64/slim.install 2008-12-06 15:21:46 UTC (rev 20757)
@@ -1,33 +1,7 @@
-pre_install() {
- /bin/true
-}
-
post_install() {
- echo "==> Config file is at /etc/slim.conf"
- echo "==> Installed themes in /usr/share/slim/themes"
- echo "==> Add 'slim' to your DAEMONS in /etc/rc.conf"
- echo ""
- echo " If you want to use slim's console command as-is"
- echo " be sure to install xterm as well"
- /bin/true
-}
+ cat << _EOF
-pre_upgrade() {
- /bin/true
-}
+ Add slim to the DAEMONS array in /etc/rc.conf or update /etc/inittab.
-post_upgrade() {
- /bin/true
+_EOF
}
-
-pre_remove() {
- /bin/true
-}
-
-post_remove() {
- /bin/true
-}
-
-op=$1
-shift
-$op $*
Modified: extra-x86_64/slim.logrotate
===================================================================
--- extra-x86_64/slim.logrotate 2008-12-06 15:14:09 UTC (rev 20756)
+++ extra-x86_64/slim.logrotate 2008-12-06 15:21:46 UTC (rev 20757)
@@ -1,7 +1,7 @@
/var/log/slim.log {
compress
rotate 1
- size=+1024k
+ size 1024k
notifempty
missingok
copytruncate
Copied: slim/repos/extra-x86_64/slim.pam (from rev 20755, slim/trunk/slim.pam)
===================================================================
--- extra-x86_64/slim.pam (rev 0)
+++ extra-x86_64/slim.pam 2008-12-06 15:21:46 UTC (rev 20757)
@@ -0,0 +1,8 @@
+#%PAM-1.0
+auth requisite pam_nologin.so
+auth required pam_env.so
+auth required pam_unix.so
+account required pam_unix.so
+session required pam_limits.so
+session required pam_unix.so
+password required pam_unix.so
More information about the arch-commits
mailing list