diff options
author | Wulf Krueger <philantrop@gentoo.org> | 2007-11-04 00:17:43 +0000 |
---|---|---|
committer | Wulf Krueger <philantrop@gentoo.org> | 2007-11-04 00:17:43 +0000 |
commit | a06b838744ab5cd96de23fc98f2b9da49d2a8082 (patch) | |
tree | a493fbc96204f34c341883f6f9f6e54e982fcbb5 /kde-base/kdebase | |
parent | Version bump. Removing k3bsetup, see bug #188489. (diff) | |
download | gentoo-2-a06b838744ab5cd96de23fc98f2b9da49d2a8082.tar.gz gentoo-2-a06b838744ab5cd96de23fc98f2b9da49d2a8082.tar.bz2 gentoo-2-a06b838744ab5cd96de23fc98f2b9da49d2a8082.zip |
Added an upstream patch to fix GDM interoperability. Fixes bug 197133. Thanks to pauldv for providing a patch, too.
(Portage version: 2.1.3.16)
Diffstat (limited to 'kde-base/kdebase')
-rw-r--r-- | kde-base/kdebase/ChangeLog | 9 | ||||
-rw-r--r-- | kde-base/kdebase/files/digest-kdebase-3.5.8-r1 | 6 | ||||
-rw-r--r-- | kde-base/kdebase/files/ksmserver-3.5.8-gdm_interop_197133.patch | 41 | ||||
-rw-r--r-- | kde-base/kdebase/kdebase-3.5.8-r1.ebuild | 225 |
4 files changed, 280 insertions, 1 deletions
diff --git a/kde-base/kdebase/ChangeLog b/kde-base/kdebase/ChangeLog index c726d68a30d4..09d8ac6ddb59 100644 --- a/kde-base/kdebase/ChangeLog +++ b/kde-base/kdebase/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for kde-base/kdebase # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/ChangeLog,v 1.397 2007/10/20 16:54:31 philantrop Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/ChangeLog,v 1.398 2007/11/04 00:17:42 philantrop Exp $ + +*kdebase-3.5.8-r1 (04 Nov 2007) + + 04 Nov 2007; Wulf C. Krueger <philantrop@gentoo.org> + +files/ksmserver-3.5.8-gdm_interop_197133.patch, +kdebase-3.5.8-r1.ebuild: + Added an upstream patch to fix GDM interoperability. Fixes bug 197133. + Thanks to pauldv for providing a patch, too. 20 Oct 2007; Wulf C. Krueger <philantrop@gentoo.org> kdebase-3.5.8.ebuild: Fixed wrong quoting. diff --git a/kde-base/kdebase/files/digest-kdebase-3.5.8-r1 b/kde-base/kdebase/files/digest-kdebase-3.5.8-r1 new file mode 100644 index 000000000000..f0fb6455d46c --- /dev/null +++ b/kde-base/kdebase/files/digest-kdebase-3.5.8-r1 @@ -0,0 +1,6 @@ +MD5 9a0c6a4983427e41226dee8d0ce23369 kdebase-3.5-patchset-07.tar.bz2 22868 +RMD160 37e81cd0bc3943cbbdc100634d79a8eeed73503b kdebase-3.5-patchset-07.tar.bz2 22868 +SHA256 fca283e0719231b0716f333034e29727b4d1e1f30cead4e1ae1bca330f00c81b kdebase-3.5-patchset-07.tar.bz2 22868 +MD5 9990c669229daaaa8fca4c5e354441fd kdebase-3.5.8.tar.bz2 24200172 +RMD160 6441b5eaead5fff5c42c532fb11c0d37001cb6ea kdebase-3.5.8.tar.bz2 24200172 +SHA256 0f1876d1c68f01ed8fee346c1bae4f53dd2c1dc56db94e309b3d1adfc6138493 kdebase-3.5.8.tar.bz2 24200172 diff --git a/kde-base/kdebase/files/ksmserver-3.5.8-gdm_interop_197133.patch b/kde-base/kdebase/files/ksmserver-3.5.8-gdm_interop_197133.patch new file mode 100644 index 000000000000..5fdc9af1a2e0 --- /dev/null +++ b/kde-base/kdebase/files/ksmserver-3.5.8-gdm_interop_197133.patch @@ -0,0 +1,41 @@ +--- branches/KDE/3.5/kdebase/kdmlib/dmctl.cpp 2006/10/31 11:38:26 600659 ++++ branches/KDE/3.5/kdebase/kdmlib/dmctl.cpp 2007/11/01 22:10:25 731815 +@@ -65,21 +65,28 @@ + if ((fd = ::socket( PF_UNIX, SOCK_STREAM, 0 )) < 0) + return; + sa.sun_family = AF_UNIX; +- if (DMType == GDM) +- strcpy( sa.sun_path, "/tmp/.gdm_socket" ); +- else { ++ if (DMType == GDM) { ++ strcpy( sa.sun_path, "/var/run/gdm_socket" ); ++ if (::connect( fd, (struct sockaddr *)&sa, sizeof(sa) )) { ++ strcpy( sa.sun_path, "/tmp/.gdm_socket" ); ++ if (::connect( fd, (struct sockaddr *)&sa, sizeof(sa) )) { ++ ::close( fd ); ++ fd = -1; ++ break; ++ } ++ } ++ GDMAuthenticate(); ++ } else { + if ((ptr = strchr( dpy, ':' ))) + ptr = strchr( ptr, '.' ); + snprintf( sa.sun_path, sizeof(sa.sun_path), + "%s/dmctl-%.*s/socket", +- ctl, ptr ? ptr - dpy : 512, dpy ); +- } +- if (::connect( fd, (struct sockaddr *)&sa, sizeof(sa) )) { +- ::close( fd ); +- fd = -1; ++ ctl, ptr ? int(ptr - dpy) : 512, dpy ); ++ if (::connect( fd, (struct sockaddr *)&sa, sizeof(sa) )) { ++ ::close( fd ); ++ fd = -1; ++ } + } +- if (DMType == GDM) +- GDMAuthenticate(); + break; + case OldKDM: + { diff --git a/kde-base/kdebase/kdebase-3.5.8-r1.ebuild b/kde-base/kdebase/kdebase-3.5.8-r1.ebuild new file mode 100644 index 000000000000..2c9cd7926dc9 --- /dev/null +++ b/kde-base/kdebase/kdebase-3.5.8-r1.ebuild @@ -0,0 +1,225 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdebase/kdebase-3.5.8-r1.ebuild,v 1.1 2007/11/04 00:17:42 philantrop Exp $ + +inherit kde-dist eutils flag-o-matic + +SRC_URI="${SRC_URI} + mirror://gentoo/kdebase-3.5-patchset-07.tar.bz2" + +DESCRIPTION="KDE base packages: the desktop, panel, window manager, konqueror..." + +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="branding cups java ldap ieee1394 hal lm_sensors logitech-mouse openexr opengl +pam samba xcomposite xscreensaver xinerama kdehiddenvisibility" + +# hal: enables hal backend for 'media:' ioslave + +DEPEND=">=media-libs/freetype-2 + media-libs/fontconfig + dev-libs/openssl + pam? ( kde-base/kdebase-pam ) + >=dev-libs/cyrus-sasl-2 + ldap? ( >=net-nds/openldap-2 ) + cups? ( net-print/cups ) + opengl? ( virtual/opengl ) + openexr? ( >=media-libs/openexr-1.2.2-r2 ) + samba? ( >=net-fs/samba-3.0.4 ) + lm_sensors? ( sys-apps/lm_sensors ) + logitech-mouse? ( >=dev-libs/libusb-0.1.10a ) + ieee1394? ( sys-libs/libraw1394 ) + hal? ( dev-libs/dbus-qt3-old =sys-apps/hal-0.5* ) + xcomposite? ( x11-libs/libXcomposite x11-libs/libXdamage ) + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXfixes + x11-libs/libXrender + x11-libs/libXtst + x11-libs/libXext + xscreensaver? ( x11-libs/libXScrnSaver ) + xinerama? ( x11-libs/libXinerama )" + +RDEPEND="${DEPEND} + sys-apps/usbutils + sys-devel/gdb + java? ( >=virtual/jre-1.4 ) + kernel_linux? ( || ( >=sys-apps/eject-2.1.5 sys-block/unieject ) ) + virtual/ssh + www-misc/htdig + x11-apps/mkfontdir + x11-apps/setxkbmap + x11-apps/xinit + || ( x11-misc/xkeyboard-config x11-misc/xkbdata ) + x11-apps/xmessage + x11-apps/xprop + x11-apps/xrandr + x11-apps/xsetroot + x11-apps/xset" + +DEPEND="${DEPEND} + xcomposite? ( x11-proto/compositeproto x11-proto/damageproto ) + xscreensaver? ( x11-proto/scrnsaverproto ) + xinerama? ( x11-proto/xineramaproto ) + x11-apps/bdftopcf + x11-apps/xhost" + +need-kde 3.5.8 + +EPATCH_EXCLUDE="ksmserver-3.5.8-ksmserver_suspend.diff + ksmserver-3.5.8-suspend_configure.diff" + +PATCHES="${FILESDIR}/ksmserver-3.5.8-gdm_interop_197133.patch" + +pkg_setup() { + kde_pkg_setup + if use hal && has_version '<sys-apps/dbus-0.90' && ! built_with_use sys-apps/dbus qt3; then + eerror "To enable HAL support in this package is required to have" + eerror "sys-apps/dbus compiled with Qt 3 support." + eerror "Please reemerge sys-apps/dbus with USE=\"qt3\"." + die "Please reemerge sys-apps/dbus with USE=\"qt3\"." + fi +} + +src_unpack() { + kde_src_unpack + + # Avoid using imake (kde bug 114466). + #epatch "${WORKDIR}/patches/kdebase-3.5.0_beta2-noimake.patch" + # ...included in patch set + rm -f "${S}/configure" + + # FIXME - disable broken tests + sed -i -e "s:TESTS =.*:TESTS =:" "${S}/kioslave/smtp/Makefile.am" || die "sed failed" + sed -i -e "s:TESTS =.*:TESTS =:" "${S}/kioslave/trash/Makefile.am" || die "sed failed" + sed -i -e "s:SUBDIRS = viewer test:SUBDIRS = viewer:" "${S}/nsplugins/Makefile.am" || die "sed failed" + + if ! [[ $(xhost >> /dev/null 2>/dev/null) ]] ; then + einfo "User ${USER} has no X access, disabling some tests." + for ioslave in media remote home system ; do + sed -e "s:check\: test${ioslave}::" -e "s:./test${ioslave}::" \ + -i kioslave/${ioslave}/Makefile.am || die "sed failed" + done + fi +} + +src_compile() { + local myconf="--with-dpms --enable-dnssd --with-sssl + --with-usbids=/usr/share/misc/usb.ids + $(use_with ieee1394 libraw1394) + $(use_with hal) + $(use_with ldap) + $(use_with lm_sensors sensors) + $(use_with logitech-mouse libusb) + $(use_with openexr) + $(use_with opengl gl) + $(use_with pam) + $(use_with samba) + $(use_with xcomposite composite) + $(use_with xinerama) + $(use_with xscreensaver)" + + if ! use pam && use elibc_glibc; then + myconf="${myconf} --with-shadow" + fi + + # the java test is problematic (see kde bug 100729) and + # useless. All that's needed for java applets to work is + # to have the 'java' executable in PATH. + myconf="${myconf} --without-java" + + export BINDNOW_FLAGS="$(bindnow-flags)" + + kde_src_compile +} + +src_install() { + kde_src_install + cd "${S}/kdm" && make DESTDIR="${D}" GENKDMCONF_FLAGS="--no-old --no-backup --no-in-notice" install + + # startup and shutdown scripts + insinto "${KDEDIR}/env" + doins "${WORKDIR}/patches/agent-startup.sh" + + exeinto ${KDEDIR}/shutdown + doexe "${WORKDIR}/patches/agent-shutdown.sh" + + # freedesktop environment variables + cat <<EOF > "${T}/xdg.sh" +export XDG_CONFIG_DIRS="${KDEDIR}/etc/xdg" +EOF + insinto "${KDEDIR}/env" + doins "${T}/xdg.sh" + + # x11 session script + cat <<EOF > "${T}/kde-${SLOT}" +#!/bin/sh +exec ${KDEDIR}/bin/startkde +EOF + exeinto /etc/X11/Sessions + doexe "${T}/kde-${SLOT}" + + # freedesktop compliant session script + sed -e "s:@KDE_BINDIR@:${KDEDIR}/bin:g;s:Name=KDE:Name=KDE ${SLOT}:" \ + "${S}/kdm/kfrontend/sessions/kde.desktop.in" > "${T}/kde-${SLOT}.desktop" + insinto /usr/share/xsessions + doins "${T}/kde-${SLOT}.desktop" + + # Customize the kdmrc configuration + sed -i -e "s:#SessionsDirs=:SessionsDirs=/usr/share/xsessions\n#SessionsDirs=:" \ + "${D}/${KDEDIR}/share/config/kdm/kdmrc" || die + + rmdir "${D}/${KDEDIR}/share/templates/.source/emptydir" + + if use branding ; then + dodir "${PREFIX}"/share/services/searchproviders + insinto "${PREFIX}"/share/services/searchproviders + doins "${WORKDIR}"/patches/*.desktop + fi +} + +pkg_preinst() { + kde_pkg_preinst + + # We need to symlink here, as kfmclient freaks out completely, + # if it does not find konqueror.desktop in the legacy path. + dodir "${PREFIX}/share/applications/kde" + dosym ../../applnk/konqueror.desktop "${PREFIX}/share/applications/kde/konqueror.desktop" +} + +pkg_postinst() { + kde_pkg_postinst + + # set the default kdm face icon if it's not already set by the system admin + if [ ! -e "${ROOT}${KDEDIR}/share/apps/kdm/faces/.default.face.icon" ]; then + mkdir -p "${ROOT}${KDEDIR}/share/apps/kdm/faces" + cp "${ROOT}${KDEDIR}/share/apps/kdm/pics/users/default1.png" \ + "${ROOT}${KDEDIR}/share/apps/kdm/faces/.default.face.icon" + fi + if [ ! -e "${ROOT}${KDEDIR}/share/apps/kdm/faces/root.face.icon" ]; then + mkdir -p "${ROOT}${KDEDIR}/share/apps/kdm/faces" + cp "${ROOT}${KDEDIR}/share/apps/kdm/pics/users/root1.png" \ + "${ROOT}${KDEDIR}/share/apps/kdm/faces/root.face.icon" + fi + + mkdir -p "${ROOT}${KDEDIR}/share/templates/.source/emptydir" + + echo + elog "To enable gpg-agent and/or ssh-agent in KDE sessions," + elog "edit ${KDEDIR}/env/agent-startup.sh and" + elog "${KDEDIR}/shutdown/agent-shutdown.sh" + echo + if use branding ; then + elog "We've added three Gentoo-related web shortcuts to Konqueror:" + elog "- gb Gentoo Bugzilla searching" + elog "- gf Gentoo Forums searching" + elog "- gp Gentoo Package searching" + echo + elog "You'll have to activate them in 'Configure Konqueror...'." + echo + elog "If you can't open new konqueror windows and get something like" + elog "'WARNING: Outdated database found' when starting konqueror in a console, run" + elog "kbuildsycoca as the user you're running KDE under." + elog "This is NOT a bug." + echo + fi +} |