diff options
author | Brian Bidulock | 2013-02-27 02:14:49 -0700 |
---|---|---|
committer | Brian Bidulock | 2015-06-10 16:08:02 -0600 |
commit | 712a8ebaafdf72fefc8f43692530ef6b00b7b149 (patch) | |
tree | 8789995df7f9e306c2e2fce60cbded2bb19dd6a9 | |
parent | 93208c1e0d38698349cec42e2abd59b54c4587b2 (diff) | |
download | aur-712a8ebaafdf72fefc8f43692530ef6b00b7b149.tar.gz |
version 1.3.5-1
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 54 | ||||
-rw-r--r-- | slim.logrotate | 9 | ||||
-rw-r--r-- | slim.pam | 7 | ||||
-rw-r--r-- | slim.patch | 204 |
5 files changed, 272 insertions, 30 deletions
@@ -1,27 +1,33 @@ pkgbase = slim-xdm pkgdesc = Desktop-independent graphical login manager for X11 with XDM support - pkgver = 1.3.6.30 + pkgver = 1.3.5 pkgrel = 1 - url = https://github.com/bbidulock/slim + url = http://slim.berlios.de/ arch = i686 arch = x86_64 license = GPL2 - makedepends = git makedepends = cmake makedepends = freeglut + depends = pam + depends = libxmu + depends = libpng depends = libjpeg depends = libxft - depends = libxrandr - depends = xorg-xauth - provides = slim=1.3.6.30 + provides = slim=1.3.5 conflicts = slim + replaces = slim + replaces = wdm-slim backup = etc/slim.conf + backup = etc/logrotate.d/slim backup = etc/pam.d/slim - backup = etc/pam.d/slim-greeter - backup = etc/pam.d/slim-autologin - backup = etc/slimlock.conf - source = slim-xdm::git://github.com/bbidulock/slim.git - sha256sums = SKIP + source = http://download.berlios.de/slim/slim-1.3.5.tar.gz + source = slim.pam + source = slim.logrotate + source = slim.patch + sha256sums = 818d209f51e2fa8d5b94ef75ce90a7415be48b45e796d66f8083a9532b655629 + sha256sums = b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4 + sha256sums = 5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def + sha256sums = 8fd56e10797bcbadcc94f1418138a2706298ad1c1e109cc5770ad2b9d6d82a66 pkgname = slim-xdm @@ -2,29 +2,35 @@ pkgname=slim-xdm _pkgname=slim -pkgver=1.3.6.30 +pkgver=1.3.5 pkgrel=1 pkgdesc="Desktop-independent graphical login manager for X11 with XDM support" arch=('i686' 'x86_64') -#url="http://slim.berlios.de/" -url="https://github.com/bbidulock/slim" +url="http://slim.berlios.de/" license=('GPL2') -depends=('libjpeg' 'libxft' 'libxrandr' 'xorg-xauth') +depends=('pam' 'libxmu' 'libpng' 'libjpeg' 'libxft') provides=("${_pkgname}=${pkgver}") conflicts=($_pkgname) -makedepends=('git' 'cmake' 'freeglut') -backup=('etc/slim.conf' 'etc/pam.d/slim' 'etc/pam.d/slim-greeter' - 'etc/pam.d/slim-autologin' 'etc/slimlock.conf') -source=($pkgname::git://github.com/bbidulock/$_pkgname.git) -sha256sums=('SKIP') - -pkgver() { - cd $pkgname - git describe --tags | sed 's|v||;s|-|.|g;s|[.]g[a-f0-9]*$||' -} +replaces=($_pkgname 'wdm-slim') +makedepends=('cmake' 'freeglut') +backup=('etc/slim.conf' 'etc/logrotate.d/slim' 'etc/pam.d/slim') +source=(http://download.berlios.de/$_pkgname/$_pkgname-$pkgver.tar.gz + slim.pam + slim.logrotate + slim.patch) +sha256sums=('818d209f51e2fa8d5b94ef75ce90a7415be48b45e796d66f8083a9532b655629' + 'b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4' + '5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def' + 'fb479f14033a4545d7bdda22e88b06afbbb1b9e08a7d49eff5b17830a73b625f') build() { - cd $pkgname + cd "$srcdir" + patch -p0 <slim.patch + cd "$srcdir/$_pkgname-$pkgver" + + # Fix installation path of slim.service + sed -i 's|usr/lib/systemd/system|/&|' CMakeLists.txt + cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ @@ -35,11 +41,21 @@ build() { } package() { - cd $pkgname + cd "$srcdir/$_pkgname-$pkgver" + make DESTDIR="$pkgdir" install - install -Dm644 pam.sample "$pkgdir/etc/pam.d/slim" - install -Dm644 pam-greeter.sample "$pkgdir/etc/pam.d/slim-greeter" - install -Dm644 pam-autologin.sample "$pkgdir/etc/pam.d/slim-autologin" + + install -Dm644 "$srcdir/slim.pam" "$pkgdir/etc/pam.d/slim" + install -Dm644 "$srcdir/slim.logrotate" "$pkgdir/etc/logrotate.d/slim" + + # Provide sane defaults + sed -i -e 's|#xserver_arguments.*|xserver_arguments -nolisten tcp vt07|' \ + -e 's|/var/run/slim.lock|/var/lock/slim.lock|' \ + "$pkgdir/etc/slim.conf" } # vim:set ts=2 sw=2 et: +sha256sums=('818d209f51e2fa8d5b94ef75ce90a7415be48b45e796d66f8083a9532b655629' + 'b9a77a614c451287b574c33d41e28b5b149c6d2464bdb3a5274799842bca51a4' + '5bf44748b5003f2332d8b268060c400120b9100d033fa9d35468670d827f6def' + '8fd56e10797bcbadcc94f1418138a2706298ad1c1e109cc5770ad2b9d6d82a66') diff --git a/slim.logrotate b/slim.logrotate new file mode 100644 index 000000000000..26ec3b0f4220 --- /dev/null +++ b/slim.logrotate @@ -0,0 +1,9 @@ +/var/log/slim.log { + compress + rotate 1 + size 1024k + notifempty + missingok + copytruncate + noolddir +} diff --git a/slim.pam b/slim.pam new file mode 100644 index 000000000000..1ab7fb0911fa --- /dev/null +++ b/slim.pam @@ -0,0 +1,7 @@ +#%PAM-1.0 + +auth include system-local-login +-auth optional pam_gnome_keyring.so +account include system-local-login +session include system-local-login +-session optional pam_gnome_keyring.so auto_start diff --git a/slim.patch b/slim.patch new file mode 100644 index 000000000000..abd4f2a5599e --- /dev/null +++ b/slim.patch @@ -0,0 +1,204 @@ +diff -pur slim-1.3.5.orig/app.cpp slim-1.3.5/app.cpp +--- slim-1.3.5.orig/app.cpp 2012-12-31 06:03:42.000000000 -0700 ++++ slim-1.3.5/app.cpp 2013-02-27 02:03:23.000000000 -0700 +@@ -138,6 +138,7 @@ App::App(int argc, char** argv) + daemonmode = false; + force_nodaemon = false; + firstlogin = true; ++ existing_server = false; + Dpy = NULL; + + /* Parse command line +@@ -188,13 +189,12 @@ App::App(int argc, char** argv) + void App::Run() { + DisplayName = DISPLAY; + +-#ifdef XNEST_DEBUG +- char* p = getenv("DISPLAY"); ++ char *p = getenv("DISPLAY"); + if (p && p[0]) { + DisplayName = p; +- cout << "Using display name " << DisplayName << endl; ++ logStream << "Using display name " << DisplayName << endl; ++ existing_server = true; + } +-#endif + + /* Read configuration and theme */ + cfg = new Cfg; +@@ -249,7 +249,7 @@ void App::Run() { + } + } + +- if (!testing) { ++ if (!testing && !existing_server) { + /* Create lock file */ + LoginApp->GetLock(); + +@@ -263,7 +263,6 @@ void App::Run() { + signal(SIGPIPE, CatchSignal); + signal(SIGUSR1, User1Signal); + +-#ifndef XNEST_DEBUG + if (!force_nodaemon && cfg->getOption("daemon") == "yes") { + daemonmode = true; + } +@@ -283,7 +282,6 @@ void App::Run() { + + CreateServerAuth(); + StartServer(); +-#endif + + } + +@@ -291,7 +289,7 @@ void App::Run() { + if((Dpy = XOpenDisplay(DisplayName)) == 0) { + logStream << APPNAME << ": could not open display '" + << DisplayName << "'" << endl; +- if (!testing) StopServer(); ++ if (!testing && !existing_server) StopServer(); + exit(ERR_EXIT); + } + +@@ -632,9 +630,9 @@ void App::Login() { + _exit(OK_EXIT); + } + +-#ifndef XNEST_DEBUG +- CloseLog(); +-#endif ++ if (!existing_server) { ++ CloseLog(); ++ } + + /* Wait until user is logging out (login process terminates) */ + pid_t wpid = -1; +@@ -686,11 +684,11 @@ void App::Login() { + + HideCursor(); + +-#ifndef XNEST_DEBUG +- /* Re-activate log file */ +- OpenLog(); +- RestartServer(); +-#endif ++ if (!existing_server) { ++ /* Re-activate log file */ ++ OpenLog(); ++ RestartServer(); ++ } + + } + +@@ -709,8 +707,10 @@ void App::Reboot() { + sleep(3); + + /* Stop server and reboot */ +- StopServer(); +- RemoveLock(); ++ if (!existing_server) { ++ StopServer(); ++ RemoveLock(); ++ } + system(cfg->getOption("reboot_cmd").c_str()); + exit(OK_EXIT); + } +@@ -731,8 +731,10 @@ void App::Halt() { + sleep(3); + + /* Stop server and halt */ +- StopServer(); +- RemoveLock(); ++ if (!existing_server) { ++ StopServer(); ++ RemoveLock(); ++ } + system(cfg->getOption("halt_cmd").c_str()); + exit(OK_EXIT); + } +@@ -778,8 +780,10 @@ void App::Exit() { + XCloseDisplay(Dpy); + } else { + delete LoginPanel; +- StopServer(); +- RemoveLock(); ++ if (!existing_server) { ++ StopServer(); ++ RemoveLock(); ++ } + } + delete cfg; + exit(OK_EXIT); +@@ -799,8 +803,10 @@ void App::RestartServer() { + }; + #endif + +- StopServer(); +- RemoveLock(); ++ if (!existing_server) { ++ StopServer(); ++ RemoveLock(); ++ } + while (waitpid(-1, NULL, WNOHANG) > 0); /* Collects all dead childrens */ + Run(); + } +Only in slim-1.3.5: .app.cpp.swp +diff -pur slim-1.3.5.orig/app.h slim-1.3.5/app.h +--- slim-1.3.5.orig/app.h 2012-12-31 06:03:42.000000000 -0700 ++++ slim-1.3.5/app.h 2013-02-26 18:34:43.000000000 -0700 +@@ -104,6 +104,7 @@ private: + bool firstlogin; + bool daemonmode; + bool force_nodaemon; ++ bool existing_server; + /* For testing themes */ + char *testtheme; + bool testing; +Only in slim-1.3.5: .image.cpp.swp +Only in slim-1.3.5: .log.cpp.swp +diff -pur slim-1.3.5.orig/log.h slim-1.3.5/log.h +--- slim-1.3.5.orig/log.h 2012-12-31 06:03:42.000000000 -0700 ++++ slim-1.3.5/log.h 2013-02-27 02:13:47.000000000 -0700 +@@ -9,6 +9,7 @@ + #endif + #include "const.h" + #include <fstream> ++#include <iostream> + + using namespace std; + +@@ -22,17 +23,29 @@ public: + + template<typename Type> + LogUnit & operator<<(const Type & text) { +- logFile << text; logFile.flush(); ++ if (logFile.is_open()) { ++ logFile << text; logFile.flush(); ++ } else { ++ cerr << text; ++ } + return *this; + } + + LogUnit & operator<<(ostream & (*fp)(ostream&)) { +- logFile << fp; logFile.flush(); ++ if (logFile.is_open()) { ++ logFile << fp; logFile.flush(); ++ } else { ++ cerr << fp; ++ } + return *this; + } + + LogUnit & operator<<(ios_base & (*fp)(ios_base&)) { +- logFile << fp; logFile.flush(); ++ if (logFile.is_open()) { ++ logFile << fp; logFile.flush(); ++ } else { ++ cerr << fp; ++ } + return *this; + } + } logStream; +Only in slim-1.3.5: .panel.cpp.swp +Only in slim-1.3.5: .switchuser.cpp.swp |