Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Jul 2008 04:43:06 +0200
From:      Marcin Wisnicki <mwisnicki+freebsd@gmail.com>
To:        FreeBSD-gnats-submit@freebsd.org
Cc:        gnome@FreeBSD.org
Subject:   [PATCH] x11/gnome-screensaver: Prevent foot-shooting and unbreak with portupgrade
Message-ID:  <489126bd.0c07560a.0eaf.ffff8229@mx.google.com>

next in thread | raw e-mail | index | archive | help

>Submitter-Id:	current-users
>Originator:	Marcin Wisnicki
>Organization:	
>Confidential:	no 
>Synopsis:	[PATCH] x11/gnome-screensaver: Prevent foot-shooting and unbreak with portupgrade
>Severity:	non-critical
>Priority:	low
>Category:	ports 
>Class:		change-request
>Release:	FreeBSD 7.0-STABLE i386
>Environment:
System: FreeBSD ghost.pnet.one.pl 7.0-STABLE FreeBSD 7.0-STABLE #15: Fri Jul 25 18:16:53 CEST 2008
>Description:
- automatically disable keyring if pam is disabled
- remove .warning that confuses portupgrade
- provide more helpful descriptions of options
- break the build if PAM is enabled, define GNOME_SCREENSAVER_WITH_BROKEN_PAM
  if you really want PAM.

Port maintainer (gnome@FreeBSD.org) is cc'd.

Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
>Fix:

--- gnome-screensaver-2.22.2_4.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/x11/gnome-screensaver.orig/Makefile /usr/ports/x11/gnome-screensaver/Makefile
--- /usr/ports/x11/gnome-screensaver.orig/Makefile	2008-07-27 22:23:26.000000000 +0200
+++ /usr/ports/x11/gnome-screensaver/Makefile	2008-07-31 04:37:57.000000000 +0200
@@ -42,26 +42,35 @@
 
 XSCREENSAVER_EXCLUDE=	"(popsquares.xml)"
 
-OPTIONS=	PAM "Pluggable Authentication Module support" off \
-		KEYRING "Enable GnomeKeyring/PAM integration" off
+OPTIONS=	PAM "Pluggable Authentication Module support (broken!)" off \
+		KEYRING "Enable GnomeKeyring integration (needs PAM)" off
 
 .include <bsd.port.pre.mk>
 
 .if defined(WITH_PAM)
+# Currently semi-broken: http://bugzilla.gnome.org/show_bug.cgi?id=370847
+# Our default pam_unix will not be able to authenticate
+# Define GNOME_SCREENSAVER_WITH_BROKEN_PAM only if you know what you are doing
+.if !defined(GNOME_SCREENSAVER_WITH_BROKEN_PAM)
+IGNORE=		PAM support is partially broken. Please read Makefile
+.endif
 CONFIGURE_ARGS+=	--enable-pam
 PLIST_SUB+=		PAM=""
-.if defined(WITH_KEYRING)
+.else
+CONFIGURE_ARGS+=	--disable-pam
+PLIST_SUB+=		PAM="@comment "
+.endif
+
+.if defined(WITH_KEYRING) && defined(WITH_PAM)
 SUB_LIST+=		PAM_KEYRING=
 RUN_DEPENDS+=		${LOCALBASE}/lib/pam_gnome_keyring.so:${PORTSDIR}/security/gnome-keyring
 .else
 SUB_LIST+=		PAM_KEYRING=\#
 .endif
-.else
-CONFIGURE_ARGS+=	--disable-pam
-PLIST_SUB+=		PAM="@comment "
-.if defined(WITH_KEYRING)
-.warning Option KEYRING needs PAM, but PAM is disabled.
-.endif
+
+pre-fetch:
+.if defined(WITHOUT_PAM) && defined(WITH_KEYRING)
+	@${ECHO_MSG} "Keyring integration is disabled because it needs PAM."
 .endif
 
 post-patch:
--- gnome-screensaver-2.22.2_4.patch ends here ---




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?489126bd.0c07560a.0eaf.ffff8229>