From owner-freebsd-ports-bugs@FreeBSD.ORG Sat Jul 26 15:20:01 2008 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3D4CE1065671 for ; Sat, 26 Jul 2008 15:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 15DDE8FC24 for ; Sat, 26 Jul 2008 15:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m6QFK0Fc081553 for ; Sat, 26 Jul 2008 15:20:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m6QFK0fX081552; Sat, 26 Jul 2008 15:20:00 GMT (envelope-from gnats) Resent-Date: Sat, 26 Jul 2008 15:20:00 GMT Resent-Message-Id: <200807261520.m6QFK0fX081552@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Marcin Wisnicki Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0695D1065673 for ; Sat, 26 Jul 2008 15:10:01 +0000 (UTC) (envelope-from mwisnicki@gmail.com) Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.153]) by mx1.freebsd.org (Postfix) with ESMTP id 75BD68FC17 for ; Sat, 26 Jul 2008 15:10:00 +0000 (UTC) (envelope-from mwisnicki@gmail.com) Received: by fg-out-1718.google.com with SMTP id l26so3067711fgb.35 for ; Sat, 26 Jul 2008 08:09:59 -0700 (PDT) Received: by 10.86.84.5 with SMTP id h5mr938719fgb.58.1217084999366; Sat, 26 Jul 2008 08:09:59 -0700 (PDT) Received: from ghost.pnet.one.pl ( [84.40.242.20]) by mx.google.com with ESMTPS id 4sm16064220fgg.9.2008.07.26.08.09.57 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 26 Jul 2008 08:09:58 -0700 (PDT) Received: by ghost.pnet.one.pl (sSMTP sendmail emulation); Sat, 26 Jul 2008 17:09:55 +0200 Message-Id: <488b3e46.0407560a.3d5f.fffff426@mx.google.com> Date: Sat, 26 Jul 2008 17:09:55 +0200 From: Marcin Wisnicki Sender: =?UTF-8?B?TWFyY2luIFdpxZtuaWNraQ==?= To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: gnome@FreeBSD.org Subject: ports/125983: [PATCH] x11/gdm: GnomeKeyring integration X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Jul 2008 15:20:01 -0000 >Number: 125983 >Category: ports >Synopsis: [PATCH] x11/gdm: GnomeKeyring integration >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sat Jul 26 15:20:00 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Marcin Wisnicki >Release: FreeBSD 7.0-STABLE i386 >Organization: >Environment: System: FreeBSD ghost.pnet.one.pl 7.0-STABLE FreeBSD 7.0-STABLE #15: Fri Jul 25 18:16:53 CEST 2008 >Description: - Optional (enabled by default) GnomeKeyring integration via PAM. - Remove some ancient pam checks There is already pam configuration for gdm service in base system. Because PAM first looks in /etc/pam.d, I need to remove /etc/pam.d/gdm, in order to provide my own customized configuration with port. To make it somewhat persistent (ie. survive base system update), I've decided to remove it from gdm startup script. This patch assumes that ports/125967 is commited. I will also submit similar patch for x11/xscreensaver-gnome. Added file(s): - files/gdm.pam.in Port maintainer (gnome@FreeBSD.org) is cc'd. Generated with FreeBSD Port Tools 0.77 >How-To-Repeat: >Fix: --- gdm-2.20.7_1.patch begins here --- diff -ruN --exclude=CVS /usr/ports/x11/gdm.orig/Makefile /usr/ports/x11/gdm/Makefile --- /usr/ports/x11/gdm.orig/Makefile 2008-07-06 04:35:12.000000000 +0200 +++ /usr/ports/x11/gdm/Makefile 2008-07-26 00:40:19.000000000 +0200 @@ -8,6 +8,7 @@ PORTNAME= gdm PORTVERSION= 2.20.7 +PORTREVISION= 1 CATEGORIES= x11 gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome2 @@ -38,6 +39,8 @@ GTKDOC="false" CONFIGURE_ARGS=--with-console-kit=yes +SUB_FILES+= gdm.pam + GDMDIR?= ${PREFIX}/etc/gdm PKGMESSAGE= ${WRKDIR}/pkg-message @@ -46,14 +49,16 @@ MAN1= gdm.1 OPTIONS= IPV6 "Enable IPv6 support" on \ + KEYRING "Enable GnomeKeyring/PAM integration" on \ LOG_LIMIT "Limit ~/.xsession-errors size" on .include -.if exists(/usr/include/security/pam_misc.h) -PLIST_SUB+= PAM_MISC="" +.if defined(WITHOUT_KEYRING) +SUB_LIST+= PAM_KEYRING=\# .else -PLIST_SUB+= PAM_MISC="@comment " +RUN_DEPENDS+= ${LOCALBASE}/lib/pam_gnome_keyring.so:${PORTSDIR}/security/gnome-keyring +SUB_LIST+= PAM_KEYRING= .endif .if !defined(WITHOUT_IPV6) @@ -87,6 +92,7 @@ .endif ${INSTALL_DATA} ${WRKSRC}/config/gdm.conf-custom \ ${PREFIX}/etc/gdm/custom.conf.default + ${INSTALL_DATA} ${WRKDIR}/gdm.pam ${PREFIX}/etc/pam.d/gdm @${MKDIR} ${PREFIX}/etc/gdm/Sessions @${SED} -e 's|%%PREFIX%%|${PREFIX}|g' < ${PKGDIR}/pkg-message \ | /usr/bin/fmt 75 79 > ${PKGMESSAGE} diff -ruN --exclude=CVS /usr/ports/x11/gdm.orig/files/gdm.in /usr/ports/x11/gdm/files/gdm.in --- /usr/ports/x11/gdm.orig/files/gdm.in 2008-04-03 00:03:15.000000000 +0200 +++ /usr/ports/x11/gdm/files/gdm.in 2008-07-26 01:03:01.000000000 +0200 @@ -14,6 +14,7 @@ . %%GNOME_SUBR%% gdm_enable=${gdm_enable-${gnome_enable}} +gdm_preserve_base_pam_conf=${gdm_preserve_base_pam_conf-NO} export PATH=/bin:/sbin:/usr/bin:/usr/sbin:%%LOCALBASE%%/bin:%%LOCALBASE%%/sbin @@ -31,6 +32,11 @@ fi echo "Starting ${name}." + # make sure there is no pam configuration for gdm service in base system + if ! checkyesno gdm_preserve_base_pam_conf && [ -f /etc/pam.d/gdm ]; then + rm -f /etc/pam.d/gdm + fi + ( iter=0 while ! ps -axoargs | grep "^/usr/libexec/getty " | grep -qv grep >/dev/null 2>&1; do if [ ${iter} -eq 60 ]; then diff -ruN --exclude=CVS /usr/ports/x11/gdm.orig/files/gdm.pam.in /usr/ports/x11/gdm/files/gdm.pam.in --- /usr/ports/x11/gdm.orig/files/gdm.pam.in 1970-01-01 01:00:00.000000000 +0100 +++ /usr/ports/x11/gdm/files/gdm.pam.in 2008-07-26 01:11:55.000000000 +0200 @@ -0,0 +1,21 @@ +# +# $FreeBSD: src/etc/pam.d/gdm,v 1.8 2007/06/10 18:57:20 yar Exp $ +# +# PAM configuration for the "gdm" service +# + +# auth +#auth sufficient pam_krb5.so no_warn try_first_pass +#auth sufficient pam_ssh.so no_warn try_first_pass +auth required pam_unix.so no_warn try_first_pass +%%PAM_KEYRING%%auth optional %%LOCALBASE%%/lib/pam_gnome_keyring.so + +# account +account required pam_nologin.so +#account required pam_krb5.so +account required pam_unix.so + +# session +#session optional pam_ssh.so +session required pam_permit.so +%%PAM_KEYRING%%session optional %%LOCALBASE%%/lib/pam_gnome_keyring.so auto_start diff -ruN --exclude=CVS /usr/ports/x11/gdm.orig/pkg-plist /usr/ports/x11/gdm/pkg-plist --- /usr/ports/x11/gdm.orig/pkg-plist 2008-07-06 04:35:12.000000000 +0200 +++ /usr/ports/x11/gdm/pkg-plist 2008-07-26 00:38:37.000000000 +0200 @@ -21,13 +21,13 @@ @unexec if cmp -s %D/etc/gdm/modules/AccessKeyMouseEvents %D/etc/gdm/modules/factory-AccessKeyMouseEvents; then rm -f %D/etc/gdm/modules/AccessKeyMouseEvents; fi etc/gdm/modules/factory-AccessKeyMouseEvents @exec [ -f %B/AccessKeyMouseEvents ] || cp %B/%f %B/AccessKeyMouseEvents +etc/pam.d/gdm lib/gtk-2.0/modules/libdwellmouselistener.a lib/gtk-2.0/modules/libdwellmouselistener.la lib/gtk-2.0/modules/libdwellmouselistener.so lib/gtk-2.0/modules/libkeymouselistener.a lib/gtk-2.0/modules/libkeymouselistener.la lib/gtk-2.0/modules/libkeymouselistener.so -%%PAM_MISC%%libexec/gdmaskpass libexec/gdmchooser libexec/gdmgreeter libexec/gdmlogin --- gdm-2.20.7_1.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted: