diff --git a/x11/slim/Makefile b/x11/slim/Makefile index 79b8019f75a..d53d8858c90 100644 --- a/x11/slim/Makefile +++ b/x11/slim/Makefile @@ -1,8 +1,8 @@ -# $OpenBSD: Makefile,v 1.22 2013/03/11 11:46:15 espie Exp $ +# $OpenBSD: Makefile,v 1.23 2013/04/18 12:00:45 gonzalo Exp $ COMMENT= simple login manager -DISTNAME= slim-1.3.4 +DISTNAME= slim-1.3.5 CATEGORIES= x11 MAINTAINER = Landry Breuil @@ -19,8 +19,8 @@ LIB_DEPENDS= graphics/jpeg \ x11/dbus \ graphics/png -WANTLIB= X11 Xft Xmu Xrender fontconfig c m stdc++ z freetype jpeg png -WANTLIB += pthread dbus-1 ck-connector +WANTLIB += X11 Xft Xmu Xrender c ck-connector dbus-1 fontconfig +WANTLIB += freetype jpeg m png pthread stdc++ z CONFIGURE_ARGS= -DUSE_CONSOLEKIT="yes" diff --git a/x11/slim/distinfo b/x11/slim/distinfo index 37813596406..fe9f0e8f0be 100644 --- a/x11/slim/distinfo +++ b/x11/slim/distinfo @@ -1,2 +1,2 @@ -SHA256 (slim-1.3.4.tar.gz) = FVwmRgyYufCSViQCi0JUr8DeT9ozMA86xFYGssXL1QE= -SIZE (slim-1.3.4.tar.gz) = 227197 +SHA256 (slim-1.3.5.tar.gz) = gY0gn1Hi+o1blO91zpCnQVvki0XnltZvgIOpUytlVik= +SIZE (slim-1.3.5.tar.gz) = 226413 diff --git a/x11/slim/patches/patch-CMakeLists_txt b/x11/slim/patches/patch-CMakeLists_txt index f1cb8066794..29a572175c2 100644 --- a/x11/slim/patches/patch-CMakeLists_txt +++ b/x11/slim/patches/patch-CMakeLists_txt @@ -1,6 +1,6 @@ -$OpenBSD: patch-CMakeLists_txt,v 1.1 2012/09/02 09:22:59 landry Exp $ ---- CMakeLists.txt.orig Tue Jun 26 10:20:14 2012 -+++ CMakeLists.txt Sat Sep 1 20:39:34 2012 +$OpenBSD: patch-CMakeLists_txt,v 1.2 2013/04/18 12:00:45 gonzalo Exp $ +--- CMakeLists.txt.orig Mon Dec 31 10:03:42 2012 ++++ CMakeLists.txt Wed Apr 17 11:38:56 2013 @@ -24,7 +24,7 @@ set(SLIM_VERSION "${SLIM_VERSION_MAJOR}.${SLIM_VERSION set(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH "Installation Directory") set(PKGDATADIR "${CMAKE_INSTALL_PREFIX}/share/slim") @@ -28,11 +28,14 @@ $OpenBSD: patch-CMakeLists_txt,v 1.1 2012/09/02 09:22:59 landry Exp $ ${X11_X11_LIB} ${X11_Xft_LIB} ${X11_Xrender_LIB} -@@ -169,6 +165,6 @@ install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bi +@@ -169,8 +165,8 @@ install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bi # man file install(FILES slim.1 DESTINATION ${MANDIR}/man1/) # configure -install(FILES slim.conf DESTINATION ${SYSCONFDIR}) +install(FILES slim.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/share/examples/slim/) + # systemd service file +-install(FILES slim.service DESTINATION usr/lib/systemd/system) ++#install(FILES slim.service DESTINATION usr/lib/systemd/system) # themes directory subdirs(themes) diff --git a/x11/slim/patches/patch-Ck_cpp b/x11/slim/patches/patch-Ck_cpp index ddc9c4aaca4..53fd98b1365 100644 --- a/x11/slim/patches/patch-Ck_cpp +++ b/x11/slim/patches/patch-Ck_cpp @@ -1,20 +1,20 @@ -$OpenBSD: patch-Ck_cpp,v 1.1 2012/09/02 09:22:59 landry Exp $ +$OpenBSD: patch-Ck_cpp,v 1.2 2013/04/18 12:00:45 gonzalo Exp $ Keep track of the successful consolekit session opening ---- Ck.cpp.orig Tue Jun 26 10:20:14 2012 -+++ Ck.cpp Sat Sep 1 23:06:17 2012 +--- Ck.cpp.orig Mon Dec 31 10:03:42 2012 ++++ Ck.cpp Mon Apr 15 12:52:25 2013 @@ -101,6 +101,7 @@ namespace Ck { void Session::open_session(const std::string &display, uid_t uid) { -+ session = false; - ckc = ck_connector_new(); ++ session = false; + ckc = ck_connector_new(); - if(!ckc) + if(!ckc) @@ -113,6 +114,7 @@ namespace Ck { - throw Exception(__func__, "cannot open ConsoleKit session: OOM, DBus system bus " - " not available or insufficient privileges"); - } -+ session = true; + throw Exception(__func__, "cannot open ConsoleKit session: OOM, DBus system bus " + " not available or insufficient privileges"); + } ++ session = true; } const char * Session::get_xdg_session_cookie() diff --git a/x11/slim/patches/patch-Ck_h b/x11/slim/patches/patch-Ck_h index c7cc20db0d2..4ea2b49fc50 100644 --- a/x11/slim/patches/patch-Ck_h +++ b/x11/slim/patches/patch-Ck_h @@ -1,19 +1,18 @@ -$OpenBSD: patch-Ck_h,v 1.1 2012/09/02 09:22:59 landry Exp $ +$OpenBSD: patch-Ck_h,v 1.2 2013/04/18 12:00:45 gonzalo Exp $ Add a boolean to track the consolekit session success ---- Ck.h.orig Tue Jun 26 10:20:14 2012 -+++ Ck.h Sat Sep 1 23:06:38 2012 -@@ -27,12 +27,13 @@ namespace Ck { - private: - CkConnector *ckc; - DBusError error; -- -+ bool session; - const char * get_x11_device(const std::string &display); - dbus_bool_t ck_connector_open_graphic_session(const std::string &display, - uid_t uid); - public: - const char * get_xdg_session_cookie(); -+ bool has_session() {return session;} - void open_session(const std::string &display, uid_t uid); - void close_session(); +--- Ck.h.orig Mon Dec 31 10:03:42 2012 ++++ Ck.h Mon Apr 15 12:50:24 2013 +@@ -28,11 +28,13 @@ namespace Ck { + CkConnector *ckc; + DBusError error; + ++ bool session; + const char * get_x11_device(const std::string &display); + dbus_bool_t ck_connector_open_graphic_session(const std::string &display, + uid_t uid); + public: + const char * get_xdg_session_cookie(); ++ bool has_session() {return session;} + void open_session(const std::string &display, uid_t uid); + void close_session(); diff --git a/x11/slim/patches/patch-app_cpp b/x11/slim/patches/patch-app_cpp index 123bc79983d..cb5c1c69550 100644 --- a/x11/slim/patches/patch-app_cpp +++ b/x11/slim/patches/patch-app_cpp @@ -1,10 +1,10 @@ -$OpenBSD: patch-app_cpp,v 1.4 2012/09/02 09:22:59 landry Exp $ +$OpenBSD: patch-app_cpp,v 1.5 2013/04/18 12:00:45 gonzalo Exp $ add support for bsd_auth/auth_userokay on OpenBSD only call the consolekit stuff if the ck session is okay don't exit if the ck session fails to start ---- app.cpp.orig Tue Jun 26 10:20:14 2012 -+++ app.cpp Sat Sep 1 23:04:49 2012 -@@ -32,6 +32,11 @@ +--- app.cpp.orig Mon Dec 31 10:03:42 2012 ++++ app.cpp Wed Apr 17 13:09:39 2013 +@@ -30,6 +30,11 @@ #include #endif @@ -16,9 +16,9 @@ don't exit if the ck session fails to start using namespace std; #ifdef USE_PAM -@@ -468,6 +473,12 @@ bool App::AuthenticateUser(bool focuspass){ - if(pw == 0) - return false; +@@ -462,6 +467,12 @@ bool App::AuthenticateUser(bool focuspass){ + if(pw == 0) + return false; +#ifdef __OpenBSD__ + char * pass = strdup(LoginPanel->GetPasswd().c_str()); @@ -27,45 +27,45 @@ don't exit if the ck session fails to start + return ret; +#endif #ifdef HAVE_SHADOW - struct spwd *sp = getspnam(pw->pw_name); - endspent(); -@@ -572,7 +583,6 @@ void App::Login() { - } - catch(Ck::Exception &e) { - logStream << APPNAME << ": " << e << endl; -- exit(ERR_EXIT); - } + struct spwd *sp = getspnam(pw->pw_name); + endspent(); +@@ -565,7 +576,6 @@ void App::Login() { + } + catch(Ck::Exception &e) { + logStream << APPNAME << ": " << e << endl; +- exit(ERR_EXIT); + } #endif -@@ -585,6 +595,7 @@ void App::Login() { - char** child_env = pam.getenvlist(); +@@ -578,6 +588,7 @@ void App::Login() { + char** child_env = pam.getenvlist(); # ifdef USE_CONSOLEKIT -+ if(ck.has_session()) { - char** old_env = child_env; ++ if(ck.has_session()) { + char** old_env = child_env; - // Grow the copy of the environment for the session cookie -@@ -597,6 +608,7 @@ void App::Login() { - memcpy(child_env, old_env, sizeof(char*)*n); - child_env[n - 1] = StrConcat("XDG_SESSION_COOKIE=", ck.get_xdg_session_cookie()); - child_env[n] = NULL; -+ } + /* Grow the copy of the environment for the session cookie */ +@@ -590,6 +601,7 @@ void App::Login() { + memcpy(child_env, old_env, sizeof(char*)*n+1); + child_env[n - 1] = StrConcat("XDG_SESSION_COOKIE=", ck.get_xdg_session_cookie()); + child_env[n] = NULL; ++ } # endif /* USE_CONSOLEKIT */ + #else - pam.end(); -@@ -620,6 +632,7 @@ void App::Login() { - child_env[n++]=StrConcat("MAIL=", maildir.c_str()); - child_env[n++]=StrConcat("XAUTHORITY=", xauthority.c_str()); +@@ -611,6 +623,7 @@ void App::Login() { + child_env[n++]=StrConcat("MAIL=", maildir.c_str()); + child_env[n++]=StrConcat("XAUTHORITY=", xauthority.c_str()); # ifdef USE_CONSOLEKIT -+ if (ck.has_session()) - child_env[n++]=StrConcat("XDG_SESSION_COOKIE=", ck.get_xdg_session_cookie()); ++ if (ck.has_session()) + child_env[n++]=StrConcat("XDG_SESSION_COOKIE=", ck.get_xdg_session_cookie()); # endif /* USE_CONSOLEKIT */ - child_env[n++]=0; -@@ -666,6 +679,7 @@ void App::Login() { + child_env[n++]=0; +@@ -657,6 +670,7 @@ void App::Login() { #ifdef USE_CONSOLEKIT - try { -+ if (ck.has_session()) - ck.close_session(); - } - catch(Ck::Exception &e) { + try { ++ if (ck.has_session()) + ck.close_session(); + } + catch(Ck::Exception &e) { diff --git a/x11/slim/patches/patch-image_cpp b/x11/slim/patches/patch-image_cpp deleted file mode 100644 index 9cd00773204..00000000000 --- a/x11/slim/patches/patch-image_cpp +++ /dev/null @@ -1,12 +0,0 @@ -$OpenBSD: patch-image_cpp,v 1.1 2012/09/02 09:22:59 landry Exp $ ---- image.cpp.orig Sat Sep 1 19:52:57 2012 -+++ image.cpp Sat Sep 1 19:53:20 2012 -@@ -781,7 +781,7 @@ Image::readPng(const char *filename, int *width, int * - (png_infopp) NULL); - } - -- if (setjmp(png_ptr->jmpbuf)) { -+ if (setjmp(png_jmpbuf(png_ptr))) { - goto png_destroy; - } - diff --git a/x11/slim/patches/patch-log_h b/x11/slim/patches/patch-log_h new file mode 100644 index 00000000000..1b815ce8f90 --- /dev/null +++ b/x11/slim/patches/patch-log_h @@ -0,0 +1,13 @@ +$OpenBSD: patch-log_h,v 1.1 2013/04/18 12:00:45 gonzalo Exp $ +--- log.h.orig Wed Apr 17 11:16:47 2013 ++++ log.h Wed Apr 17 11:18:06 2013 +@@ -4,9 +4,6 @@ + #ifdef USE_CONSOLEKIT + #include "Ck.h" + #endif +-#ifdef USE_CONSOLEKIT +-#include "PAM.h" +-#endif + #include "const.h" + #include + diff --git a/x11/slim/patches/patch-switchuser_cpp b/x11/slim/patches/patch-switchuser_cpp index 2ba5a40cbcd..a099618b33c 100644 --- a/x11/slim/patches/patch-switchuser_cpp +++ b/x11/slim/patches/patch-switchuser_cpp @@ -1,7 +1,7 @@ -$OpenBSD: patch-switchuser_cpp,v 1.4 2012/09/02 09:23:00 landry Exp $ +$OpenBSD: patch-switchuser_cpp,v 1.5 2013/04/18 12:00:45 gonzalo Exp $ add missing setusercontext/setsid/setlogin calls. ---- switchuser.cpp.orig Tue Jun 26 10:20:14 2012 -+++ switchuser.cpp Sat Sep 1 20:51:44 2012 +--- switchuser.cpp.orig Mon Dec 31 10:03:42 2012 ++++ switchuser.cpp Wed Apr 17 13:10:36 2013 @@ -10,6 +10,10 @@ */ @@ -16,10 +16,10 @@ add missing setusercontext/setsid/setlogin calls. @@ -36,6 +40,9 @@ void SwitchUser::Login(const char* cmd, const char* mc void SwitchUser::SetUserId() { - if( (Pw == 0) || -+ (setusercontext(NULL, Pw, Pw->pw_uid, LOGIN_SETPRIORITY|LOGIN_SETRESOURCES) == -1) || -+ (setsid() == -1) || -+ (setlogin(Pw->pw_name) != 0) || - (initgroups(Pw->pw_name, Pw->pw_gid) != 0) || - (setgid(Pw->pw_gid) != 0) || - (setuid(Pw->pw_uid) != 0) ) { + if( (Pw == 0) || ++ (setusercontext(NULL, Pw, Pw->pw_uid, LOGIN_SETPRIORITY|LOGIN_SETRESOURCES) == -1) || ++ (setsid() == -1) || ++ (setlogin(Pw->pw_name) != 0) || + (initgroups(Pw->pw_name, Pw->pw_gid) != 0) || + (setgid(Pw->pw_gid) != 0) || + (setuid(Pw->pw_uid) != 0) ) {