Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=afdf122d60856b4cd115f07cccb5fdd81e15fd00
commit afdf122d60856b4cd115f07cccb5fdd81e15fd00 Author: Devil505 <[email protected]> Date: Tue Apr 17 11:24:49 2012 +0200 slim-1.3.3-1-i686 * version bump diff --git a/source/xfce4/slim/15287-fix-pam-authentication-with-pam_unix2.patch b/source/xfce4/slim/15287-fix-pam-authentication-with-pam_unix2.patch new file mode 100644 index 0000000..2163d20 --- /dev/null +++ b/source/xfce4/slim/15287-fix-pam-authentication-with-pam_unix2.patch @@ -0,0 +1,89 @@ +diff -rc 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 2009-02-17 19:50:06.000000000 +0100 +*************** +*** 41,48 **** + Panel* panel = *static_cast<Panel**>(appdata_ptr); + int result = PAM_SUCCESS; + for (int i=0; i<num_msg; i++){ +! resp[i]->resp=0; +! resp[i]->resp_retcode=0; + switch(msg[i]->msg_style){ + case PAM_PROMPT_ECHO_ON: + // We assume PAM is asking for the username +--- 41,48 ---- + Panel* panel = *static_cast<Panel**>(appdata_ptr); + int result = PAM_SUCCESS; + for (int i=0; i<num_msg; i++){ +! (*resp)[i].resp=0; +! (*resp)[i].resp_retcode=0; + switch(msg[i]->msg_style){ + case PAM_PROMPT_ECHO_ON: + // We assume PAM is asking for the username +*************** +*** 51,63 **** + case Panel::Suspend: + case Panel::Halt: + case Panel::Reboot: +! resp[i]->resp=strdup("root"); + break; + + case Panel::Console: + case Panel::Exit: + case Panel::Login: +! resp[i]->resp=strdup(panel->GetName().c_str()); + break; + } + break; +--- 51,63 ---- + case Panel::Suspend: + case Panel::Halt: + case Panel::Reboot: +! (*resp)[i].resp=strdup("root"); + break; + + case Panel::Console: + case Panel::Exit: + case Panel::Login: +! (*resp)[i].resp=strdup(panel->GetName().c_str()); + break; + } + break; +*************** +*** 73,79 **** + + default: + panel->EventHandler(Panel::Get_Passwd); +! resp[i]->resp=strdup(panel->GetPasswd().c_str()); + break; + } + break; +--- 73,79 ---- + + default: + panel->EventHandler(Panel::Get_Passwd); +! (*resp)[i].resp=strdup(panel->GetPasswd().c_str()); + break; + } + break; +*************** +*** 89,97 **** + } + if (result!=PAM_SUCCESS){ + for (int i=0; i<num_msg; i++){ +! if (resp[i]->resp==0) continue; +! free(resp[i]->resp); +! resp[i]->resp=0; + }; + free(*resp); + *resp=0; +--- 89,97 ---- + } + if (result!=PAM_SUCCESS){ + for (int i=0; i<num_msg; i++){ +! if ((*resp)[i].resp==0) continue; +! free((*resp)[i].resp); +! (*resp)[i].resp=0; + }; + free(*resp); + *resp=0; diff --git a/source/xfce4/slim/405579-fix-numlock.patch b/source/xfce4/slim/405579-fix-numlock.patch new file mode 100644 index 0000000..1e6ea7e --- /dev/null +++ b/source/xfce4/slim/405579-fix-numlock.patch @@ -0,0 +1,16 @@ +--- numlock.cpp.orig 2012-03-04 16:21:34.000000000 +0100 ++++ numlock.cpp 2012-03-04 16:24:49.000000000 +0100 +@@ -68,9 +68,11 @@ + return; + + if( flag == true ) +- XkbLockModifiers ( dpy, XkbUseCoreKbd, mask, 0); +- else + XkbLockModifiers ( dpy, XkbUseCoreKbd, mask, mask); ++ else ++ XkbLockModifiers ( dpy, XkbUseCoreKbd, mask, 0); ++ ++ XSync( dpy, false ); + } + + void NumLock::setOn(Display *dpy) { diff --git a/source/xfce4/slim/FrugalBuild b/source/xfce4/slim/FrugalBuild index 8201f34..3235eea 100644 --- a/source/xfce4/slim/FrugalBuild +++ b/source/xfce4/slim/FrugalBuild @@ -2,53 +2,44 @@ # Maintainer: Priyank Gosalia <[email protected]> pkgname=slim -pkgver=1.3.2 -pkgrel=8 +pkgver=1.3.3 +pkgrel=1 pkgdesc="SLiM is a lightweight, Desktop-independent graphical login manager for X11." -depends=('libxml2>=2.7.8' 'libpng' 'libjpeg') -makedepends=('libx11>=1.2.2-1' 'libxft' 'libxmu' 'libpng' 'libjpeg' 'pam') +depends=('libxml2>=2.7.8' 'libpng' 'libjpeg' 'consolekit') +makedepends=('libx11>=1.2.2-1' 'libxft' 'libxmu' 'pam') rodepends=('xorg-server>=1.6.1-8') groups=('xfce4') archs=('i686' 'x86_64') backup=('etc/slim.conf') -Finclude berlios +Finclude berlios cmake up2date="Flasttar http://slim.berlios.de/" source=(${source[@]} \ slim.conf \ slim.install \ - slim-1.3.2-cflags.patch \ pam.d \ logrotate \ - ptr_pam.patch \ - no-host.patch \ - restart.patch \ - sigterm.patch \ - session-name.patch \ - tty-slowness.patch \ + slim-tmpfiles.conf \ + 15287-fix-pam-authentication-with-pam_unix2.patch \ + 405579-fix-numlock.patch \ http://ftp.frugalware.org/pub/other/artwork/slim-theme/frugalware-1.6.tar.bz2) -sha1sums=('e421d5487732c8317f8f591906661e014b036358' \ +sha1sums=('791635fc13ec859ed3be8bf1eb2ce0ba2bb3f155' \ 'b172c8c55c3eba0b0052ff6e34e3dac7d9ff798f' \ 'a17849f628f4f74cf1bd48eea21a144f2f1a274d' \ - '55bba5f18fde0f93114c6e8428c48706c05dd0ff' \ - '0b29c83e7b8da019a0f6f2dbcd1ead0770919384' \ + '93c26670a5046602c9d0e91960c463f11a383281' \ 'b969cc902c1d9915a5609141a652c77b2732407b' \ - '640668c984a13593a1bfba8d3b503c005d5f401e' \ - 'b86eddd083fb9f6259e46c735f55ebe76c655bd3' \ - '2d526bc0c498bf307ee50e2d22b4f53ffa0c4435' \ - '0b35048723c527fb824c5e0f9b9064f751871785' \ - '4d0328a707fbc8c5155d6ebf4623ba4f50dd66ea' \ - '213fefe8533c845ea8c40585b6a8097820d5e5d2' \ + 'cdca8b856049c2e6baeca7ac45b2e5573e8ad6e2' \ + 'e17c582fe0cc1d2a07e51d410db2d61c11aba4c6' \ + 'd043c6870bd83df554f8a0304d34348113ebbed1' \ '644712d038ef637ceab7e158e3f8fae98561bf31') build() { Fcd - Fpatchall - make USE_PAM=1 || Fdie - Fmakeinstall + CMake_build -DUSE_PAM=yes -DUSE_CONSOLEKIT=yes Finstall 644 pam.d etc/pam.d/slim Finstall 644 logrotate etc/logrotate.d/slim + Finstall 644 slim-tmpfiles.conf /etc/tmpfiles.d/slim.conf Fcpr frugalware /usr/share/slim/themes/frugalware Fcpr slim.conf /etc/slim.conf } diff --git a/source/xfce4/slim/no-host.patch b/source/xfce4/slim/no-host.patch deleted file mode 100644 index c40f25b..0000000 --- a/source/xfce4/slim/no-host.patch +++ /dev/null @@ -1,29 +0,0 @@ -Datum: Sun, 30 Jan 2011 12:49:00 +0200 -Von: Samuli Suominen <[email protected]> -An: [email protected], [email protected], [email protected] -Betreff: SLIM and ConsoleKit 0.4.2 (and up) - -People have been coming to #xfce after Arch's ConsoleKit 0.4.3 upgrade -to ask for help why Suspend / Hibernate / and such doesn't work. - -It's because SLIM is using pam_ck_connector.so and SLIM sets Host to localhost -and makes pam_ck_connector.so believe it's actually a *remote host* called -localhost and will refuse access. - -http://bugs.gentoo.org/346037 -https://developer.berlios.de/bugs/?func=detailbug&bug_id=17757&group_id=2663 -http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-misc/slim/files/346037-stop_setting_host_for_pam_ck_connector_so.patch?view=log - - -diff -aur old/app.cpp new/app.cpp ---- old/app.cpp 2011-01-30 12:39:34.033337944 +0100 -+++ new/app.cpp 2011-01-30 12:40:25.843337943 +0100 -@@ -228,8 +228,6 @@ - pam.start("slim"); - pam.set_item(PAM::Authenticator::TTY, DisplayName); - pam.set_item(PAM::Authenticator::Requestor, "root"); -- pam.set_item(PAM::Authenticator::Host, "localhost"); -- - } - catch(PAM::Exception& e){ - cerr << APPNAME << ": " << e << endl; diff --git a/source/xfce4/slim/pam.d b/source/xfce4/slim/pam.d index fb6f7e3..ea5284d 100644 --- a/source/xfce4/slim/pam.d +++ b/source/xfce4/slim/pam.d @@ -2,8 +2,10 @@ auth requisite pam_nologin.so auth required pam_env.so auth required pam_unix.so +auth optional pam_gnome_keyring.so account required pam_unix.so -password required pam_unix.so session required pam_limits.so session required pam_unix.so +session optional pam_gnome_keyring.so auto_start +password required pam_unix.so session optional pam_ck_connector.so diff --git a/source/xfce4/slim/ptr_pam.patch b/source/xfce4/slim/ptr_pam.patch deleted file mode 100644 index 3a3fbcd..0000000 --- a/source/xfce4/slim/ptr_pam.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff -aur old/app.cpp new/app.cpp ---- old/app.cpp 2010-07-08 07:04:10.000000000 +0200 -+++ new/app.cpp 2011-05-01 18:30:52.933844872 +0200 -@@ -43,8 +43,8 @@ - Panel* panel = *static_cast<Panel**>(appdata_ptr); - int result = PAM_SUCCESS; - for (int i=0; i<num_msg; i++){ -- resp[i]->resp=0; -- resp[i]->resp_retcode=0; -+ (*resp)[i].resp=0; -+ (*resp)[i].resp_retcode=0; - switch(msg[i]->msg_style){ - case PAM_PROMPT_ECHO_ON: - // We assume PAM is asking for the username -@@ -53,13 +53,13 @@ - case Panel::Suspend: - case Panel::Halt: - case Panel::Reboot: -- resp[i]->resp=strdup("root"); -+ (*resp)[i].resp=strdup("root"); - break; - - case Panel::Console: - case Panel::Exit: - case Panel::Login: -- resp[i]->resp=strdup(panel->GetName().c_str()); -+ (*resp)[i].resp=strdup(panel->GetName().c_str()); - break; - } - break; -@@ -75,7 +75,7 @@ - - default: - panel->EventHandler(Panel::Get_Passwd); -- resp[i]->resp=strdup(panel->GetPasswd().c_str()); -+ (*resp)[i].resp=strdup(panel->GetPasswd().c_str()); - break; - } - break; -@@ -91,9 +91,9 @@ - } - if (result!=PAM_SUCCESS){ - for (int i=0; i<num_msg; i++){ -- if (resp[i]->resp==0) continue; -- free(resp[i]->resp); -- resp[i]->resp=0; -+ if ((*resp)[i].resp==0) continue; -+ free((*resp)[i].resp); -+ (*resp)[i].resp=0; - }; - free(*resp); - *resp=0; diff --git a/source/xfce4/slim/restart.patch b/source/xfce4/slim/restart.patch deleted file mode 100644 index 4e50490..0000000 --- a/source/xfce4/slim/restart.patch +++ /dev/null @@ -1,144 +0,0 @@ -http://developer.berlios.de/patch/?func=detailpatch&patch_id=2378&group_id=2663 - - -diff -aur slim-1.3.2.b/app.cpp slim-1.3.2.c/app.cpp ---- slim-1.3.2.b/app.cpp 2010-08-21 15:10:48.579631179 +0200 -+++ slim-1.3.2.c/app.cpp 2010-08-21 15:11:03.946389843 +0200 -@@ -104,6 +104,11 @@ - - extern App* LoginApp; - -+int xioerror(Display *disp) { -+ LoginApp->RestartServer(); -+ return 0; -+} -+ - void CatchSignal(int sig) { - cerr << APPNAME << ": unexpected signal " << sig << endl; - -@@ -114,19 +119,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); - } -@@ -277,7 +269,6 @@ - signal(SIGHUP, CatchSignal); - signal(SIGPIPE, CatchSignal); - signal(SIGUSR1, User1Signal); -- signal(SIGALRM, AlarmSignal); - - #ifndef XNEST_DEBUG - if (!force_nodaemon && cfg->getOption("daemon") == "yes") { -@@ -298,7 +289,6 @@ - - CreateServerAuth(); - StartServer(); -- alarm(2); - #endif - - } -@@ -614,6 +604,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"); -@@ -659,9 +651,6 @@ - - - void App::Reboot() { -- // Stop alarm clock -- alarm(0); -- - #ifdef USE_PAM - try{ - pam.end(); -@@ -684,9 +673,6 @@ - - - void App::Halt() { -- // Stop alarm clock -- alarm(0); -- - #ifdef USE_PAM - try{ - pam.end(); -@@ -772,6 +758,7 @@ - - StopServer(); - RemoveLock(); -+ while (waitpid(-1, NULL, WNOHANG) > 0); // Collects all dead childrens - Run(); - } - -@@ -842,6 +829,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")) -@@ -926,9 +914,6 @@ - ServerPID = -1; - break; - } -- alarm(15); -- pause(); -- alarm(0); - - // Wait for server to start up - if(WaitForServer() == 0) { -@@ -963,15 +948,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 -aur slim-1.3.2.b/app.h slim-1.3.2.c/app.h ---- slim-1.3.2.b/app.h 2010-08-21 15:10:40.499582804 +0200 -+++ slim-1.3.2.c/app.h 2010-08-21 15:11:03.946389843 +0200 -@@ -34,6 +34,7 @@ - ~App(); - void Run(); - int GetServerPID(); -+ void RestartServer(); - void StopServer(); - - bool serverStarted; -@@ -49,7 +50,6 @@ - void Console(); - void Exit(); - void KillAllClients(Bool top); -- void RestartServer(); - void ReadConfig(); - void OpenLog(); - void CloseLog(); diff --git a/source/xfce4/slim/session-name.patch b/source/xfce4/slim/session-name.patch deleted file mode 100644 index 64b0e98..0000000 --- a/source/xfce4/slim/session-name.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur slim-1.3.2.old/panel.cpp slim-1.3.2.new/panel.cpp ---- slim-1.3.2.old/panel.cpp 2010-10-24 06:01:15.117000019 +0000 -+++ slim-1.3.2.new/panel.cpp 2010-10-24 17:26:30.987999967 +0000 -@@ -23,7 +23,7 @@ - Root = root; - cfg = config; - -- session = ""; -+ session = cfg->nextSession(session); - - // Init GC - XGCValues gcv; -@@ -188,7 +188,7 @@ - } - - void Panel::ClearPanel() { -- session = ""; -+ session = cfg->nextSession(session); - Reset(); - XClearWindow(Dpy, Root); - XClearWindow(Dpy, Win); diff --git a/source/xfce4/slim/sigterm.patch b/source/xfce4/slim/sigterm.patch deleted file mode 100644 index fbaeb71..0000000 --- a/source/xfce4/slim/sigterm.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -aur old/panel.cpp new/panel.cpp ---- old/panel.cpp 2011-04-29 15:15:57.210134850 +0200 -+++ new/panel.cpp 2011-04-29 15:16:17.260285407 +0200 -@@ -10,6 +10,7 @@ - */ - - #include <sstream> -+#include <poll.h> - #include "panel.h" - - using namespace std; -@@ -288,16 +289,24 @@ - field=curfield; - bool loop = true; - OnExpose(); -+ -+ struct pollfd x11_pfd = {0}; -+ x11_pfd.fd = ConnectionNumber(Dpy); -+ x11_pfd.events = POLLIN; - while(loop) { -- XNextEvent(Dpy, &event); -- switch(event.type) { -- case Expose: -- OnExpose(); -- break; -- -- case KeyPress: -- loop=OnKeyPress(event); -- break; -+ if(XPending(Dpy) || poll(&x11_pfd, 1, -1) > 0) { -+ while(XPending(Dpy)) { -+ XNextEvent(Dpy, &event); -+ switch(event.type) { -+ case Expose: -+ OnExpose(); -+ break; -+ -+ case KeyPress: -+ loop=OnKeyPress(event); -+ break; -+ } -+ } - } - } - diff --git a/source/xfce4/slim/slim-1.3.2-cflags.patch b/source/xfce4/slim/slim-1.3.2-cflags.patch deleted file mode 100644 index ae0833b..0000000 --- a/source/xfce4/slim/slim-1.3.2-cflags.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -Naur slim-1.3.2/Makefile slim-1.3.2/Makefile ---- slim-1.3.2/Makefile 2010-07-08 07:04:10.000000000 +0200 -+++ slim-1.3.2/Makefile 2010-09-06 23:54:52.001000000 +0200 -@@ -5,9 +5,9 @@ - ####################################################### - CXX=/usr/bin/g++ - CC=/usr/bin/gcc --CFLAGS=-Wall -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libpng12 -I/usr/include -+CFLAGS+=-Wall -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libpng14 -I/usr/include - CXXFLAGS=$(CFLAGS) --LDFLAGS=-lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng12 -lz -lm -lcrypt -lXmu -lpng -ljpeg -lrt -+LDFLAGS+=-lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng14 -lz -lm -lcrypt -lXmu -lpng -ljpeg -lrt - CUSTOM=-DHAVE_SHADOW - ifdef USE_PAM - LDFLAGS+= -lpam diff --git a/source/xfce4/slim/slim-tmpfiles.conf b/source/xfce4/slim/slim-tmpfiles.conf new file mode 100644 index 0000000..c430efa --- /dev/null +++ b/source/xfce4/slim/slim-tmpfiles.conf @@ -0,0 +1 @@ +d /var/run/slim \ No newline at end of file diff --git a/source/xfce4/slim/tty-slowness.patch b/source/xfce4/slim/tty-slowness.patch deleted file mode 100644 index c590fbe..0000000 --- a/source/xfce4/slim/tty-slowness.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -aur slim-1.3.2.a/app.cpp slim-1.3.2.b/app.cpp ---- slim-1.3.2.a/app.cpp 2010-08-21 15:10:13.702755711 +0200 -+++ slim-1.3.2.b/app.cpp 2010-08-21 15:10:48.579631179 +0200 -@@ -280,21 +280,22 @@ - signal(SIGALRM, AlarmSignal); - - #ifndef XNEST_DEBUG -- OpenLog(); -- - if (!force_nodaemon && cfg->getOption("daemon") == "yes") { - daemonmode = true; - } - - // Daemonize - if (daemonmode) { -- if (daemon(0, 1) == -1) { -+ if (daemon(0, 0) == -1) { - cerr << APPNAME << ": " << strerror(errno) << endl; - exit(ERR_EXIT); - } -- UpdatePid(); - } - -+ OpenLog(); -+ -+ if (daemonmode) UpdatePid(); -+ - CreateServerAuth(); - StartServer(); - alarm(2); _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
