[kde-base/kdm] version bump to 4.7.4

This commit is contained in:
Joost Ruis
2011-12-14 11:45:51 +00:00
parent 4d72b17555
commit a90bbd9cd9
3 changed files with 311 additions and 0 deletions
+3
View File
@@ -12,6 +12,7 @@ AUX kdm-4.3.1-sabayon-theme.patch 464 RMD160 3618529657a5bd38f6431488ffe496e7a3d
AUX kdm-4.3.1-xinitrc.d.patch 793 RMD160 1e22f23d7cbd4764b4a7675968e0a387de2fc09a SHA1 226db506807a31b565da598458faed4a3ce3ddb7 SHA256 7ddeaa5b5446ed9e4f94cfc474032ee7d450df3748b378a4803c5b7b2bdce684
AUX kdm-4.3.5-xdm-restart.patch 1593 RMD160 f6bf916ec09049ba7c7a3c65ec86b59302b8f3be SHA1 f70ae3f876f3840364c698d33d60b15395a457c4 SHA256 0f2f2d9dfba1c0a8a82c6b92cb55ff5afe77fc8b5cbe280fb7fbba19f8327866
AUX kdm-4.4.5-sabayon-theme.patch 461 RMD160 1aa90e3218aa78da5a8afc9abff06c0a38df4a19 SHA1 96aaf1695ce72dcb4c8f89b6e714e1732ddb4a33 SHA256 475557e35a96847fca4507be56e39c147e60afa87916a63d6ea43c18ed55229f
AUX kdm-4.7.3-revertcrashlogic.patch 4452 RMD160 27f96bf067fc2f45919b9114f74f998c236a2e5b SHA1 108c6acb5dd9fb042a5f4e9c4e3c5d9916fd7f94 SHA256 74f339d17e61c8431726b1c3975423b4cf19ea569990db35e83bf23d1a4b6d1f
AUX kdm-autologinagain.patch 486 RMD160 1b5d08edf66e6700e45c847ea187e381baf65697 SHA1 8609ecc8684bddb32b212c942ecc4136d27e65ae SHA256 03dcdb650430881a8aab057f704de6a424c25d6ef7278586ce81ee7188644dd9
AUX kdm-dbus-session-support.patch 895 RMD160 1ecad9013dfe746f1756e275090209a1d440e024 SHA1 83a6347ad44465f6bb61271cb1fef659c4273041 SHA256 63a219cab4812e1f32abfd34bf7c7362a40042d21662fc4c4fd755846095fb70
AUX kdm-keyboard-repeat-fix.patch 420 RMD160 77e9a5aafbc864746d8c8a3a23bda2b474f8c842 SHA1 bcdcfe85b9b95c0569e3ea6438cbce59ef9f2b61 SHA256 5c59cd8f6850a1947a128734202395af396fc9516392dc02c7ea2019b99dc3b3
@@ -22,6 +23,7 @@ DIST kde-workspace-4.7.0.tar.bz2 20049430 RMD160 20520845b336d9485bb2149191ad9f5
DIST kde-workspace-4.7.1.tar.bz2 20387880 RMD160 1d3c3956f8f292ae84896756ddae8abb9e7d9395 SHA1 c7867d2f788086078abbcff53a035a6131232539 SHA256 85dabf6620b0dc556c395b8a4fe15764a7da87a66ed243e3a9527bc2c1607b96
DIST kde-workspace-4.7.2.tar.bz2 20556305 RMD160 a3576eb82bfdba215f0fe44d3c5d616e9a79e024 SHA1 afd37b2f583690e391828c1ceb7311e2e8d37c6f SHA256 6a174d6780ad04700ec9eddfe2ed3d916aea018ad7fb93b04debc81f2d3f9eb0
DIST kde-workspace-4.7.3.tar.bz2 20556738 RMD160 c7298c81c978a722f54e033afe169111d2dfd438 SHA1 f3ed24e3e70671033718a5139cb61d0d7e2e709e SHA256 7403fc5ff78de55b1f9b6a1116001be3ad7906720521959d1f5de8c86677ac5e
DIST kde-workspace-4.7.4.tar.bz2 20557567 RMD160 94f1a36b3881276663a559a57dbd210d50ede06b SHA1 b7810ba13f6f2a1c4783b153ad9349a1dd27b495 SHA256 175cdc6a72e89b3b0f859fd06712947f485aecf507896f637e49f3dbac4d43b6
DIST kdebase-workspace-4.6.1.tar.bz2 69489744 RMD160 9170d1e5a47a9684fcf517ff0be33ef457986cdc SHA1 e37691d88ddbf92cc95ec39849a1331404c84fd5 SHA256 b2c113aec1e5c79b31f2dcac718ba94d142fe39e8e9640d13d19c2dcbf5fae98
DIST kdebase-workspace-4.6.2.tar.bz2 69356153 RMD160 23856ab63e17e3971071f2ccd02bd78d546c71e0 SHA1 63efb68733f347d0b7d24a7a061c5a0e3f84dee7 SHA256 6a55a53282a0ec7dd61f16f87fb8d0097d945891504982eb5122c96238b711e1
DIST kdebase-workspace-4.6.3.tar.bz2 69349331 RMD160 ae7928eb7f524564890181a8862e657cf13727f6 SHA1 50103b7752defbab08965b665fa95361bb5b3ff6 SHA256 ab11dbfc48b94a4cb867436d91aa80a3677bdb6e49a6df8cc1c70a4f8dd5868d
@@ -36,4 +38,5 @@ EBUILD kdm-4.7.0.ebuild 4312 RMD160 48e6814d174ae888ffbe63f27de90a950b7b0feb SHA
EBUILD kdm-4.7.1.ebuild 4312 RMD160 48e6814d174ae888ffbe63f27de90a950b7b0feb SHA1 62eab718fb429bcd9faed9fe9c86c8a952e8b8cb SHA256 e245768dd47dcc930334b4a246705084658af591895a0dfaf0de1f9ac48d1903
EBUILD kdm-4.7.2.ebuild 4274 RMD160 4c0883bb2910a1ee1d2a93259245143b7b4d018e SHA1 e72ade6b8d6e8e2f560f31981f0f753d39d1eca9 SHA256 4740a00132a193a09140260719a5bc530b7c88612484ddef495704a1c7102a23
EBUILD kdm-4.7.3.ebuild 4417 RMD160 e10726e7ad49eb1360611a7b5d6dfa3455e2445b SHA1 40031ff81537db77092af4b67e2ad95f36a340ff SHA256 10bb6044756211f3f0340a61d723a49e2f940315c8e229a3042ff8692954c7c9
EBUILD kdm-4.7.4.ebuild 4467 RMD160 f3393747a6338d6131457a3136a3e8d3a4d2e060 SHA1 6394f84b3a99d90bde8612fa339280ea3e3b1214 SHA256 95ae2ecb590b0915587d703ecba1a5c0a10f40ac7607d14969f99967adab7709
MISC ChangeLog 243 RMD160 5d249b0640df015645f5e28e266af375bbfdfdae SHA1 1163d9b7c0b3f9b343908d721c6da7ddf811d41e SHA256 d6cd978a3fe370a125299bbeb83d1edbdc8dcedf25e6eb6a2995cafed160a1d2
@@ -0,0 +1,145 @@
diff --git a/kdm/backend/greet.h b/kdm/backend/greet.h
index 2ef7026..41f0791 100644
--- a/kdm/backend/greet.h
+++ b/kdm/backend/greet.h
@@ -146,8 +146,6 @@ from the copyright holder.
#define G_DChoose 3 /* run chooser */
#endif
-#define G_Interact 4 /* greeter got user input. possible crash is probably not spontaneous. */
-
#define G_Shutdown 101 /* 5*int, string; async */
# define SHUT_REBOOT 1 /* how */
# define SHUT_HALT 2
diff --git a/kdm/backend/session.c b/kdm/backend/session.c
index 85ab1d7..1b47e9c 100644
--- a/kdm/backend/session.c
+++ b/kdm/backend/session.c
@@ -409,12 +409,16 @@ void
openGreeter()
{
char *name, **env;
+ static time_t lastStart;
int cmd;
Cursor xcursor;
gSet(&grttalk);
if (grtproc.pid > 0)
return;
+ updateNow();
+ if (now < lastStart + 10) /* XXX should use some readiness indicator instead */
+ sessionExit(EX_UNMANAGE_DPY);
ASPrintf(&name, "greeter for display %s", td->name);
debug("starting %s\n", name);
@@ -443,6 +447,8 @@ openGreeter()
sessionExit(EX_UNMANAGE_DPY);
}
debug("%s ready\n", name);
+ updateNow();
+ lastStart = now;
}
int
@@ -544,7 +550,7 @@ manageSession(void)
{
int ex, cmd;
volatile int clientPid = -1;
- time_t tdiff, startt;
+ time_t tdiff;
debug("manageSession %s\n", td->name);
if ((ex = Setjmp(abortSession))) {
@@ -576,13 +582,10 @@ manageSession(void)
updateNow();
tdiff = now - td->hstent->lastExit - td->openDelay;
if (autoLogon(tdiff)) {
- if (!verify(conv_auto, False)) {
- startt = now;
+ if (!verify(conv_auto, False))
goto gcont;
- }
} else {
regreet:
- startt = now;
openGreeter();
#ifdef XDMCP
if (((td->displayType & d_location) == dLocal) &&
@@ -596,10 +599,6 @@ manageSession(void)
G_GreetTimed : G_Greet);
gcont:
cmd = ctrlGreeterWait(True);
- if (cmd == G_Interact) {
- startt = 0;
- goto gcont;
- }
#ifdef XDMCP
while (cmd == G_DChoose) {
choose:
@@ -616,9 +615,6 @@ manageSession(void)
logError("Received unknown command %d from greeter\n", cmd);
closeGreeter(True);
}
- updateNow();
- if (now < startt + 120) /* Greeter crashed spontaneously. Avoid endless loop. */
- sessionExit(EX_UNMANAGE_DPY);
goto regreet;
}
}
diff --git a/kdm/kfrontend/kgapp.cpp b/kdm/kfrontend/kgapp.cpp
index f169248..1bb744c 100644
--- a/kdm/kfrontend/kgapp.cpp
+++ b/kdm/kfrontend/kgapp.cpp
@@ -74,7 +74,7 @@ sigAlarm(int)
GreeterApp::GreeterApp(int &argc, char **argv) :
inherited(argc, argv),
- regrabPtr(false), regrabKbd(false), initalBusy(true), sendInteract(false),
+ regrabPtr(false), regrabKbd(false), initalBusy(true),
dragWidget(0)
{
pingInterval = _isLocal ? 0 : _pingInterval;
@@ -203,14 +203,6 @@ GreeterApp::x11EventFilter(XEvent * ev)
break;
}
break;
- default:
- return false;
- }
- if (sendInteract) {
- sendInteract = false;
- // We assume that no asynchronous communication is going on
- // before the first user interaction.
- gSendInt(G_Interact);
}
return false;
}
@@ -487,7 +479,6 @@ main(int argc ATTR_UNUSED, char **argv)
}
}
QObject::connect(dialog, SIGNAL(ready()), &app, SLOT(markReady()));
- app.enableSendInteract();
debug("entering event loop\n");
rslt = dialog->exec();
debug("left event loop\n");
diff --git a/kdm/kfrontend/kgapp.h b/kdm/kfrontend/kgapp.h
index b7c1b97..0979950 100644
--- a/kdm/kfrontend/kgapp.h
+++ b/kdm/kfrontend/kgapp.h
@@ -37,7 +37,6 @@ class GreeterApp : public QApplication {
public:
GreeterApp(int &argc, char **argv);
void markBusy();
- void enableSendInteract() { sendInteract = true; }
virtual bool x11EventFilter(XEvent *);
public Q_SLOTS:
@@ -51,7 +50,7 @@ class GreeterApp : public QApplication {
private:
int pingInterval, pingTimerId;
- bool regrabPtr, regrabKbd, initalBusy, sendInteract;
+ bool regrabPtr, regrabKbd, initalBusy;
QPoint mouseStartPos, dialogStartPos;
QWidget *dragWidget;
};
+163
View File
@@ -0,0 +1,163 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/kdm-4.7.4.ebuild,v 1.1 2011/12/11 18:52:39 alexxy Exp $
EAPI=4
KDE_HANDBOOK="optional"
KMNAME="kde-workspace"
inherit kde4-meta flag-o-matic
DESCRIPTION="KDE login manager, similar to xdm and gdm"
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
IUSE="+consolekit debug kerberos pam"
DEPEND="
$(add_kdebase_dep libkworkspace)
x11-libs/libXau
x11-libs/libXdmcp
x11-libs/libXtst
consolekit? (
>=sys-apps/dbus-1.0.2
sys-auth/consolekit
)
kerberos? ( virtual/krb5 )
pam? (
$(add_kdebase_dep kcheckpass)
virtual/pam
)
"
RDEPEND="${DEPEND}
$(add_kdebase_dep kdepasswd)
>=x11-apps/xinit-1.0.5-r2
x11-apps/xmessage
>=x11-themes/sabayon-artwork-kde-5.4_beta1
"
KMEXTRA="
libs/kdm/
"
PATCHES=(
"${FILESDIR}/kdebase-4.0.2-pam-optional.patch"
"${FILESDIR}/${PN}-4-gentoo-xinitrc.d.patch"
"${FILESDIR}/${PN}-4.7.3-revertcrashlogic.patch"
)
pkg_setup() {
kde4-meta_pkg_setup
# Create kdm:kdm user
KDM_HOME=/var/lib/kdm
enewgroup kdm
enewuser kdm -1 -1 "${KDM_HOME}" kdm
}
src_configure() {
# genkdmconf breaks with -O3
# last checked in 4.2.95
replace-flags -O3 -O2
mycmakeargs=(
$(cmake-utils_use kerberos KDE4_KRB5AUTH)
$(cmake-utils_use_with pam)
$(cmake-utils_use_with consolekit CkConnector)
)
kde4-meta_src_configure
}
src_install() {
export GENKDMCONF_FLAGS="--no-old --no-backup"
kde4-meta_src_install
# an equivalent file is already installed by kde-base/startkde, bug 377151
rm "${ED}/usr/share/apps/kdm/sessions/kde-plasma.desktop" || die
# Customize the kdmrc configuration:
# - SessionDirs set to /usr/share/xsessions
# - increase server timeout to 30s
# - TerminateServer=true to workaround X server regen bug, bug 278473
# - DataDir set to /var/lib/kdm
# - FaceDir set to /var/lib/kdm/faces
sed -e "s|^.*SessionsDirs=.*$|#&\nSessionsDirs=${EPREFIX}/usr/share/apps/kdm/sessions,${EPREFIX}/usr/share/xsessions|" \
-e "/#ServerTimeout=/s/^.*$/ServerTimeout=30/" \
-e "/#TerminateServer=/s/^.*$/TerminateServer=true/" \
-e "s|^.*DataDir=.*$|#&\nDataDir=${EPREFIX}${KDM_HOME}|" \
-e "s|^.*FaceDir=.*$|#&\nFaceDir=${EPREFIX}${KDM_HOME}/faces|" \
-e "s|themes/horos$|themes/sabayon|" \
-i "${ED}"/usr/share/config/kdm/kdmrc \
|| die "Failed to set ServerTimeout and SessionsDirs correctly in kdmrc."
# Don't install empty dir
rmdir "${ED}"/usr/share/config/kdm/sessions
# Set up permissions to kdm work directory
keepdir "${KDM_HOME}"
fowners root:kdm "${KDM_HOME}"
fperms 1770 "${KDM_HOME}"
# install logrotate file
insinto /etc/logrotate.d
newins "${FILESDIR}"/kdm-logrotate kdm
}
pkg_postinst() {
kde4-meta_pkg_postinst
local file src dest dir old_dirs=(
/var/lib/kdm-live
/var/lib/kdm-4.6
/var/lib/kdm-4.5
/var/lib/kdm-4.4
/usr/share/apps/kdm
/usr/kde/4.4/share/apps/kdm
/usr/kde/4.3/share/apps/kdm
/usr/kde/4.2/share/apps/kdm
)
mkdir -p "${EROOT}${KDM_HOME}/faces"
# Set the default kdm face icon if it's not already set by the system admin
# because this is user-overrideable in that way, it's not in src_install
for file in faces/.default.face.icon:default1.png faces/root.face.icon:root1.png kdmsts: ; do
src=${file#*:}
dest=${file%:*}
if [[ ! -e ${EROOT}${KDM_HOME}/$dest ]]; then
for dir in "${old_dirs[@]}"; do
if [[ -e ${EROOT}${dir}/${dest} ]]; then
cp "${EROOT}${dir}/${dest}" "${EROOT}${KDM_HOME}/${dest}"
break 2
fi
done
if [[ -n ${src} ]]; then
cp "${EROOT}/usr/share/apps/kdm/pics/users/${src}" \
"${EROOT}${KDM_HOME}/${dest}"
fi
fi
done
for dir in "${old_dirs[@]}"; do
if [[ ${dir} != /usr/* && -d ${EROOT}${dir} ]]; then
echo
elog "The directory ${EROOT%/}${dir} still exists from an older installation of KDE."
elog "You may wish to copy relevant settings into ${EROOT%/}${KDM_HOME}."
echo
elog "After doing so, you may delete the directory."
echo
fi
done
# Make sure permissions are correct -- old installations may have
# gotten this wrong
use prefix || chown root:kdm "${EROOT}${KDM_HOME}"
chmod 1770 "${EROOT}${KDM_HOME}"
if use consolekit; then
echo
elog "You have compiled 'kdm' with consolekit support. If you want to use kdm,"
elog "make sure consolekit daemon is running and started at login time"
elog
elog "rc-update add consolekit default && /etc/init.d/consolekit start"
echo
fi
}