summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Bidulock2013-02-27 02:14:49 -0700
committerBrian Bidulock2015-06-10 16:08:02 -0600
commit712a8ebaafdf72fefc8f43692530ef6b00b7b149 (patch)
tree8789995df7f9e306c2e2fce60cbded2bb19dd6a9
parent93208c1e0d38698349cec42e2abd59b54c4587b2 (diff)
downloadaur-712a8ebaafdf72fefc8f43692530ef6b00b7b149.tar.gz
version 1.3.5-1
-rw-r--r--.SRCINFO28
-rw-r--r--PKGBUILD54
-rw-r--r--slim.logrotate9
-rw-r--r--slim.pam7
-rw-r--r--slim.patch204
5 files changed, 272 insertions, 30 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 53a9aefbd6b2..fe35e2dc6968 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -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
diff --git a/PKGBUILD b/PKGBUILD
index 7f3921ae0e34..3e14383b77e4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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