summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2016-10-17 17:17:50 -0500
committerEric Bavier <bavier@member.fsf.org>2016-10-20 16:47:19 -0500
commit0b71c15c8086544236d3348caedeff3a84ab2948 (patch)
treea1616f4ffaf8a6ff3ca1ad0b238cdc4693bd8c7a /gnu
parent5d5cdb7ca40a7dee2047de90040f41ece83d7948 (diff)
downloadguix-0b71c15c8086544236d3348caedeff3a84ab2948.tar.gz
gnu: slim: Do not reset session after failed login.
* gnu/packages/patches/slim-reset.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/display-managers.scm (slim)[source]: Use it.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/display-managers.scm1
-rw-r--r--gnu/packages/patches/slim-reset.patch33
3 files changed, 35 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 76fd64d666..e5cc9f5aa0 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -829,6 +829,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/slim-session.patch			\
   %D%/packages/patches/slim-config.patch			\
   %D%/packages/patches/slim-sigusr1.patch			\
+  %D%/packages/patches/slim-reset.patch				\
   %D%/packages/patches/slock-CVE-2016-6866.patch		\
   %D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
   %D%/packages/patches/soprano-find-clucene.patch		\
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 1371bb5f39..5479bb529a 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -199,6 +199,7 @@ create smooth, animated user interfaces.")
 	     (sha256
 	      (base32 "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1"))
              (patches (search-patches "slim-config.patch"
+                                      "slim-reset.patch"
                                       "slim-session.patch"
                                       "slim-sigusr1.patch"))))
     (build-system cmake-build-system)
diff --git a/gnu/packages/patches/slim-reset.patch b/gnu/packages/patches/slim-reset.patch
new file mode 100644
index 0000000000..eebee6b7b5
--- /dev/null
+++ b/gnu/packages/patches/slim-reset.patch
@@ -0,0 +1,33 @@
+Do not reset chosen session and maintain the session-choser dialog after a
+failed login attempt.
+
+Patch by E. Bavier
+
+--- slim-1.3.6/panel.cpp.orig	1969-12-31 18:00:00.000000000 -0600
++++ slim-1.3.6/panel.cpp	2016-10-17 17:00:07.259649063 -0500
+@@ -260,13 +260,12 @@
+ }
+ 
+ void Panel::ClearPanel() {
+-	session_name = "";
+-    session_exec = "";
+ 	Reset();
+ 	XClearWindow(Dpy, Root);
+ 	XClearWindow(Dpy, Win);
+ 	Cursor(SHOW);
+ 	ShowText();
++	ShowSession();
+ 	XFlush(Dpy);
+ }
+ 
+@@ -760,9 +760,7 @@
+         pair<string,string> ses = cfg->nextSession();
+         session_name = ses.first;
+         session_exec = ses.second;
+-        if (session_name.size() > 0) {
+-                ShowSession();
+-        }
++        ShowSession();
+  }
+ 
+ /* Display session type on the screen */